From c6dc5bddf01030cc08eb7d6e249ec0afe34682cb Mon Sep 17 00:00:00 2001 From: =?utf8?q?S=C3=A9bastien=20CHAZALLET?= Date: Mon, 8 Apr 2013 16:11:26 +0200 Subject: [PATCH 1/1] =?utf8?q?Premier=20commit=20:=20Code=20et=20doc=20(=C3=A9?= =?utf8?q?tat=20de=20publication)?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- doc/Makefile | 177 +++++ doc/build/doctrees/environment.pickle | Bin 0 -> 1260520 bytes doc/build/doctrees/flake8_integration.doctree | Bin 0 -> 134326 bytes doc/build/doctrees/index.doctree | Bin 0 -> 5570 bytes doc/build/html/.buildinfo | 4 + .../_modules/flake8_integration/configuration.html | 190 +++++ .../_modules/flake8_integration/integrated.html | 194 +++++ .../html/_modules/flake8_integration/settings.html | 263 +++++++ .../html/_modules/flake8_integration/tree.html | 232 ++++++ .../flake8_integration/windowactivatable.html | 277 +++++++ doc/build/html/_modules/index.html | 95 +++ doc/build/html/_sources/flake8_integration.txt | 60 ++ doc/build/html/_sources/index.txt | 23 + doc/build/html/_static/ajax-loader.gif | Bin 0 -> 673 bytes doc/build/html/_static/basic.css | 540 +++++++++++++ doc/build/html/_static/comment-bright.png | Bin 0 -> 3500 bytes doc/build/html/_static/comment-close.png | Bin 0 -> 3578 bytes doc/build/html/_static/comment.png | Bin 0 -> 3445 bytes doc/build/html/_static/default.css | 256 +++++++ doc/build/html/_static/doctools.js | 235 ++++++ doc/build/html/_static/down-pressed.png | Bin 0 -> 368 bytes doc/build/html/_static/down.png | Bin 0 -> 363 bytes doc/build/html/_static/file.png | Bin 0 -> 392 bytes doc/build/html/_static/jquery.js | 4 + doc/build/html/_static/minus.png | Bin 0 -> 199 bytes doc/build/html/_static/plus.png | Bin 0 -> 199 bytes doc/build/html/_static/pygments.css | 62 ++ doc/build/html/_static/searchtools.js | 622 +++++++++++++++ doc/build/html/_static/sidebar.js | 159 ++++ doc/build/html/_static/underscore.js | 31 + doc/build/html/_static/up-pressed.png | Bin 0 -> 372 bytes doc/build/html/_static/up.png | Bin 0 -> 363 bytes doc/build/html/_static/websupport.js | 808 ++++++++++++++++++++ doc/build/html/flake8_integration.html | 774 +++++++++++++++++++ doc/build/html/genindex.html | 347 +++++++++ doc/build/html/index.html | 138 ++++ doc/build/html/objects.inv | Bin 0 -> 677 bytes doc/build/html/py-modindex.html | 135 ++++ doc/build/html/search.html | 106 +++ doc/build/html/searchindex.js | 1 + doc/make.bat | 242 ++++++ doc/source/conf.py | 310 ++++++++ doc/source/flake8_integration.rst | 60 ++ doc/source/index.rst | 23 + flake8_integration.plugin | 9 + flake8_integration/__init__.py | 12 + flake8_integration/__init__.pyc | Bin 0 -> 535 bytes flake8_integration/config.pyc | Bin 0 -> 3018 bytes flake8_integration/configuration.py | 97 +++ flake8_integration/configuration.pyc | Bin 0 -> 3076 bytes flake8_integration/integrated.py | 102 +++ flake8_integration/integrated.pyc | Bin 0 -> 3392 bytes ...me.gedit.plugins.flake8_integration.gschema.xml | 35 + flake8_integration/settings.py | 170 ++++ flake8_integration/settings.pyc | Bin 0 -> 5985 bytes flake8_integration/tree.py | 139 ++++ flake8_integration/tree.pyc | Bin 0 -> 4135 bytes flake8_integration/windowactivatable.py | 184 +++++ flake8_integration/windowactivatable.pyc | Bin 0 -> 5652 bytes 59 files changed, 7116 insertions(+) create mode 100644 doc/Makefile create mode 100644 doc/build/doctrees/environment.pickle create mode 100644 doc/build/doctrees/flake8_integration.doctree create mode 100644 doc/build/doctrees/index.doctree create mode 100644 doc/build/html/.buildinfo create mode 100644 doc/build/html/_modules/flake8_integration/configuration.html create mode 100644 doc/build/html/_modules/flake8_integration/integrated.html create mode 100644 doc/build/html/_modules/flake8_integration/settings.html create mode 100644 doc/build/html/_modules/flake8_integration/tree.html create mode 100644 doc/build/html/_modules/flake8_integration/windowactivatable.html create mode 100644 doc/build/html/_modules/index.html create mode 100644 doc/build/html/_sources/flake8_integration.txt create mode 100644 doc/build/html/_sources/index.txt create mode 100644 doc/build/html/_static/ajax-loader.gif create mode 100644 doc/build/html/_static/basic.css create mode 100644 doc/build/html/_static/comment-bright.png create mode 100644 doc/build/html/_static/comment-close.png create mode 100644 doc/build/html/_static/comment.png create mode 100644 doc/build/html/_static/default.css create mode 100644 doc/build/html/_static/doctools.js create mode 100644 doc/build/html/_static/down-pressed.png create mode 100644 doc/build/html/_static/down.png create mode 100644 doc/build/html/_static/file.png create mode 100644 doc/build/html/_static/jquery.js create mode 100644 doc/build/html/_static/minus.png create mode 100644 doc/build/html/_static/plus.png create mode 100644 doc/build/html/_static/pygments.css create mode 100644 doc/build/html/_static/searchtools.js create mode 100644 doc/build/html/_static/sidebar.js create mode 100644 doc/build/html/_static/underscore.js create mode 100644 doc/build/html/_static/up-pressed.png create mode 100644 doc/build/html/_static/up.png create mode 100644 doc/build/html/_static/websupport.js create mode 100644 doc/build/html/flake8_integration.html create mode 100644 doc/build/html/genindex.html create mode 100644 doc/build/html/index.html create mode 100644 doc/build/html/objects.inv create mode 100644 doc/build/html/py-modindex.html create mode 100644 doc/build/html/search.html create mode 100644 doc/build/html/searchindex.js create mode 100644 doc/make.bat create mode 100644 doc/source/conf.py create mode 100644 doc/source/flake8_integration.rst create mode 100644 doc/source/index.rst create mode 100644 flake8_integration.plugin create mode 100644 flake8_integration/__init__.py create mode 100644 flake8_integration/__init__.pyc create mode 100644 flake8_integration/config.pyc create mode 100644 flake8_integration/configuration.py create mode 100644 flake8_integration/configuration.pyc create mode 100644 flake8_integration/integrated.py create mode 100644 flake8_integration/integrated.pyc create mode 100644 flake8_integration/org.gnome.gedit.plugins.flake8_integration.gschema.xml create mode 100644 flake8_integration/settings.py create mode 100644 flake8_integration/settings.pyc create mode 100644 flake8_integration/tree.py create mode 100644 flake8_integration/tree.pyc create mode 100644 flake8_integration/windowactivatable.py create mode 100644 flake8_integration/windowactivatable.pyc diff --git a/doc/Makefile b/doc/Makefile new file mode 100644 index 0000000..413e4c6 --- /dev/null +++ b/doc/Makefile @@ -0,0 +1,177 @@ +# Makefile for Sphinx documentation +# + +# You can set these variables from the command line. +SPHINXOPTS = +SPHINXBUILD = sphinx-build +PAPER = +BUILDDIR = build + +# User-friendly check for sphinx-build +ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1) +$(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/) +endif + +# Internal variables. +PAPEROPT_a4 = -D latex_paper_size=a4 +PAPEROPT_letter = -D latex_paper_size=letter +ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source +# the i18n builder cannot share the environment and doctrees with the others +I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source + +.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext + +help: + @echo "Please use \`make ' where is one of" + @echo " html to make standalone HTML files" + @echo " dirhtml to make HTML files named index.html in directories" + @echo " singlehtml to make a single large HTML file" + @echo " pickle to make pickle files" + @echo " json to make JSON files" + @echo " htmlhelp to make HTML files and a HTML help project" + @echo " qthelp to make HTML files and a qthelp project" + @echo " devhelp to make HTML files and a Devhelp project" + @echo " epub to make an epub" + @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" + @echo " latexpdf to make LaTeX files and run them through pdflatex" + @echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx" + @echo " text to make text files" + @echo " man to make manual pages" + @echo " texinfo to make Texinfo files" + @echo " info to make Texinfo files and run them through makeinfo" + @echo " gettext to make PO message catalogs" + @echo " changes to make an overview of all changed/added/deprecated items" + @echo " xml to make Docutils-native XML files" + @echo " pseudoxml to make pseudoxml-XML files for display purposes" + @echo " linkcheck to check all external links for integrity" + @echo " doctest to run all doctests embedded in the documentation (if enabled)" + +clean: + rm -rf $(BUILDDIR)/* + +html: + $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html + @echo + @echo "Build finished. The HTML pages are in $(BUILDDIR)/html." + +dirhtml: + $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml + @echo + @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml." + +singlehtml: + $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml + @echo + @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml." + +pickle: + $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle + @echo + @echo "Build finished; now you can process the pickle files." + +json: + $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json + @echo + @echo "Build finished; now you can process the JSON files." + +htmlhelp: + $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp + @echo + @echo "Build finished; now you can run HTML Help Workshop with the" \ + ".hhp project file in $(BUILDDIR)/htmlhelp." + +qthelp: + $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp + @echo + @echo "Build finished; now you can run "qcollectiongenerator" with the" \ + ".qhcp project file in $(BUILDDIR)/qthelp, like this:" + @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/geditFlake8integration.qhcp" + @echo "To view the help file:" + @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/geditFlake8integration.qhc" + +devhelp: + $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp + @echo + @echo "Build finished." + @echo "To view the help file:" + @echo "# mkdir -p $$HOME/.local/share/devhelp/geditFlake8integration" + @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/geditFlake8integration" + @echo "# devhelp" + +epub: + $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub + @echo + @echo "Build finished. The epub file is in $(BUILDDIR)/epub." + +latex: + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex + @echo + @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex." + @echo "Run \`make' in that directory to run these through (pdf)latex" \ + "(use \`make latexpdf' here to do that automatically)." + +latexpdf: + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex + @echo "Running LaTeX files through pdflatex..." + $(MAKE) -C $(BUILDDIR)/latex all-pdf + @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." + +latexpdfja: + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex + @echo "Running LaTeX files through platex and dvipdfmx..." + $(MAKE) -C $(BUILDDIR)/latex all-pdf-ja + @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." + +text: + $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text + @echo + @echo "Build finished. The text files are in $(BUILDDIR)/text." + +man: + $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man + @echo + @echo "Build finished. The manual pages are in $(BUILDDIR)/man." + +texinfo: + $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo + @echo + @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo." + @echo "Run \`make' in that directory to run these through makeinfo" \ + "(use \`make info' here to do that automatically)." + +info: + $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo + @echo "Running Texinfo files through makeinfo..." + make -C $(BUILDDIR)/texinfo info + @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo." + +gettext: + $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale + @echo + @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale." + +changes: + $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes + @echo + @echo "The overview file is in $(BUILDDIR)/changes." + +linkcheck: + $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck + @echo + @echo "Link check complete; look for any errors in the above output " \ + "or in $(BUILDDIR)/linkcheck/output.txt." + +doctest: + $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest + @echo "Testing of doctests in the sources finished, look at the " \ + "results in $(BUILDDIR)/doctest/output.txt." + +xml: + $(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml + @echo + @echo "Build finished. The XML files are in $(BUILDDIR)/xml." + +pseudoxml: + $(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml + @echo + @echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml." diff --git a/doc/build/doctrees/environment.pickle b/doc/build/doctrees/environment.pickle new file mode 100644 index 0000000000000000000000000000000000000000..6fd543a3ded6c945418c141067380a4e6155f8df GIT binary patch literal 1260520 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®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⩔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

p@yIBp1IQ9d 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μ()%zlFaO?PIW~m3BfU% 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�g7Ai$mSKO{y?Z>uFEInnpdqf7iXL1K}y(~U5vfnqVqxoJs2QN z3*%9w%ct{|-TsW(LlhV=Eu@GoKmI^mDyB&CLqWE~7yQ}w;@)~|Q9Aa+lo!(N;@w&` zNO(91XpnB^sLyS>)vHG+D4^%1=AKD05+4a7ER`n?<3Nsil#&7lvNXwxknm^_U`klJ zSe+f+S+0zl$0#Nsmd(!-HKkglJr=Z+ke}4CyjG`v<*Hmlyl5V$+<-pT&+4lr@s9@{ zeauIJ$8fR!6BHNFK++RYXi)!&(1(As+?ZKxEH19x;2zm2 z=vKA4?*2nAFLk4s#%CjqzD99<01gK|M^mxB8ui~(`ni;L=Acr&eAqlsr2`zElo^2p z)t?V_>ri=TWoNlIVP2s60UfKm3dP?R4FX;Wz!_2vBXZwNYwuLU$N}CV*_bSM=E|)d zQ)M~Ojw^dd^HTzTk%FhQYYunMwDvAJMO$ql3?}TwNEljh6qB7SlnRrwo8cvzih#b- zBev^xNO~zqCku&|R*kD%u0Jj-K%<3R$-GRV6WLj(lFc=L^pa&7UXC;zBf`EF>0U86 z0=`1weP%s$$~xrb65Y@;YS%w3qZaL>+Qo4^AxPR@+q@mY15}pp<}# zcADZ;$ao_daQ5O)bPvmHXS;u<`%OvTrh3u)i{jtLU{W`Hr!(wEN{i-oCbK_0kL zVnCdfU)v7AACw~NEnvZEknyrymo+X4Fq^k3X5E25D?stLK^!F*O%B8@Z_mj9)T!eg zlD8`;;1SwL#O5ganb0Kr9blt3`?DHVX@znb#O1OFe!E;x|4t=ulfRQS0{h$aZ~&~Q z9HH+56#dILe_Y*JGw)VbfJd8dl~#m=_mJS63fX6ZU2N}F!azM38U(x#06$Fclrtqc zS#5Z~%CB#j_TN+b1CWjx2b@2KPb}Bn}Ui^Ha`M5FyOxuEd>^ezOg_KW#g1KH4qL{Ac#`E=I zj0c}oR6t-#6)aDG$@VAe5&9`W<7KxK+pIpVuz|`B8U%a>0EFCnToER&l)RPlS%qzr zzn0bO`@MDmIdVS-F3eowaHx$ByXR9ruh@X7fQqD!n?{Nxe*t8)78lH^&bMaWV}xH+ zVnB~_AKUut(jn(d;NXHvcWSd~zO4EI-6?hIQ)hW!fi7muUDq?@@j5l{efX-fE<+jj zKgk*svKfl~7GvX{z4pS)+}Dr@9Rl4&qvq=hUGEU+1StLuh{qh2QrSKR_f3@#=*_)` z1gMblEimF8YYeZ|e_Ig)bu4HQ@EvAC#@yDPRZLBavViwpCG=THr$_8Rbyg`ZL&*04 zv97RtI;DV%&MI~Bw~FTbN(ym>(~q#mw21owaG2ZhK&l>SH9uSrji1|$@rP=W_9M{H z4Ez#kwLD#sSl5r06i`RqOQ24Jgr9(bE^5R6olWMas=Xng+r&eIOPx(r{TWnYV7%Lt zli-86H0PV2tNPXe^|b#)A%cDZ5Kef}QT6d_++1BBE64@)a_vH)I9`XqE zuX<$u4$N3Ya2M9pey^;6HkUR%(4hVwpbx`i7tiJ5v-YCQL;t9NfXIveGWMprm7xBg zsNY)HyKm0eo6b7s&#E6_JN=ioq~a<>`~?VDoyo>*xjJN47O_iF))(Y)_`fPBV76sn zZgoyqT8gy4frbik@qt>QC>w$Qu9$!dNd*?H2KD~|eHb-qgR);wwn5{j61#W%pGpZZ z*0Cm>lp*L}0HNmnM5j=aJNC@Kl`+sn$BK~f9}r;ABrRjO6Z^j^J|usd;ReJqfR8Eq zKZv4yoS!qj*urXV4fn7gA#RA<>=Lly$$f4cRZ5Ah>xiH&B3BpXs=dJRx{3){^NQs{ zs=+Bx{(6v)ITppjaCJluOsRfA=ScT%r$WXJz_1Rr3=cCat@&lS9LTM``8%U^JnG#qmc% zkJMX&ipaq1iUg>|z*H*cR*DL+UH&^uiZm#HYsjNP%X@5v@siw0J|gG-%~47S7)@eN zxkVBL91Vc4b34H>w^8l&)w%tevd2I+R_CL2cPGKIDn3}9dmUnq118od>`8NTyg~-* z6IO(T6F`7*RGTjQ739uuxeNA0#atx+J;U~6OSj2`qOpue_Rf zmLv8QVBt@=fm+U@kI1nBw}No05(E5+)IcAXBJK91b#1C0Emh5FO1o&?`HOCL5GBG+ z2Ml59$N_E1fhxHo{|rS1Yz~ONwuT`3>BLC818A6eL|ZOP!`O3qroy&n=d1UgODjas z9RZ4UEZMtSEts>EGEm2|A|%`i1Xu{YSWDhD7mw!7%D5;yC;F`|HT`9k2)YYF&gH1d z5d%z`%v}`}V5O5z2Q`Q|8;F?OAs3@aV=+TY7|88#Dr9T`!%odxiyb_?HH3@Eie)*_ zc8+oaTACJ8vdAb#+(u?88f>v?bCaS19Om9*w#X2&84xsQXC39AZ3ExaoU52VW{*LX zlxbBRa?S%Mz0Yyu`E|K=;Cy8Tl-}C=9IY6E7XXMUjrc_HKI{SXEeZ;Vp2eIg3Q+t) z<_4~#-2UF`$cDyM|CaYwgBcV73$v&`Y_mjakxFZERTA(mOEyf zVlE0Oy7aB&szg){C^T<3Y~hJ6H|7m1DWG|$#yr&_X9OG=Yrp)JFX7#>QH2E9x71z? zt3f~>09z+>LlUc%BY|d2)z8T;tXN}qpHq08DHr=H3$11Mj>Cj%uWvf23Y0HE9#aA} zdN6aCa$+numnkP;sahq{c9Vj{ZfC9}-@`b+XuE$=X#u&4m6$3}eiHH+IU^^)9+E66 zAfQ$C_5q+nOc|KSIOi+*Njb_`D4VJEa8kxub;!9K91Lt&pt4VCp_jEg=+!~WslL>st~ao2+VB#UzEe<<_ZM_*pwas(V+a@A%8lmea$x$ z{N>e~&NcT??xcK?G1UrsHbJ$So_iuaXzua743*JIb1!8FxYqt-Ya_aZ2&yYchVP}- z&HE2F-0s7BD=47$5<_=Pg_H&;Xp(BT#3?SwfpFX#Z)Ow~5DZa;q~(k05jqQKEVM3H zmsHH0vI5#n+FU?``c3F#LmbyEBp@RD?&Nl#`pyYCs#CRhIqp$lz=k*~*}U;bFIlEx zFVX;C-;K+q{7y6_vrnM`m6saQy$TsEFk-W>VhL~gUa5$IW?xo>g#92mFUUQVP%6ul z@P*QLGq03@QKZXlkjr+dL(l?1ubTU7`(kDU#d)IX2at9+BH` zOJ-Sl0nIPn$(#xqE6g1upE!Q8v%K^CbL;1yEB|f|C@mm&6tTJEk1j=$4}y#l8s=@! zd}D9N98%Us`SUE(FP~YCeoy69DEm0)lD%`|Y8Bp)EgbX5?AMgN4`l7^$UZkQhTWy| zYNK5|xvv5O+IMR4BrZkTHK4`pf&>t2Wph8}3}hFq2nqKG0Tm!YV{ry^GCzKR$_Kbe zu~@VFoWc);FuVz8`zlj%W!i&OIUtIivYC*e`h%g4f)N*Os$SlauVBaKLsUP&mu|QPnPB?RB{!qEIrATTe6QN8sQpOKC0 z=G3Qy5e)(P`T5pTr`54Tz%vvy$Pf^hVve2(8agX?RaLn7V}Z|7V2ESy9~!W2q^BOK z&juC#4#riSGpftJtG1DIQ}x-#?7pUXj&cKxL~`zuRwMPfpvvZio_90&YZ;!W;67K> z=>-g#*D^R&CgAx<0QzIJ9h6de#giWF>VM?WJ$QeOxvhDsSsr%N(t zlkG4sQdWQ$6dQ#7_mqAyq%oAZNMWr$Ew`P&M70Bk;VzF~cA$v_@^S*e35U%M^E` znwR5dBSm-N!>be*-~{)4U$;w<neAN7 zyiU~v7AI21K3Aji>!A!!Od6rRDbdc3-=OLNo>;8;ssiQTNO|w8Oxii?n^ZoaXwoi< z6(QlxAfSu*?R!@?W;*8o6cCX9?%jJ(p!!>&j;3p`=Nf7*9%vak|NK_f?=v8Ay~}-S zTW&&yjJJ`2y|E+p;psxLCf>{2l@Z`ECbre81_|!~0sY*~T1xV|m>qrIsfd6c=)Set zNXn4%E>NOIiszeDe~?C6*5f?yfih~r-hd`^Q5=4+n)j-FABV@e1!6MNcc4*-8F(Kt zesyC^ZjCMPH1AhTfW3`POR&7*BnbEb0O)MaoXfcIYPGx1n$v1bm1&h|aoV z75KyJA@n%s8e0PX2ng_JVmE%qZWR2ek^=l0O4v5VAG_l3yf9xM1Jy?Zs z^+f~h*OdJPWU)OHM@|;yyz(biHJ~cGRxZ5;wLb;z>x;IS$AbB^3g1QkC}UC-GpPDR z;AdiTljgGn%IT95pM#uT#PLr^+5fXf;q$5;-~;!HpQ{v$;tPOT^J8y=lzkFzS@nxb z3Nb(STW5X}GNgP76kp&~^JUduUxDjJp|8Z`rp;Fel$&Piz6QCYrS3I4kEP8?S);4$ zHeXluZP~3u1#DU9uSkx_Zvcsr(T}|&<;h9&O+^K?@bu6N4eEaj`q4zHAlv2}vZ>8B zqHilEpb@1;mbesY-vJF{fS>nX?%L3I6%;TMr~IJ2Qz7GfU|>zjN3Uh)>xjL`|NBbm zGtzLp?-BZ@5J5ix2vy@!gi_6!A1WlEYEoIT8r1(0^mXO5GP<*3eyr*NVZp>GhR-Sd zlbEnv$S~J3=BEP+yU!{7GYG>**s&KIw#t>9bd8^@dO)EhlC2s<`~nEO^>=PaZ1=Kh z&zoPWe84;{7F71%Q~Fns#^o1`6e2h{HeD=6QOD7Ib)-_5s+B9|*9x7IPcjArD%#%8 zAN}N+rr#hOwJ%e?c0p@so2sLvxMQdArf-ubPm6c~sX6!4x6lZ$M!9ylSPj zZ2qpw0iJu8BLo4e{sXG=KkXQHQ~t$1E(Cf7UtQ(=8#LbR^z0*U_6LzOA` z7gE4pFWar>+k4Hw6}Zk`@4lz>e;|!ethe}hOWbXn|E~fr%5EV&#tT&<>VH7V|GLi@ z%ck_`ZTTZk=5~_HvZ=8%#kMG8zj4MmF3dz+NA%;%S@JGerE0FL)PP2q_9(0f3D*Mw z?cBR8a*}6Q?q$5bA_4~aG{UKnaRV?g_S%sqH#LQuyN^^tKzmONGfsfwH-tD^8)By7 zo5_V>=0@w$PQ+TB0JU!n?PEmSI}L@($n@lxyrAVgp_?csAf%giAChWh-V{u+=2-*pDR&YYu+(z}++X928)Q0A>{;6A}?KT` z!L`Y$x?JL5PE$g_XdbiO{(DNF4(a1WI=cR)SePtGI6psW_v@aaoKg8(8D>sJtc}xO z{t{g;N%S3nJ{JAm?NXOR=&e?LWl2u-&Nd`0b*7R7qG~->O1kujy(6#)0wqtEl}4)O zEF}g^c-J~tCPGBr38>SM!!->p79M2re2clWvWwZ}yq?XYTbP==AT=>JLmHV}cw+9V z;DCPDv#E*-8E1om(c0gc=5O!VQK;1Lkm8WCwgqHz&C5W%9HAQkwVmCD$fke5~>Ip03$ZS18=37E3=u(7H{)ZKuB0nnD_ zjsKWEUb0Pj0bN8TdNx)oNNf(+RG_(3-kB@Z%&yV8qFrZXZ4p~fztUOpg%3m~NDu0*kW*A#m(G!j1kV7lSylW49qq>o+a_XJs zRf+UWsQks*@`;&Sw-l3KAkXD>v}L!SHjKNw`7-78IeEfBNUF4wVkB+{5w5a$K63wt z40U6&b$rwml@;K}#=NGO1`(4$pxY9GIlU<({mfNO= z%Uo)T4A@_nY7Gf3@}|K{I6ktWuWEKEX+XyZDrD>g!#6lAffq^>@{nH5;2?-Q?6kfH z7tb$XLOB67r2;(-tH=>~cjgM+T<&RDo@=ix%Y_g3P+Gv?lrRyI z2pRVT0}E=JDxa-f)!a)t0nr`(zGtp-nyET~QO_!h>*n0Wdn;{_o~1g>SOXjw2)ln{ zq@3S{E!Z<5kUrZtybd9=fMB-n+_YMKT=vS%DI;JdqT55W5|nR3{`f@YxZ6SPl{^y8 zHhYv6u%&#hDoSb+z87%xDYPJQ;23$^r^xlTzDR_O78scS(jSKl?oN?x-X#BSu2fjS z20Dt^7RVo6iX`s`8ATi0^=nU1?v!h)ZRtIqYA zl|A;wFr(b6{Oye4tXs_1Y4;y?5tyP5QgpgcQO_kW5fXC>Z`>?vs&+7E;_W>r3*y0bi89JQAVmmAOuI|XAEKlH z`;;b8hn$Ck0}luJUN(){=1gOD|GexVUp5a@R6rLztC^cw81hp;^O*Ih z<3pSJm;zJ&Sg6MWF2iGGc^>?6Dj(ogq!VvNNO(L6*15vwcpQ&-f)WDe0`^NSf4jk6 zGzfSi0NBHcCb87nXr83n8?uW&(T?P6sy-R2XsCW{mknH#cm^RSTauolfPi^f58oiB zMch+?LoLfZn9o0(rzt1Eki;g?6rlLinU{FvZ)bg?AQkZpWdwvwW8b^#SecRWb+*}& zL_0kqp9$o#s1$z~!~MUm7(Yv~ef&8FI;i28Jq5{qHn_3&T%9UR<;`=HHc)%EA|yN) z1X#)id5&mbV_sjleV#%BtO`H2S>lf_U+(!`d65Os{G@q-Vg|~K6=7ap2tqQN?xr8r zd~wXYNJ#-rqyKaUdW621*;XE5U&YqF*#6Z)uI;0*#t^m7+odh2Ceg zjV&!k-mAg$dqx}c%eXQ8HHtY$(vdNW#cIWUPT|)=*c-PgA38R#Q|a{?HwsYv^$>^o zm(7_=iz^G}4Jtg8o#xn%PJB$!H$oIe?;DZqQ!B|lRDzPD=1r=9akhSXaEwWj_GZxF z=FtWxm|b+S=H$Pp^gAFOUyrMna#ON8Chs9BARrIjZpB!gIt0B7AiFr= z2OV#r-K(YVR@k=e-1Hp7;&NoZ2TVk0X&&uHJo8?K1;nvpMQ81!l_21K0K|q!xx}qh zHt$#c0S%;xknjN#Y_zXj9L-hahLsO0p-Y(+vOeU2o5z36ax67R5YJl}j?NdaD9zspI9 z`T|gXHAOnJy`5vETr^))P{0f-X%MJE#Fv0T<4f*Tk-s)(zO0ylw%+4)K)>q+TEu+? zI9NE_sql}h4KQp- z9uKP8o3uu!C#TFe*8}MqgH(l(Zvg_=$v^A8+&r{wzO96SlIrmuI7A5e4gvo3^d8e} zn(rzgz!~p8Jq-n_e-G-YYX5d?wPu5z-&g&BErIc8UlTHf{D2V5<>wonW%~}i`JqAr zI!Gc6pc*9n2m}n7E{0JrRB;W%kJkl2Be6q3T!Vn05a8QuZXDOw{8Rw}^_*_5R)mC~ zfzZ9UV;>dFOUzWRk^8yAuFc|3Op)YYfP4%JPfY)iT;w_|@mVbI%Ox^3c?U_k0W%pZ z;YzWW7?HmM@+3jF78-k-?WG|E8Rgc-x%#ZVBB(VZdpmxu;DAFX6tZmo=%LCK{01p- zE~?#Tw6A%{UwZLd#Rd!zJ%&A1BIP{JFdO&F_^HVCzyNxxc2Lj6Zt3UJ}mE!IPfzPHTiC*?@IC5RZB*!s)X)wq?y0*0m@?cb`9aceNJzaaBq z!RAfoC?!v37wmdY7Hrxl=i%IFwOBK^QSv}}b}D2X0|xt~I0Qb9WR6uxK)+A) z$w-8Z3WoBx>7X9D<{B*={g(|J<20Wgq;8wh7jLSs&WmmIZ-JCnMr6+|0L+g z8loHs#lfMIl`v4HI2AH(3kC{|Ho)2&IJ#AHI|T(ex%@t1Ln1NqP601I|CIH-QQ3ud zs=%kTZ?`N z#2tXZFv-IQ)$N5TbEXmkJP3YiYlS}`L&hD!IH9}#dD0#2z?`MPfDM9cH-oq)>30JC zc%eIYt<+vFU=#j=JPO#Hv;NYZ6&|qU>QroA*AgW8E+C&FWH`L>tyg=RjpY^7tV^_^ zX%^-BgeAFy@vfSRUGhnWTh*;-)6@Njy)aDM*+?69LCFOU%VtQ~0d95Iodyt~>ISHy zHMwciXkNNq&77m^0bL?B;c_A*Yy^SZik9TLxYi-FN%aF#pD^xDfZCg(4ZGnZK6XlM zt++R+Em?M zfxJaIm-zp_b;Abfw0OT^d0%^RsBQLcV4#nm+t$S&szus`prO+3dc%&KTuvj48e0`K z*rJBlA><-J>|&;A&f$rpi&Z~h4D4#MvrdEBmq1&u1ghnC)y$=;9x%s=#gNN&d`{uJ zK^P6n58iUmHjb5UpN$mr|jM6Q^UUACUfZ8Cek$#=8g-LfKt46W5MlMMx-g5sI59 z#I?Qb+7YY>3EM$HEGTg)#Oz#sbA40&98*+OzyKPTuzfrJ2P@Phc@ku}Z;5km@>YqQ zy(lR*U<#<;Tc-ZPsX41gU>U$W2(ZyvU7Xz~kth2vb@#8cvc`P(lk`$ zn~Z@|C2bn?S3dxgbvcsdLw%gjnTo;##-5m=pa8|I5I=M6JmW}BJkvGhRu5CAy9i9! zG!n)r-0Z?qy}e|1C_Et3i2>0GP6X}3sj&H;tZY{6MSp~_m{;Ro{CLzGCKnCuHO~RU*q}M^` zTz#Q&$QvPZZ$$=J{zN%PB4jkc@O@UI>vj*HnNdJM^Nsac3Q&9&;s}oE7C(O|ZDeZN z%qe7BcHOCfEjj%a$r0HE60QpJEt}$7i)N340=5n%ipzda<-JfwZAgYCqj*Ajr)=Ld z`&2%_&q@{+HHc^dVW+c____Ice`(y6>mejEpc*9X2jM8mgmXCLachYh`VAcOin%zu zLQ)P(T#B>>(6E%HH}I8*FUya}9ej(*3h?Grckp=?V%osOLO_L4*%i8^gn(-4;U0+w z^{;|H_Px1Fw#9$Vm#T$w$rxn>ayHDs<3L_J8^Qhd6pErk;+sBFq9MX$v zlD`T*#wzbUy91lqC^c$rQH0E*ZnLHL{?yKCxJxWIqrt2D{D>l2z z6{U_xcbofZ8U~tOc^Ojf4+?sp4+_|2$OkB5fNda9p!x%$4igeRfLa=^;2HD>DIy?} z-1`Ysr$p3)fx^N{^k7Fvyy(`U`a)yLJVbE;F|bI%j#tsoNRZTrf(qlpW2EwqhP|5V zVG0cB_C1b@;2{kN5%h3?P?89&xHC;-6?dpfNdbnRU)zlF$5`D-k@ZNh&?ek4;Wh|9 zN-+TzIW@jm4eCFdd5Jbf=62Z)mXA@$C4$eG>*&`uGx|#k4O)af7BKl=w-bnFx(WO6 zmf9`35%_URE@YDdT+0zm>M|9NM=H>n_cvD$w$0qo{)6)^+2rvA#RfDJerxl~A5Msz zCxU~~Au;`&ny!rJ&6AXM?IyEUjld@Zh`^QjMmy_r1MpLnGL&7AF^38tQ}n42MQOQq zBwJ=(8+@8-2bjK88>9>=PX{FmES07whb2`13}pliEh&Z*A>o-I9EW_^%L<2ATJy`T z#mS~bB3)?ySqcj{X_E@gr}W5uHn^}#a3`_qUiYEo=O{10%#j!q zIWHp5k&nn#>$}aX6co@7V}>ZELBy+pKp=rnuZ_q_9c+e~GVMd|0;ks~t&a=Lg$K&G zmgwJhOKFn+TF~9lZ?_aiw?n>8p#f#tV@shb5%qeYjz>mYi=Fn$;@psbJ33dDiDsd? z-Mm4OA^D_AvdeX868=WO?aW4=m*-aXdbL_Su-Uvxu>s>`;sV^H5Ls_tleNkG-{E2D z#*nvw6`SA==SIiOTNM(}I@A3P8qCYvpr3RN?PUQ~^LB* z4zS`&ZxYN|YRdyU9rI3wT_O!A!!+VQ$2=(aL$#Q*cY$X806Tsb+lzZ^xF74?iV84R zDH}o=Qr-g!>c<+8ioCjBo;2@O#HQ@rB&>%Mp!oYBjz-NKV|}se7AxPcjDXD{{N7d% ze?(&BeE__eeV5aDc2mU%l@(BA>GtMjNcj*b$tGPfA6CSmOKr}q%210`BpMZL-tO_N$W$2SCKTugggZiK9(w74_ zRrBddn89b2cr7PTNnNJmb4Uf8P5ftB&d0&4;k^00QUjW` z|J3%NgbX2H00f-}ZmB&CB4L@8rum{$0_Fq>mo^e1<4a&*)*(iNN1Ds#%Ss4{xWvqj zDp39_kViSmU)m{0j^#bUY1vr%Rn-q@&N2N+f`G39fL%XpZ@bKmPK`{~$1m8l$$VY8 zCHVwqtIvLnpnaE-I8*cuq$ujXMF~loZz?w+zp3sE395e!>b6a|_tJ7>vPWGu&VE}7 zeKvs5;p-7=^*Y3S2N+lhml%7X(tKAL0ahZF3#&o>??K->SN_l%Vz;u>0tef_ub3b= zGI5?sw)jL!g#7?8TV_$Ps+b!$KU7eN7w5n2@<(K+^f);`0w=I7ZZtnu`eAR2dV9=I zkRr?!{Ecn){&l`N1v}X>KhJ7oZ(tA;%&*60l6qXA=Bj31vXxbxL*LrC;(Q1oyq*Ak^-7;!epuj3BLjXM|QaCTNp3NCEc=5 ze%M zp@?Dx{tiIIA)FtR7sDfcR;3yY1dEZQrPt%v_-g$6`+QXak!jKvkn{tMU)jWw29dNI*omAKx}SWJbK zzkw24wJOL36O-oeiU@Ec(v@aKNcaZ`2#uwN;mO>1VZ{7XS=;0Ryr;>v)9hS#kFi2h>m3iByUZaUIdJ6XnPXOKezTC?n>&iV5gYy^XM!BJ6sAp}DbI zc1>3+=K9JRs9K;wzzqOEAbY7Lm-aP>CJN&dve`4bl;B8Z1+1@m5!(pX5G4490K>PF zT?Bg@W=2l+nj0xAU`I%7_ksVO(l>^*Zi|({q-buU%I63&qtnE^3=0uF_--R3AoUYcDa{N84cKO!;m zjs_3$GUqW@DStZ>BIy{A5Kg6k;WkVZs^YW2kFA>X;O>4 zJA!wN6cw!xZV}G!nv$4uy?TW?ONjvnloAPRme3>hPM}&}F#d>`K1*ZnydJEx+w{=v zf|GkhO!bJp3$Uf(@R)~PtxU>MtRV#kcyQ@q){2m@ z0R#jw{4ieJRI+#3ouiC^kYk$RWk}fwiZy19nZ?H9;_492XCqQjZ!gZTnoUXznFvwC z*=znvC=$Gx*_-Vg7_zUbz|P21S_%v(LVRmkNf9#610(L2R`D{!`AQhbFNFpH7XZN7 zoZR!W*j~auy^h(UjDYDvBK#0jA>~45!?y&v4oceERz(C9RJt8l5fUyEt(9FjlEx;R zmbc1wg9UT3{LwY$5pp2}^T+2RjV}@0Cll<`-Zgvk{3Q&0j z$~fdXKeIY-MpboaU8?w)ig_p^3M*T}nnpIw$QfEQrow&NYp>)+8q^<$KFVTdb-9Tc zkeN{N^_2w$s9b#-b~2<)gMz7%-(46r zp&iQUGim6-@j|KgvlFE23F*>HFEuzUJaJZ|($B;NN#gKf9+tq3%Z7l67vn$(5nVFfHnVFfHnVFe?=iHfd-+QZ-cGm9ikHj8X zb3QZk2JYM;SCIDIsLi68ZqJ6hyXxw(5|6mjt5c8NBqwm;9xgauH_6CSY*3Li_T*Ao z)$GpBqQbKqm~j0SCPPCiN|IV#NQu@Y?FyhxwL5%gW6}v@4oenYsx7LrE1pVz=P>2E z<8@#Xkn%K@*@$@mL8pg8SvA+4TtG)Qh;3mFvyK_B^GPzRql_qXq_EsL_#zjpCfobkEWXfj z&UodPgjP#Pq%KKpVYON<%)9ul@RR(`$JhKWrW&22sMQlFoWgbptKh!f8-f#7nDz~8 z5~jDhq_>)S%0-V{whKI7$#&6q%y{i0MwjXWRoSy)n?*O;Yx`Vyyq?V!q`jZo>^Hdg z9i7G;EUcN>M8W}wjMr~a3Y|ttO0-4N>`sMv_d~eE5i2;3hkS=-j4$1LQkNx!Oa3rV zgP|Di<;vrgkSj?0-qbdemZt;mNPR+;{D3-02g1uc{8Mt3kj(|km@Xp_9Xhw2f6NeWx>c&d@vQ+=i}m%8N1BxA+9=J zpDzI^Ka|RJ*fp`^r`K+-vOmMaTz-XV=#aulDy!{JF&<6^dwX09(+aIlvxO$K0Q3G4 zP8qMacOA4J=!o-3a#-&B+O7TJQ7%4Sxihj9A5BG$AGiamTk6*zUdw2k)`-lDzXp6;fT z)zT5?x#X}+V!dfM!}A<4UYSTh%Fn0r<)Pf0ZKKM)z-3Rs&+@Gyi!IF;Qj_Jprr$j| zyvQZTo5CQj1Yb-+W*;m2-M|s|B`!K%_9Y~ z>BIDC#BzF#E05RoT|wHfr8Z64I5P;ZbK&t!+8AA`ucs;p=Sy0hRo$sou?d7XxcGR3 zGgMZ0r&dQ5G2Tc9JAzJYKYRsvLq64^H#udzj=*)Q_2brV7Rc%Uvi`Z<5D!jvm$Ez_|^^OWk@jIz)wY)Ju&zEH1<;r8$ z@)%#b@1`z|2`HA@7UI&`EM2C0YVwR2eF^hGOUigRu#+x|0)M`m72OlMk^%W1b&vyGgJof%Ehm4mC zi!a@eQ0vfB!uang9THj1pq9g>A>@v|hb>}|8Oy%+R3mmjaMa0R9Q^VDYFS!67H z!NtexI|~V^f063!F(wz9dso9<%HHTpEzijSx>Uak zl?D5x^NY8|*6WrnpoXvE$M+6jC&D(p@NzM}CcbO2({CKuh{uk<;rJD7Bki(LbXzM{ zz_pZ?Z$i>;gP&`(XD7M`Y8%r9vg=`u%>WAb!nYi|2}Qk3trk`~hE-sxsQBL|-Bk?;?L8TgQT zIG=8LTvk{~_&$?xIHY^i@d}GwXQx*$BL4@@&)CN)4MQtX6%_Y}pTcOb_XG;z}nTGU#PJMRq-ZXo)-B^iJ$_|GV<;(D-b!It6!w?I zvL&SL#}W4{$E{#6D_=u4E?08)Ya%$MTUe+?`QNzw3S+F~5zBI+*h=|tDSLFaz|Lze zPIU1I&}J^khlTlm_?@H9JEVeJqO4^6p2?u`rOs}1$8LDq#pOa|H~hgsWvCn>3k_)ikA2V$v-U%-Q`k@+uYZWx{Sl7wMP z;X+d2e-q4FU;3>JvFh60-;3z~I67nWE{P1H%c6q+mvHu3lN0pLr%~oosGM=3ZuN+%! z$zGnaoKL0W7dz}&N6g0+9FWmV3^~eC(h}~9#2s0!7wba1KZB`cyBV=pa_naO;=zw) z1G-AWm6-&#iB78@nze2GzZqbWeif&mIhr0N?9&ZZ6Z5KM9+C9eIqpoCW#Ewp_N0s9 zYL3llis}drtiYh8*jFc;OD<`@IUmZz70BTlPF%qqr9pPcUiG9S%r%Lj{d4|8YXOh^ z&CT~0!?m1|VgF#M0}(AxB@O9coBHfLOP#^)#zg#R*KtmUv04%^SSc()K@TJJC_pPi z$+qsUIG{!NbsfG1zd545ju=6z(n`kln2ckpdEe7%bKBs?j{V;{gu};4NGaEYrLa_5 z3Aw%}ggsU4hkCU*@RZun5uT83qf4Y!mWoL!|71{HNx1=&Qf^Y~v1hv5r@bGegd;r_ z2iv3uCB;69Y|foZg}4V(uM4s7m~;K3ot!bvC}}MD5QV1D#}Li_TFpKge|(eahK{}C z=werVV=7RHiFYINIPIXZ$){a*t^2=??i^U<#I>V|QZS+dWjQgAC3B#7Ve?_RCpNg_ zoO)=*ThbKz#zdD*v|atsYRpCMO`Ln?=-du9(MoC}9#0~Tm2|+rWli~}j><4rQcNq? zvWgHlBZ3owg}}=y*Vrp5F-tdhPR0RdAGwY$dP+X z=Vo{}NBmdUUKeQ@T(iD0%(QKimWU6DRId%m{yT;s7 z{K0G|Jt0pZlAe!JlyyCH9`y0Y44>%abMSj32C0(FAh{~51f0YK91r2jI9ZtvxsMO7 zyEUGe3q~hq#E7{ZL`gfDN#i)72D#pLh?!?R7R@Q1nv8KmDpoEE3`&Z9D%oaSN6(xM zk!iknno~1cUfHvk{$A1&?l#1+E5X7Twhp9e!s!mm=t@#d%UxMTh%<^uYt7@r+X{#{n_nZb#fI<)oFCJ1{M@qbJ&(c;`y2K6i9-#+^AH*U%m^C4tT)h&8s<4A0g%g^hg0Y^@{D z#;+ZGW3H$QzmE8U&IJC`xX&zR`7GxjT4z#~RRY#C0Wvwb)Ub`WT&gA9*~HPHm*EAIyLhW_6Apc# zn&U{2lQU+*k}|XcLv@vk%}fPd3OFEa84l+HEQv|2>@^t`_A+ zoyqO+1;)Gcw>TxEr_j9t%ZLfOl~8`b_1*5?cB>ZuK!w3@v(0%KAFvtYTPZHp5^g(j z+(@E_;A8pia8kycT2T$9K&2$lCxvSzJX9I;veO9}YbBLKnHFE^-$iBGxiPzRNo>L1 z@yOWij0`KK5U_j{LDv&=51FgLEcI(?s<}HfIz6~%lV9=zPr!Ek`oZ^aL)Dd>3z-~N zQ*{#X#q3gLML`65v!lcCU>)-ViXz{MWUfA6G~b#|E$_|_J9%`LEuIy3p&;?QP@JPj zk*y7lexo#0-qleV_KsAHrogstRZ{G`kv*{FvZph_>w~v+n~m96z3%S(j0J#FU9lvT z!b_Buj5?EX6BI$|mv_J~fT=kg|DhF)2ifHJ@Z{_oUGgQx!Q?DUP_i0K7C-wm*Dzbw zHBC4?Z&IB7ANt9&cs2x?-Ml>(_@qN}dZlzv%TgVoT11t{XWU7%(Om*l z4qH3AI8~u4wW};A<}{g{R4T?fZHy+NIkUKvTcmrOR)!fzXP8A2s-TCcDg|w(fX4NK z$-wS17VSlj%rLG~%t$P$2(g!l0mE-QHaTIF`~HZVbzDXcSE#EMRpIA|r)}TqL?dY1 zwluX59p`3@po(t!RKT@F>ykELW~TmHEpy(fhh}D0WtD)7nE-ZHeN>+s|5s18N^Lg+ zo8aKYj)CB5$Z!;xl4W}(O(mem1l$@4SboyHwT*ddXL`GB#fep*?+LmaqK+6F$C*1X zWhtQxOeh=tCGC0cF|KXFcKX(x+w(M3!#+>Y+R+J;f)$biWjQhTlR3~9cJ;gSo3U^o zt;hq;J+!t^Q5AlXcy_0~_B0OA*EVytBhB0|ad1XsNbxPdOSOc%CvnFCSE&jcu+@|^ z-Bx9};a-l<7_UZDfT08>>fTJ$VMvruQ#WI=fzuRxgZp?Y*5WrtR6`fAV(?HQC**yJ zJO+ZLzH7*keLsh1O!iAshA)MeN-H7vXF}N9H#&>OX#D`^X7u(crZLMZLOhTNo;R6W zz*{ibE79b3&CWEha!ng1YU>vII2DPNQLFN?19*@pVq$d34{BR#27kCRQ0aXz)64S; z^88}SA*Sddo}v}@-O8(}*p?CnBqi2E$ztk!g8oUMNia6E0dK@ zCL$l>$c(wph)%^61$```T=1_zw{^=y+T$FaF(DWMuP7@Kk7pw2p02DlZnbvT2z?}t zTgly5{sd1?hI_gqX&<5TljR^v+7p>HRt0%%Y(2%T=_h$oGOB_kEENh=^hA9!sbzCI zE&Q#Y!9nIGx_5lT@Dyif46sAZ=^?60!Bd$6ntzO#))mdAz0vdjH0NiSUXroAD}cqt zs;1~qCw*X|dgoT?Zbf{-ad?b}iya#+Mn$4YeTEk#suya zo`?(|`brbHs;(09N+#rnNXVd3brzl+ZH3+4?yecQzr(9M89VXIY&$D#Gab~jG8z0~ z6`=IIn(47=b-C(ng=vZFU}BwojVC2%?Y%6sv`&_Vm4w$a3GCG>#uRGge0ZIsGc3hr zZ7E6#_Ikqb-(a6+9%Xz0+aCq1I=sQr87*<8zHLxhDS0DPVkKWRo1M5!0TV|#G~VQC zI5dYwRaOajGZVlyiAh`tR!myn;?Ofj*E~hFFReg}u1ZnfN(yI%rQQOY-(%H!o3k?d z@sdESSVg%>P|&v%N^by6cr28mLDeuFDDB?~?{IR)e&RyKz(uesD*8J~=gen+Yhof` z3o{Pc#QeU?sb`KZ+fr=9mcphc+`EaRaTaGsSjxg_g-%~xNhH6=$r<@gLPlLdR0()5 z6Ts0Li&Akb|JHRoPN`ud)TG@+`aWl8d}V1ET!GCML2=(t?p49v+GuXym5TTS4$Ig= zimNQODp}Hy{s*aFUK&aE>AEJT-YD1bA%|rQml~ujX9^5Tiv3}-=}>_8W2S`zZRY;} zi1RWW3Mr=H$|^#9lnAzecG-4l&KMtaMn?NrRD&o`shuAuh3#KC#v<1y+B_`3PdMvL z{Kkk;P6CzkE2$}8pCpk*H{F5*P}^EQ<*1CJOEHa9RuSUUM9_*-mXQqG!5lx+XPlKW z3zI~p2rGJ`ewNhoLds^GRXeb&eTi*!_?$!69%NaT<;46vne?p8cdco+SV!Y9A(by%&8Ym(4?^C@zByH%< zVc#7LR&@hEaMr;NNrRGN|B&o~siSonvD5p}IN%k^wvZI~#{|<4QHqt;=pyz z`WK#pLtEfjDy@Y4k_q9U+H3K?*3_5$%DEYXYKmzYFRKXgYa(bymcGyy?5(A1WZuQ!fNXqxIlUmooAYpVU+*RI0;$l?U^OgO2~hi z5O!61OKC&5xjStFSqQCgDHK@T3YgJgrC~*(KvhuOOGDS13Lj^nRY#xwc0AF^zsI_8 z8AoR{*0PM@%Ri{-Dg~Ei3OFAqb+FraMfBwyonf7q;v2aXPI^LKo=DoUI#k-SdFmCM zb~^rTL@QL({@m=1^>>pIN4srf0pN1}#dbKSQ1uE){NUW?xt z(Q;hC;2tXEgggeS)<33Aspu~%dmwJ;)QrAr$i~(IJz;M|EN#Qm@K9be#Av_D$r-j` zNyc(q3Rh*7fMb~e&U^YZ^k=7e&vDMonD?ZZ#w)7`abqF|<~?cs)CRhnIPB2oJta+{ zj~{}L>x8ivzUlu6UD6c#W<=9(B#UQH2RGwk2!gN1P0E`)KV#M$JJBI)@hc;;A%)m98o`RA zEGOnkP&H<$z4DY_WUg^$#x|6af?-QxR}}VSV(IZJ_sZwAW|OIXigPn6h$IZE0DF1Y z6ZKS5S-_>FZS*E_nnMpQv#u!YZHT=Ru#@Scj&Qo8GMwOuWm!{f$(})3j#Z`HT(C9G z7;fu?46C{%F!<#pDCq47rB$64Z_c)rpjcaO@60>k7e>_3AqznzE#dA!+@RUD8@mqh z42pL4+|jXzVs=$U#XpmLe!9>~1JqilWqdlsvI13X$*!X;Ckk45yAXFWOk-whZ^NN9 z!Wm?%iaSPBeEioKp}y3zMH_ThFQ8wfWz?PUDJh%aaH3{@ydd?Ur#!cwojgO^x& zzrV>b8FuQBe!rq7a(#7c86Y&tr}k!vqCGG|h-%qdWo6LT|}ToqAar^V*- zk$8T^bMbr8TXF7ay0j`^ak#M3aURn_BTk7e?#W4~vBDNlLWYeanMwgH(G-0v>6{@{ zwin@W@m$#E)I-@`L@B|x6UJ(L3BPg6s_hP^WK>&=XBjILBz``{uL1FpwyY(R6mBf7Pc1(uRD<@0I;Zi~DA%cBNsaMBBFSkObQ^glJ zF2nXKsaU>B;fktqc;OIy+#V!{|Ns4u@D)|z??gOJPgUjOXbZ1*3wL&S#<(brN^__R zihCDwY0#9X^2I@dyE-<*ppk@O6`*Ut^+dfJsW$?(Z1xO0s&aSdpNHQbQIREPdP*Qo&@R=FwCK0NURB*_E%qLsjxD3pQIZ<0dP}91kOl~YR?)`on<9R~@flx# z1-t|WZ4!FTOL?=NZs1TXFFcrZ;BE1*qskqJgat zC5^#4RMHfBFVTb3l8rt?n00bSD^|ma`7ABhxt^$Vqz?4hXW^9^|HaU8@S*kC6;F6;XtYesl%;Q<18s;85@TbP8zVkCW3TYT$fvTXm3*=rOTpD|^;lYV;V7{Ss z|9uY5n1s$R#;68fMp5MbB(vw3qAO^&wsb>6INQzsL#r^p4aFTV|_wrP1$1jiQvMX9v7L}i*P5Fho5_4}R z=2+;nK#H|r_@%qk9c()+dFt-t>Df9uJ(BYpv7)w8b6=*0wX)P(rk(Ba%iPb?kTJzB ziNq37|JkdRMFqb<;hZuy7W&<@H*eulTmBiz4{-8Y{K|;0K?OXr97oV$a$-IZs>W>c z3FTgGU3!&0G9Tp3jA?38u$&H46Y{|jU5HPg-WHpqVH`XJKe=~!C}HNc+_AXbo+z)M zvvJ*q@Gwur3YJ52bz{DLLcAUhtK-SBSP>Hc;n1_8ZO7sTjZh-hH*ed#J3PX1D|C3v z;f4qb`$%Frxa?T0pS5NC`t$0$&)JFm?Fx@_;tDoHB(|{v6+h~riZG8RhEq|``vvQE z#)5o|bMAv+qvAFs@8g_k&Tg$`H9$`eMz1;u_T+05Y7Y;B=)F}5-B3DK81EyGiW zn3lD&g5+OLc{bfP&ZhU#h4pG}oZ70-!hg-J0k3dSh7DP07_SJHB}INE$?W2B7@*hc zbKq`b;h67RzsjMfiNu2ogkaboRY;nNt2mKbV*xZX#qP_4sN9N2psbak4^aOrA!B+toXS7g(JA5JF z4UWoaU^?4X#Fz9NDb3HcKVHG!tMM=Mizn|5Z*sy4Be9pCqQ?SMNMgdhSvX$4-$Z3Z zwZuEkytDHyj?0+6rsxJ+A|=>c31f$w483{o6K{p^HYa6tA43erq$AARiD41W<03|G zL#gR6;T=xOC_=@Gb;3jXi*WBGj&_E-tWgu^S^Y2(3GZ@ZMh$cYD@PBN^aOo3q3lP} zHR*df=h59kT|USe6a*oVZ=Jc+AbYLo40Y!!RoIK*;v%WL@u zrYGY2Nu&YHCHUstd=3Bcuf6aA2WHey#Wt7%k`n8KV)>v{ufy?=w=zHEtQ9OOH9e1Q zFb^dy!9Gk_>O-0{Q?rd}y!+{x@%oSyU(z3?G{-P)z~Ba<@G%$9>E+WF5X(YYMvRY> zaU2+fr}=xhd8IY!Q#o2SpK$U8h%jP&8Pu~B4E}H_MCtk@)5X@&?ltMw`U#2*x6ELsX;A`z(J^eL&#UUA)QGDYlP>6~5 zRr1(1PPRj{(VS`3>=_qadKbPn4$h++&qERu?(4*{UsU5nJ?DVa3*T^BM!%@o22(&% zVttdWtAkbfmf>3t%IHv*trCKKTab$36Tah++aduYYPLtU?0ATO5$3zZ&^k?n9`ZWZ zrQP_waX>>xObH3}eS%nMZ46rY$NF4jy4?&vaLfvmON}Iqn!Zd)Lxdlaz$!3-#g5ZX zsZE@AN;2Jk>e*2V_*f zA;ky{$^Vw}v@v=(PF>qo-@I%6IXlDe#sOGNE3LAI0KX@IPJpx`5GN&A?XkbqJ2*EU z{@}Q+_{9+)Xh6rn13xQiD;a-eGFbCxT8;UOYq&dgx)uK9+>COJ5e-+;kp7>k&u*e& zvsTo7PF}-boRHDCrl^Lf$O!URLXHB2>l?hAY91%I?N2`EvdfNXhrc;;JAQLSVGarz zd+>+0Ko`}OlD{)0?6bUqVBUgB=Un)Q;}71%PFjNfld#JHHrs|3^DhUi!H-7dZ@{-k z0jd6*s?0)aAl**D$zycE;Xh8u=yr!RFIN)kzeKT-;o@H84dvOG>xD}lt6gy!{Vrn0 zdQno4{G}lj+welCv0$Ezsrhgjmp={U5#_Yxsb_rG&Xiwjby*TvyZv)>J{2zKh>Stq zqgp;ZL?LD5^1?)8wHA8V$=DB9a7;!cN>L3`krCvIgj^PR!L%`4$)z)9Y6F!C@uhiX zYFb^wo?Nq1=k`wWR2ACNH)r;nf_HF>NThH7&Me zuTEKZF0s_`EWv!O-KpbYq}f)zdD2PvZ%w#{lg`C&j;d7FA(>F=a|{($BCg3qu%)DC z724A?{ctU(W(=r98lYmEuy7H13Kae*To?!W6eD#Plgg5_+Olz4}c zM@!YKe7)Xj!JfG8I4F;7JP$=Fp{_?1tD$Y}eZU*WPLCrd9pRtz-_iVZXd!Co`5}wwoJuwwG*(O8(LGbaQ&wv7)sm? zm^gmm-eQm4E#`21eF76WTDwPjLNY!u6=KyLA|>8Y^c@kQP!%33emGXm{eq|Ah&2y@XXx$>@j&ddosa zgkwp#G6?L)Fhf9z9p``(@$+SBiDp&hj?AJ<_{I`$;2i}sUcyaWIHR9uwAic_U&_Z* znV#=x0d{8j?f`m_o4R~P!7MQ(B_qnsNU4mrZ8*-t%^i|aoxF#r_7@Zq<`%^83(qzB zGqqXV^fe!D>5L4U#NwHLp&;>FNxW(QhK<)V;npsG%IL2f$OqUYK_UsI0*K_iB8FAWhr_rpFt_XP9ltL04qqC{`K0EVU0sF z+CXUmDn^&^$rPrQ(_5Ger?_NB?H?!|#Fyr&)I0{7oFK$@rCocrV`x{LfSl&E&G_9B zjd;}lHSR@=x=O`un2H-fIXO8n>9kG#b@)xN_Qh3`(>(_tj4Vw_0^TTANIFuR^#=*{2)zOdFo8PljGog#mbl*C#mmOT2b@^-ayILlcXX11bR zrW9~3(bki8IC2(`RO9qk4Td6?0$|kO7TvJHkr|b&&@gBbEK7>Kkz^V$D*YZ#qM}3Z zaBdJbId?6KedWVAQmA~tvYeP_lgW{7uD7p=+iX!B`(ZeRbDWl8IHtG;tLg}|nV9PV zL(8h(#C$u{xrL!_uJ&-Q(=t9|#W-7{CE|G`@-t$X#y1?8eViP&ICA6Y;w))cCQIRB zs&ul@TUSJ%61M%%(WeN#eMR)CVaNX*eX7vsuZTV^?EIgjPZN3<(OfG^7A}1)U2Fou zLmFYXV>7DO5DU4aCET7Bb9#EXz>)u}s&%^17p{mtBXCo7JaPHILZ2b@ortzV#>BZb z0WW6_tBjp~y+0A|?AW!V8xtqqF@Ee5Jt#R5??R&asN>sL4Vc|?;jYfga0(20^~zL) zxEm4da`Be)6sufF74Gh+jBH84GNnLSPRu%)bV;Y$cA$wpT=#HPhSzRL zHKm9E4FYH-V-&zXk5-s)@fv@4= zV4xyc2#VSwm1c&nh~;qI;O(nn%8?ljThR@ufNP01O&YE8g@sx&DQBFLVU;7A0X({d z+Z3j&fcvvj;Vohm3>Ue4Mkb2LMk#_#YKgU%EY2d+9uByIxRGhrNg3wfkWE@qMvyr| zjse7-mAmG#8?rUITbC1TqRrBAXolO+r7U+I8YZk{beRnLE_Ex5Tqkwh&yC)n+j7FZ zC*o}U=7`!aAxnb-LsXT5iN>WQN^&z+$3%kg04Bq+YjOLeQED5D>`fHL^0(wjU z4Yh?Xy&5LmvIThd8jNX>>{!BpUP}T&w!h7u~>MC6EjLtu??tz zq{O->S?ovGcW1kSS32MkhqGI_vjM?yFXv@UF7Q%PH}IYaC>V2?q`3Dc_egNDDZ!4e z&M)Gb(W$BSfjWM|htWg0kJC5d7e}-d=@?morJ~~Bm;6^aCl)(S34a zrqP?RRk`pW*Uo4oDWd6@L`S$yMt8L_&40$(&}`>qa2^n?-UBgFM@@jsE;O<)=h75&eq#%`b&6>BQv(R zDORkL9@1Zgdn|EB7>;L+r`prDWxHQ3k0+fY z<^JBZE%I0|G>td2d-Wb%4(M&4;P{N$i)0M0z!FW-pGbPCIwOsAb3Dn32Une=j37@Y zmnkFit#Vave;dzeC z@T@Abm8b$qNu=kKbbXL2#}Ilmt=ZXl4&en(%;@=s?5d3C5DGzoUq~m$`g~t*F?kzE`EhdO2CFfg2mW#SQHSBH^%hZ*N=}39oQqMt6xFPK%RC z!k|MnMSdm8biFjE+i}UKesM3n%7LehEF@GH&dG4khl)ZW#YHEa>g?8l9gO2Nc*iyHjX3WZ8w@m z;cYISk?hhj#uQ)DZ>KcYq|A|~ED$+L-7I%3l9 zp&&6Um~8dXH_Y>d=DVDmVOMEo%D4(F6&3&8;un*6d!V&7xeME4=ke$#j*~e*!v#_3 zSPF{ZpsZ5xUZ&v2C~-GeYL)3%IS}6GN!fuI%XGpnw2a+TR;;j;r1vvP975@z>^0l% zT4T*b{o?uX0mo-_(jM6g!b4F?s1FL|h6N6nbh`cUp>a?i*-##eQbK*0DD(C3z>Qf+ z=B4bEf&dsQT9=TdCqLfgdC5m=J`IQaC?984S<_fFr;TtYL z{vLV?NcEe_fLBj!NbT~>&9|J8Vd8k~!OCq~f_Q->1}yhks3g?)iJ~)v`?%?4GEdA5_K)HqQQZzy{J@zRHiOGp zNqUGrhq9>fKO~+uaH_4-e0B3j4$QEDhg5Tl2=HS9*j@|oA)JRlaY9CW9qv4A&Is{S zB53DzTKlnKoqM;Ma3aBdI2nHCpp2Tq_*QI7g~a+fS*7yg3AgYIha6maQAB`W4geOp zCj6^I1W-hPUlYJJ;c0B)!;(Sxjf>at(`D>1O@fjH}4IXFKO35FY681bAl+aS)Z103W zIX$C4P-LSjkd#FFGfBsTwBkwmosIqL?4F^&IR8$gb3Z6)=@|SWzCm&9UmT_GuS^~N z)WvKhbYb~)TH$Y=l8pXd(JciEw0lWQw7-)^$ITQDx&>^t3jc6OMzumL(^qWC{*$t7 z0h28(2|)Eb(51j;!QR?U`B`k zIByGnb3}`)2*oe9ytI<>Unavm4?Gtbu$jf4Iz$m(3SQ~BFDRqJ4p|&>C7~`2LF*CY zET7Mv&xFf3C8I=_xCcx_`j@3XHyF6%V?M47(G!aAQ135r6UgP9n6bgYrK~(XG)!2@ zxIB|V_ewlj6PhQl30H7t##CtVObrzzenpCN1WOhJM(dewug|5Ja3zOiw5uT&M@dV# zD-(Bp;08Q@y!ds0H%x}BI5T6T#3+BFR7Jlk=}Q-%N-H8)b9{!uQ>=X0$1H+0c?wa{ zuTDB=NX2qoyEoNF??U4%T*J{B&c;F__A|a>SW*=Cn&i@OfS-G^TaQleYdI~)3NM`8 z5|H?{DbA^Mdh~X$z3?2ajWU89CJ44^wWk(q@sDubaUdyb?8eG6f?SV~ z!;zDPz&8@tM0*a45S(yg279>E&cZK^=sKlgI0ei=bU|^iPcDZV+n|pvgl|A$_QcWU5MAh4Fl&V)9gxuzr`VR0K_#J%B8p4b$q63aUARped(~&d(T>ZQ z`&SeUTKP%R6!;i|`O!AvSaa*bZrEFkYZRDQO?LN(8#+2;fozHz=!N#i!F#x*$TuRn zY?pDsox+LXRgTOkT$y5)Q3aBcNXL>?wtUdN#GyGH=d6q#TE>pC6mTukZcG|`3!fOb zE)F+wPDXR~hz9ad>tZ2}SB78|*y9<>UikTAC*hHE2mbf%@ffN3ossQuAWh|J#IAvrXeP_%;;20)%<1-b@ImyK2U=>%g(F zC?VxDsC*=pIr-(?==hHw>|PD`JK+*rPK$2qw2WzrbfSo5M?YFBtyJ8Osi-)=uv%7! z11G?!ug`S5d&BKL5gE3iySt3vwOoGotV?jrkDmS%ZPEN z7?XHAb#h`ZZUbC94nr}Gp#WO8`w-WWQSIvHG3=h@kVEL|Af&9UCuWF!F^vtIGhu_% z{ulOzX$riNVEmVE5Q{>9Oub69}z|jCh^uF>cs|F zgt1d(sJ@bPHj|XPee?ti*fx5OlQWupX<;lzm+)o^vp3c=B3SrKe+}n4A)_}|e5*AI z6k_6?M;=FJT(rVD5N`R!HkQ^7+ex~`fon$>rVAL+Lxr4>TZyDeoH}mU!mywFp%=C} zFJo*QG6cAiP}_-O3s1k?Y0P79(GJICc%O%0Oht(EiJ)PK?k>zXS%SPEz18T1oz6LP zbnz9@t^A5$QWI|%d7Qk*&D!L}zj2=yTux!PQ!^T3A!5`bSkV-F583Pi(nBZk{o~^F zI?h(%2jKz-XJmKCvndrdAulA7l|`K^dUd?i1Ve~DLiA*1SgDF_xl}+>V%Pdum=?&_?J6@`Jxr$mIfn-FRP-4^WBaCb*! z40A)W(=i!A>V$Biy}ln_@zyjZfIS*Qc&;3`{nB50UTZPj!kVVcCS>$h^pRKFP}osi+j8TecjkaUaE?5@(H8ZN%Y z8&FfOp3z+mS&lOmA*PAo_~Kqqe6W+(*sio02W8Z7k8j_{L#`%Zn?NtFUK`hdT;!bb zi;Du1-b-mSNYHLDpTrhS_~kLV;Vq0|)+y_d-4T`m8;vPgZah@d6LgNy(l=`2#($h| zbJ)RsBU2HgO9U(OL~oK;{NnTo&Al-1kc=jq;&N+DRYsJHNuejSVkvwsI?irX|)r$x5@L ze$x&$h52wV2W6~vl&o7)sm2@pO+nQCl`#2$^%!b^rEg^yKE08-uuvd!yru#W4 z$8dmQ!?!i!1Ytl*sQVLjOV$HidDg~Na!s6NF{fI5$PdFGE|Ko-Z-wcp{j5T!V=c~JcuCEMYr17UAsd=0^2U(h}^^gwcnT8YB99U6ya_TaA7%JjSsZlaV2f zdWfd*k0qX?zh4iIVRC;8gvU8J;}g3=tWTBS z%UOrg%1leJXA4&D$2iu7=Qu3GTwkddqndEfB@X{3UmNF79R7N6YD_NHxkk=SiT1Pb zJWs#{tR*X7L=}B&ikntF27kB|qI5l<>7uEXrlS2eJ`ZgD@B&XnhS@M=9xEY%UPur> zF3hrYy-B=HJiN$B8EveHZFQ*#MlsP|Od99^Y2Id6;)L)LM`c+0L#BLDMv#{h!tpm{ zKQ0V&9~0JvU*@Qc#o3C0Wvud(C@JjAiRB2a$@{KW{{lK`Hy#MDaB4w0h77||#vAfOUt!A%r@LBkk z5e=nKFmMqp1Vw!r8o%(Alj%UWnZn-r$Uk zT{0`~4@!!nzL8Wm2fi}FWg9E@@FwSFY$vNcP~jRPyqN@>-N-_MPdvQE0U7hcWrk1a z2=Z1!(s$wYHM||=ZH^f4yQKJ%emkY<8%V8wvNetOkb2=AE}xNuAw5RY5$2u5u$YoR zEPB%3<&X?7#}H4NsR;3IBDm$oSH<4r@+acQBbo_gSp!jY>Ash`w!Hl~ zQoqk3Yez$t^HRH@svqs6s+HLFS@eUK!MPsPrd zw9V#2j>_m$m)&L)#YFosX{-keSmNUPd571le#A)`?a^Xdj>;MWe3SqV64+Jjj~iotdEn$k0cKj_UUoAQTT*|GCq$eZ{A#-PJM*Wj01HAgLC+KGhHCuS#bXfSD z1J|M;MzrRUht0(MJbAV)Cat`;dl(`2hA%iRqpoNHC>Ci&NSrT{!!KBD$;A$meG`ke zDfdfG%P_r%Z^|vyg#0p*EXve9V<$e|WaoyguQ)EFeh%r}T}h~~62;{jZPSSdlr2Zuvx4&r8B$7MvkQiZ2tuuWvX7ry8E8AibzrqhgSc~QW0MEO1`te{vNhUd`U%E5tpSk^yq zP{w?Pv15S^$cXbpa!PZ($?n3uZJGU%V=@}~khz|O1p2Wuq)nd-vyJ_BuIDFC%5WMe zwq;5INs0ASvS^l+s!3e2Z+Ea8{AUi#7!xEhSnUcuQGY&|Lv)sFaPjH>@CyeXYz`$Q z)-TCo4NtfBaCZJHr({?PDW2u3(2)GEDbI$h8&lBEw&3a&IMruya3TE0QD@o0czsDaG5$MeWjMna&p3sEw0}=+wkY0}#7pdJ`&+HOlXzsAjY0tLxyYIAPWB7-YGludZN0nVksDBbg0~!kg?Ya2A7*>Mp0>ythEMrEX_?Alr zFn>;B;{BUE4%_+_YpEjs$BAo47pxR2#Il^2|0R>vM~2&M>j2yxctH)9jbxu@Q)I&_ zkd#EaGz9&~DRv9DTD6Vw{=wb+dz{l=#;JQoXOg>MqYwtnIXqKiqLzl@pO!F`p35>l z)hSDSiRW^jhKzbNbiBYJ4)&WOU7jSfi_k37&BWa~uC3c?$8ZG)W^@j8^Oly(iXfIr zTvFsKl1$?T|1#4$P{V)tTey+~Gi(Y)we1dN89}Zr$o^JiFJG3zT>HRcxQatEEF?v> zkEej?h;mg@%+rc#auX*4u!R{rnQ?Fl8&a<3tc=#kbv_6fD*e4ICg9ZxG?UCroD(8k z^?i+TXvGIIU=fUBqFs|T){*i?S$iaV4p%u&hHE)9!@*i;#9S8P9&Uod!`r4Q^tFjT z3h3dD=Kr>C*}NfK$NB$18m2Lnp2L_PR@!7{aztA^5U%Sf$f&eKEYv6?$n^-J%_wsP z-7GKbq^}nHfev?A#{6tR!oKss&!Vj0*C*UM`fk(q3T)^$cVo}MF56UhgtONoeIrIt zO$QCCKv_=A8<5EZ4>*FpfJ%I%Q%)I88CZ0T5>h^j%4{fl8Tq8s(7@=-I@%c-J?W6Q zf+nOS)GfO+s!etmG!MR_hTt5W6EhqY zL+WEiO~_-3WLwl)%tkx(Qr+u$oRc%o5KG8%s=yFcrQpU)0lh%5c(BuaqPDryU$bsU zxQRnE%t^&Hr~*+)oa4!1tw~N5G|y(Ev#-$$H+51*tr_ByaV4Q{Mie`g^vms@`9W^( zoQw`-2q(%2atlH@KFK2BZF1PY$R*xzOGjnY6$!+`D_wY()I_`$iTqMq8_n&zY8zS; z3)8zWF}$_IGV*2qoj6KVWkgv`3a2*iA8q$`wQvd=H^J=YeMdFNWmqpRVwv+$RZ{2^ zh^GBrazf4R#X(9`k`tYpF{v-bH*P7M^n^T#NE(H7b>m(#OmG(Mu+$poWvtIs9Ofkz zQBEd>^In+B9FHek`@$&>7;h0P#h3J{l=eNr4Q!PQr@3;*jC#NoMgd9RhSFTHK!cvf zn_0M(6)%yU?&=w}O)=FkxQrNQkipF+#gk`gmKkpApp0%|=#ytjNvzwE#THAuhX?h{ zG>Y?(aC@g^v{(sPwiGC-iFgMR%f7^T#o8U6m0>B%eV8h8bS#>VC})y#Eb=wDixED^ z;{F-i=d#wx8CKn(Tui~hw#+3ArD`2h#V#EACP%CtjgW$26e!Dy zc{Z6`%0*X!o$OfJILA2|SwSpAD7IubQ`YXxn5#{}ps`~==elx6M^U;0NCFZ+kK*h^ z2lkMLEe^;q(n^sn3#Bl|4eyn<62=aXF2LA$w>c)GE3LQ?Exxj`oyzQ`txuc^yqtH3 zOOL;-U%u{on%??5Of5& z8zJmnlS2a^CvB|@cXv`o?>fXcQb-9_C+ujzIMgMd^M>tPH&@>ixrcKzrqEKd3@QNf z5?Q68!8DkY0257IWdk1#cB6#}hh}^@W;WIe`-MaT_MmU_)@^RD{(bJp!#w|@7=o%M6~Y&$PZIWWWZBN-zqutZbzY0_z7$18kl z_#?oh+U8pbGmgzzCQ0#)x>QTJHgTNuX&$<17Vp{e_~Jzl%c!J^Z8QZWCDvZCa0n0= z64&PT@>1q{|B^84tcV9OoQ#)%%_4(e)J$IB@OgY`K5|J;Zy{qnwb7MB3^@awXu)wsD+EyD~0u z>RF?ysvUz>r6efsJ;|lRF|J#NdpRe=7#MIkMhPk3o60mbrf0i2qR;<_`?z|BVP^3x z3x$Hj?@Mu78p-2>!&~=r?TnNUaTLw^bvE~>`0)_;mQb@RGNwa!Z@tyo*ACqd7qZf_ z#seI@6LFU5Ib3R)d;C`bD9;aMvN)JV`x$dH+PdLEj?WnBQdBF|ii{u+CWKalCm0Tv zP`Bi9GKyV%tyXx5GdCZ6mY3=(5f5b|_;shXw>3P>i5asVixz8+1SI`%Nn@@x6(7TS zgiD{ed}iQd4S3%5gwj+kMwjp-DNGX~oo3~MhkEp|*Wu@YpFKRvK^Z={BxAW)R#Nas z6V915lE(>qc#NZJW95mFCHh#3mK?Ha57OgYI-|Y~X=hPJkjE23W5dsWrF~W53C_u| zY&>?X*?Q?NX$kg3!j1&2yr&2)}xHiS)d(+`*4$SB`88ebf64HM< z^=a%ZJu8Bjv7h0bj1jC*Fj^7R;gkM^sLv#ookgp&fUV5jRP!uHWw?O{1~FHW{Y#XIU8Q#+>F^0O3}PbhE*UbiS$a6*s5?{@5T0ZU3irl>L? zb_B2&?BYLO*o>>Q-sGvtXrYR0sZbyaiSuT1Sc{_D5cdd#w>TnW3b4f62nA`smD+3z zsYAlq3@mG4sq<}4$jHQy-b_LQy`3PsUv$JhI~N|H_)Y?? zn{G^W8lBE!d>Ask%V8Of9IxocxCZl(Jr60+y9r_us$Orz5Xu(vo^eQuY#;@al1T3r ziF@C<4pvVWtiI1l8AEkt<9ta)l=qXuFI8-g<=-Z7ziRk^gEGv?;TvtGCEN#zTLoMi z+!uK97k4IwfomYbha7$$etkrbGsIL_R#{2;Fq4uNpm2T#7eIf+ktd8sqV=j3TWraG zl(KZY_q%&ro!aJI8@F!?A9LjlzfO!8>tLZF{f|>WI*y7Z((nlfWQ+yNuC$8rNivQ? z9^&DEc-W@4GwzB`uTq3hIdaSB(y9nq)+#@#N-G(kW-`iMZrZ{787F7-R_bN-v8?Zo zLgIXu99v^pz{?jsjIT7Bx(is7{G6jQjG`fXp$aL%K2I1OW#tLgR^0uAtq0)?j$1#v zOjn#qB}GxcNGj)y$#BEovVOhO?>54h9GTHW4l(;&NvJOqWmBejNqAuO314wcMyCY> zg*PGDCrf`f6(PP##0`-fz1-bHH#gg=^L!lk?M&i=qIv^s=wEYa#>7-wMpa`Bf!`h(92=Y@xIAMs(Vryz#`k2(C8$WZ_TIPG@ zdtRhq*;1e^C+5$|r1j;?0uyT*^@WA-3&&;j(;hk2IW1U3DWQHzRB}$X;)$H;1$5IG z?6CsPSA@c^9GbCRmCns5W7Hxzpep{a$&cT#(XZ{QZ{D?O^QP_LH_psh2WHJsFIo~2 z;|BIbr;sXP;#MuJpsAna9Z;`Y`!t_=l@!l$0XdH&Gz{Dbhbl!hfYzkVa_EVD27Q zLTuL{?i8P(@8w@k-+>s*^bWq9vdsF=vhqsOznLVOTE*FvN$l+0Kf`J0e>@2*tn137 zQ3zNO6hYS$^S@-$`iYy4v0mE2dgP^UqAficwcj@J#`<3t5#iF%iuP4+wzhNKwhi^x z^kle<6LMVAh-n$=l_aEpS?aUO`&w_i1FNbZF6W4hKGq`}$3sy{sLKl#cN)dhU-<0d z3XaO~5tJhvt^5P1iFQTO_-Q;fa9e~cIV!`E>oKdjf{q|pCWKoi{8#H((wepNRaknz ziqkSY`YutWl?8>pDzTh(rmhB8tj~t4IV_{r4e6sOBEZ!Npb4Y-6c$q9C$J0ouHl>v z6Gri4o{}%E5EJj3kGEk|XTFfmRVNy;*UT$>P@FgnzPK5YxO2+eNe z4KLSm)>{0^GM$uq2q{>$6e!Dyc^H|jAZbMj`%N(GggG&bYk>RVx(?0oxeP8XRkcLC z9*IYQ=p8Bs=K0tw<2F^kkmk@87SKHQGTm`iQ}F8(PJ7^@dEB*)qrtdok+#zjj?9=3 zT3jpHs)`^tP!3Tb>A0JD2=$iVOgPeU8Izzw#h68~Dk}O>q|;-|eONXAFC6W-HTe06 zs$BEBrmGJrIRwoks+%C6cON71kiR*;|*4ydw5#{7WJ*2lJQZ7j8?8B z)M}zQgy`UkHQ!KkPR4+*s8((Yn2snXkV2~>?GClKu)>KB$>`ovOkfY*jRD1~ubOu3e z&vv8(UYUN~H;9JYIxMIDm+yzMb4P`eXtyJcO-HV8E3~@d_KwQ1;_E3+1Jg};?3Bq$NE; zHxkO~JlAN?HXHMt^W%?R*yOy78m7pGQy?jcbT&!sVNs~~Cl+2~-*h;~IT>@&(swB& z1lUZ#WdUe(7Q?wNJHCes@uhhlHMxDaJ8=>AdWS78n~~Z9$5)h)@>VLdD)~X7nXt{( zGpf?Sj&2?`@`r1-Q=I*?j+){Q*TpsVzp%q0851zYw-2j8A*RfnPhR@AX}?2bq8D~L zDr5A-x3#FT%KE+u=!mk56b=D#sUz@HOz_An8L zL)&kp;$PtC#r~ou=42Om0@jaCfNL1sLls4VFC^H?Sk1Z9?bpNqIWJ?_S*Bm0kT7>5 zW@yzpCEVFrhg@||5$`VIxubo7llNJ^a&uSbWmv5q-^$WMt|s8!2)qTp&EQyHIkekb zoiaCc9~-9~@YL0L=A;18E&DV24ml2hSiCncjv4Y3uIjxY^k z(l|M9fC&eTH%?k?$u=oVYeILiaH3*6pe9{D!vemwVrm?e zM>dv+qLfh6M3o$86Rp;Km~l+TglEW9gdzg81<)8djhhQDazKWEU~q(lfW-GwoF8R= z?{qv40m~Wdzl|{Kgp7}(*j7*qU^F%R5E***p&?Uh9vpp`5 zhFH7ioscnrmWs+1B!4mGeRQ5~%wZc$7)N|ybT$Qv_b8qkU3}5I@6zKnI*TpY15 zz!x5QPhT4!A2xhgnD2*uPRQuGlYo8UAz}jVCy<4NlEe)FcDwBX=VaJjr7w`;OL~#g zbd%v%`tg4IOI-Ox{Cvd7UQ&+HC45f`v+V5y@qo|0TsI@d1D_S~C46rRvm4S5z3u3( zx!3PLuAgB@E3y^60!c}v`;tUI9Ns9!7U_8Gmmj$f%excq=e)J}oe|}fBn&rHPSE=k zT3ru;f%gDsWsFANsT$2gB?Iq)gp?dg@Bq(*2RS37*BCOdrigO!U;?n{R`PB)eV-^U zD#H6S6WEjxFC=`3gLf=nkfR*k%gQTB4`q`0HPfC*xH52&*BsVL+B|CUFi*tVrXs}S ziKy20#qb0t9CU5>$?FrB0uF>H9XjBEa`0pV=&`_~tk`ednXILqglEw(dWw@WJQl8C zU)w_^JwcyJC|9V;8{S}laD5h=M{vXX(;S?!)uvF16|D%Ho5EFve>(Bk1|F8Q`F43- zKy(&A!?_t_tYSr~hx8ZWo=IG#-^F`u;aN^P_ow;=(K3| z;aot{&sF+udl7dgZP>gsJkQlL)@_DtOoE00&nMu9NIQCnc&xs3pcdm}AGaOwNbL(8 zxq@TBHI`ep^rO0kvJ&z_CWPjfk8Jh2d+%Q4^tJen5reV|Sdn_DkQ4I7MA}^4@5jSv z%ENs9@De9xR7RcuGN1x{U^|M5_fqm$_dQM8tq@)|4$h-jGbl0PUQQh6z-e6LAFyb{ zE1Z>4`-hB)Nk^Dh5>s)k@alu`DyJO0V}(M(yqXxgCvn?pc#Vr^7@dQD#HO$Ly_T9Z z9?HE|amUB&oU#GGGoscN5=%QmmsDn6PcU6^@Cm~4W%pxZg4dYke&RL#1#GYmZ*Y3X zGP-nP4O~`K{5O(+EckQ2HiM#-7oIFeqoq8T{cAhEnxrriwFcOh3$* z$z6l?p37T25g9XV#g46GKuWB)lEub>MWOf}Ts%eiHYa6FH$1MPJY-4&y`3O)dc+;6 z%?3J!cQ_@(Oc}DAND%?vNdVhlTGVOct6|pqE=OdnSf;3!jf#vQ?r0Z3Fz*#6IePZC;(I>t8wWGQNtASic|S2F>(pNE3m?CX{uJ7nEU?=-|)r5r<_sbt+e!B?YN}l|j!m`X{N*@z~$z zz>_(6$!4(^KIM#z;oqYh$U_nn?$gQ)Iw*P`Y`XOs2W1$FCAW+OB>q{7^W&7R>)Nt; z+s1hN*XNwF7QZrLB$I;WMgiRZ<#J+vo=o=Fj2gb;q>OP$u`N>yNJ^})lEoEL+y%lT zDqnNL_$#DQLdsvKGTn>ztRMe(O8ADWXEdFGhXGAN;@?~%erovEA&Q?W@o!Vy+$%g& z!AZ}~jc14NxctFQdY~b|cbBC8oTP_$rh;w=gYzqGZ>?M0!mm{J@cS z#;=cPm4zC-MLF-36d+BOVsr`roWgXFz_U4r35ex}ljsHbX!`RD{qPIt ztgwYwPDNL-9C-*ORMr&ymxQxRO;`Bg*Vxm;p8J(UGYr!q7XZ4FP`@UMqhGnd?ak8l z^c!cb#lMfJm@9SPCMV!;2|Nmd8dJ`}YcLzyQ&aKIY}^5WS0LsXT5 z-!lcQqw|Z+*@C1*{1ItCh1mpWd@rZVP>Ln>sH5#-WP zv+2*&0{r-`x?R-?&sdG#o69&Vqm2&=Shfa#2vw0UOEQfI9Ji>+^%E}V$PBZJF%46e zkpAVV&v7TMPoM%`VI1)x%NkSevQdeq5jsjp`Kn4jHfCd^Y}#8EuI7M@W5MNFshdysZ5&#uj`n#_>E;s)9oG!SaycU z33)vt4~JkJx~ex0Hg6LSck0H`)RKmAOJTopuz4GyuTQi&9JMD9R}#--(IXt;(2Nha zj6XhU33da*jz$*X^P+vmtwS~3E7GrH?`flh3F0J{>yLEsmeIK_D_M5SKNyr&I*wvG zIG9>f?sjMKCdAx)z2B|FOBRlHeuitRP%wHCECfY8hE#s#G<4uVV{5jC4i>j;;BVoE z&dnGTDjKnV#W8O{Rqz`T&TbWVTQ_ZYLT$P^8CE$n!=x^v#=Mr5#5tB6eq!u}=TRn(P~8#5^!rqH`_|3I@FZsOdN@beMPm(dL7 z@uhq`m2Jf^y*mf5S{>b0Y-%v1)9d6nb=%0!82aNIIwv|d$5B-FHMoWdCy~H)I=S!cX2t45dTSh)u}&u)tLF+V6&3$v@@dTC z)S_MLV2duNI5ER#Q#$YH3X(sS@*M4zlJ&MOk8O7w4}{a4k}<84KqX%#H4$$^B0pJr zbt(Q4PIp#@g_xomsv;xE8H5ZpJuE_^>D|^jhtl*+OR(D!#`#*>ackQ@Ztt9o`Pz`J zx)c%M4g^%ZpG2 zZHLF>s(#qys0`zK;QV=%ko?({=R~4`qx-bWc-eDrfxAe~aY#nRRdmab09v2Yl*g%H1nd^mSgPC z#0KApY+OXTxvJG)Yv@(;l1Z0UT zNqd+i76!KVaiq?lGG$|^!MiJ*~W4~0y%L$A-N`J^*4 zD#O4VBN7p!MFh`r@N_)eW0-RF6Y=8_ZMpK^A)`xonz}T-QUk*u>AJWX*Uy-24{55d zBvhNIv;fE(-sY#nMb5~`LuoTbj4t856y`AOmqDj94wGTl0U4_{ORs~Lj!1JP@k85= z5bm779fPC}ktS-w-7P=n`-Q0EKHNzHd_BA8=_a8vMMoG8%lLVs*C&Rz*d> zSlLSrKE7Wcf+I7G{UM!Nlo6yy2zwRpU2%Fb^qrCMp*&`_mxhiY3xr$|5I*(PnC*pq zuAkGPaLou8F(r>m(vbFkY99{mw56woCt6#LP@jPx0*|AG1CGi#5$zh56%SPu1zsfB zx|t?DRNVKBSER!w&daEM)6Ho0J>-$CWcW$6=KUA_Cl(09pY4Y!4huaOTzHtKs)^RE7oM681qnR2CHW{>0KC zZ_iEB>tV~&J$lY3!vma|VdyBnAr)X(g4g5I6qaRD^h}5S&1@`gpr;0k@_+&Jh`&t-G&B!xLOSqt{+~ZiX5HJdpraVw+!1aihhPTs>p@H*gY`0+N2R(mv6f zp~aCDo%_D-D9gkJ~q*YGT-W*8qSYAnaHj3Cb@ zq%@_8qug_xkd`d} zaja}&TuHu^k~cu?VrdC>PTFB$x2A`eIVHm(Q^**s2o9)<|8nwKVCd|)#Q_tw@CpZJ zI8aNSWQs58S5lgT%Uo|?6Am8Eb-TT(8EkokpW{^y$?*Os14D@-UseqD1ryv~U$oUZkl%j^s(^aOo9p|njKE&3$k zt%4Wl4bIBwx>H2USxH2IHxhvV{G!EP;{cc4aLfr?7aG`V)$U-As@^YplcO(0oDnvH z?p%y|mID1~MT*k)W~QxVm?K&J@D@)&M&^ffh7=Lttpu<&OwZQ#b>Pu$EQYtaenx9R zJj+%QU(#=9;u@V2-{YT%7N*XL^$MS(v}FdLeCo9u;`?Ni}1j?9>tdTc{_C}|1yS;AQT=J5st z-V<01pL0k?H$1TFDiNuFp6cu?vmG8k5&A26o`{&?ifJZfa#kuE? z&i9~{Wqk056@8`Vt4xjA(sA!wXzUMPb9BZ8R|SSs7&lIThlb?8PI;EAuAyzrHukT< znZ@u8hhz*4if#E)KvH6TlPubWaQWfQrv3Ff_)+*q+qWE*Q)`PiUCSbZd|MgvyA2y_ zCh+$8f$$xtWHdmJZ8`E#(h}^ugxvx;auaf3lXBdzT%Rd6r+v>;al!J{#^si=NQ(&t z&G{t|CGY!89=muHIDaud!1n`BL5BCG{FC5APF<)uS>>G9^Y6V zLfJ(%OQoiE&&s1N9 zt5odeq*Zo*Wm=Agc(wORW)yC|v=`w1 z=IO|odKF5Rk|M~ysw%8h{GF*_-S6Y_1ULzr@#%+uI5wm1GpYeA8Y29YgfuBwuzOAZ z<>KQ_3M{r{|4muWb)vn*2Og088aErKzlZ-g=e*J1uqtEOss5;>tTg$DDEQojQCmoS44LSQvGA5d#i$#~qj6+dW%bNnGBg$n-q4kr_3!>Vz zxpyyw%Q+~+svL6K(3OO`JW*U*M(2Wie-4BzI3c6P4Rjw#L)urQwsnKCHE-Tt(_g}s z9Fx%v!taPnKHA+_yPFbmH36?oAeTiJ7W6>rRh*O28zP#06pt?9t5TS)vvOTXxSES+ z%zRT+15{)Lxw=wsJ#K^V!C%7x<1gw^K+@NwG{hbwy5b*3K5fjxSAqHUbsd_qoG{!~QFtn@M+DbK z^ozK@Wezix!yS^*`;ksui!_ZeFI>Qo9xCL7Jc>y6c-YFpL6X` ze6rGpkcx^h#}IQIFmC7%OpMat-0n2P4IR9F`HZ?w){Ll7SAuS&e5c)vv8Su!4B#rq zXY}+#_CmUnP{$I*L2?t`m2O?w4SQ?2q+=^~W{2aPl~IfAn9F`fw~x9+O}rbE$IjTg zvwi~x;fzN8E)?K z8Lc_RwSuYY2y+W!XfCBUX|c{vhwx;5;sKy>M$!L59&?Xj!(4V0`YlDy@{PW=dEY-HCZoV_%~VYdh2&p0Up0(T(jPi3xWC zakNB=)X|LOop|9y=dHyrjOfsc_yd`hoQNlp$PO)CVaY%6AG}IyoR`tCQ*46`DhYKm zQC#@4hBh1TyFbM#8FMv@7&CYdf}>5n7WA%~m+g85v)yh;5)E7{x@p z4QU+hutNy0dH7#?d)xDSI!f;Xrc{|I2 z8D3e7YOsok5bKGc>o<9z`)w2cadI=d(Hj~1ymsZu`6u`!xaPByeAq(egJ^|qu7406gujEbox*go`HXKS z>~Q6i`HA}d`P-gw0uQ*Sg}qugOrIcgW}xHdl+QoF`4r~}Bo_l#Pu478871s=#0su( zAr#vRNC8Qygm#gYd`pc9?sVJjjPZO+7F)7=D9g@GGZ#D?+YJ}EbVfZ@OiR83lo8`X zGH8kT>;#RnkDWZd@P7`<7~ed)kvt?Z;qF8n`%|}7s{X)mXNP9=r!Hbp4^<_FzKhV& zpO#j+aHg(1XX`-Wu8uwj2^>-NqDZ_uKenD_WQD&Q@hoU{2v|ssq|3}+d2gY?=-@lZmp>l%_ zv?-*d#7>%W>%_4WC$ZzkPLq_jtKF5f@oINHE7?}c%-nv<%*@Qp%*@Qp?eCmBbMAX@ z_2eD7{r%BePtlyu%zFcO?%bKFnT;kLVP=V;*AceUunQx6&h@A8+X+>#WN3$2V2cF7khA$m`k|t`tb8zOy$uGB1F>3Kx6%~C%I$thqQ$HAK9wAeR z)@+9bCuj7=Wd&oGe<4Y67s=(6luOGNHHq_x_Qadeb~$xjMtMDbEU!OGPQ=|L@;$p1 zj>8pEl{@W?xIPx=u1>Sp0rw$ayak3iQ%xFJol)}sTIawg!?!!BVw#(DPUYs<-0Gz95t~6 z)dpJx^(-aI_+neDbuAMPKteLw}M1Y49a76&(ar5C}uAMQl z9(yHGLdp-PGP91+41x8{g&99CBd*^srWKgO+`}@Iq&0 zgxM*%vGl+J%(O&%5ou{0!1v^(D(&!M=d5lVkbuNrLU9_m@m#DkI}00V*lvrLro7ZC z83x3%L$<17BEF17ekLs0hhd95PI$A#D7@TZ8LzHLY%i~PG%c}Sq0)^7!2Vh%u6AHAL{zlbkzr0%47Cj88sT4VB6+<-G8}JAl+1^!j4*E?hU2@IzR_u7 zz*~qrbi*4Rwhn(Yp~tTAIIwRlap}r^$FU?GNvx73)+L*(Y0+N0Ur8%L4+h(vB zS{)8@q1T8&#OldB2%HUjyba5%)!w&vnMH~bjh?zD_4x+gZ8KSe2_ z-a!;^Y+HVK7CJ}_4V^akA0Q|-ywl-lPyTKum%wna@zIa`8WUDl-o>mOQ=1hY1*^GS zc(>;xV}sS+@=;b*Cf>tL(2Pn=wS^Ou5$)KYMZEc-hlt|$Iz3}Lm_*8Le_T-D_Yuso ziGF3c3)sK*@z&s~c)ugp;lEF6Fh%l+EuN#CfFB@`BM3J~ph?Z*S2Y@g|Tam+$L?2HUo!Ll9N=(wf*5o%kgW83_L;iImc;dE@JMN<3= z=e~=6jH0XwafIF0Sy&JA3`ggj)^BfTc)`aVvX`yCT5MT1$S%`UVLn0b6~Q%gs~f z-%?BVbIS20qd|YFy@)RG^RAnbV@qZ^b^%F$fzoCRj=F4X4D-NrpwpZWUvxx9FFPNT z8zlW)ND1~O!sv8OK|RxJPE8>}Uv^eTJF5u^awVa@LX?k#c8vd5ossd%#>T<&A^u;Z zbo$6Mqa{SrechE;_mM5Na{LX-a(GRL?si9^!;Z6yn4xbvAj7t-Il#B1CET}&<9x|V z+8yQF(EFQ#i-Wk9^w_O;kypXn1mM^(cCJY;aIXu5~(Tl z_lTy^puH03!aBzuqVRoZW>hgHw)(7xq$JW0NTPjL+VO)yV= z{uza%Nf+k3=+m$2R9O%Q*y;@F zw+O#7{GTXaYAf&@@-C)7yZ*kll_(>~UkJGd%3x^oDfe*P-+-s1hQB&$9sXj% z@Lveno?+VARXHL5MkEJqOguw8%etHTfxkO2V`ZEUb?!u7;wdM$&`nh_b)R<1t4K9HVF# z4qVAe84f;AZYY0}m~aOW$6=jq4_yj+jP_vnNc$uYbYzApR#{uDa^JHcIZa@*@SLn#r+FaQPB?}ofBZ)@CXmXOc(wRK8GtidEI2P6jJ4!ncSxXHl5~W*8Zlgx$0_Tuk*@CQIpa$8R9RDy?lq`uR!lrh z9PJRh91t*mO($fm%GcyyLIPcjp#4z*SW4~1;o5Mh12SgxrRgLSOY|^`a=_BTq;Rv~ zs%IP(gvEx#9gs18NWi|g9!hE=9wDNy4$i|JGZ(iD9O=Y$$kT+n?E;4Mr$SE1qln}u zvXi<)2SKIHK11=Y?YNA=f9#m=LPnUQiQ%LT@7fk^5FLWJ@x>9U+c8ec>6}vf*f%W` z6Yp5^mUR_4s%x-2brr`s^}p;YN}{4)hjfn6iZexzaxOOQb;5eC0oVe*7t%;_?~RZ~b2U_*33nEHG zGbjGA{@dY}PT9AiSwaHciXfUWZb;f8Vd2)!$#`j=*2?2grX4r-8zUjn2!c_BD-5LIRyh5NAhTS#7Vo z?I*$J`Li6CVF9>=mCm2ag2HYhmXj2|##R%v+BmbdAH&(Jp%w~;Ego&EY=WYmL#i!C z#xvkz3#~xPl~N^s2=A#Dx<&h)Z^8|v;^CxqG5bvlxf4- zqHP@*h3(GEsQsk@a$HET3kYMUU(D3)e1SVTCu6B>#rZjds?d3W}7L{KH)x zl`(NrdMlhB3Ni8SMxOcj5Vpwqf?X)VAMWn7j5^7nM@t=Bv7XYe1#1w-k2l)M*xQrg z$ee|X07F}|jc5|g4e#O5i~uUB7*h}9l43W>W}l^1s}0!hdnaDo7^WSXQBoy0s2*HP zv=(XXu6hG(V`)2J_1zT(q}rkCu~02WyjXjRwVTGE-&+bZ4$PSJ6=GJV;;~j+d6{Ki z=;JJ$)v{uHHz z+Ch|=c-jt(rTWlwPDX&m@*TyHkp4XN%WmQM<{tD2eFtRpAo2uTIrLyUq6|o(GlJ9q zxW9;T$Bh_K&<;b#Wi+vp2G?Fnk0nWwcam(&FY`D>bugTQ`)ROtHeiuCI5eY)q2IIQ zu~Lj{i8dmQYq1!gW^f+%?tWNs%1QYBgxPdySc}Oeyr^QN;KJR}Zs*xNyBv^H=XlCU zT9H^LCD?Al_K&52$+aWwam4C8nM^FvC5p15C3A`{Ti9lox^#w%FC~rbC7O9rMv!|F zV)L&##xY>r7%s7XaNokcoRsmoSGb5cX$g04;%KVDZ|>Xm(zq7xJ0e_k<@nF{3l{)JF8Dq$SuB31i<`4r%J}4s6`#<+uzhU+Ime2Q)8iyQi3V zPgdc|U7f9b|DV&=Av+T)O*yp@%fFzUcuygZmOwcsZRg?uCjL`b11yrqW?wvyrc6%2 zrx954&h;)?M1y>~voh*sjd#vegm?xKHr^!%AnsYg_COp|JqpisP(~H00b!e%w1j&W zaV3W>FVC{ztYx;9p%BwJaR_<<87l=cz=66e420f(*6@{2kr^cFE!j9Q+Vo>5z;TkrKy3 zRfPn46+!I1%yVcPkg*`M0D~pG+EE!{07Y`66^}_xyw{M&`hkvnFtlT9@K1QHvog%} zl+-{K89`o0NSZF;4~E!m_<9GdZn_kcOZW{G<}zyBf)OL8-{{gA%c#rtZd78X-$Z@( zPcSbnl)ySm%tgYR9g;B{Q)+uddXSXL@)ok_wwY_;98=+ zYp(@e8{X~6|5ZUfc;`JtUk9&`26T+8Z+C_b8w?Pa3Kt`9{MwD%G{bv67kjajU1o*z zeOD0In|L3y!}pHhV+MP%$%Mh4F6N8xcYH>zP08)GFOw4N1B9_-^!a3OG}lEO#Rpe| z^2D))Xucbzg!&LswuU#@(P7*WmR%RpkKx0PTZha{sK-i`yzk59g!~ARr8(VVA1@Pu z_aAjy#_(A)r%O7*e2f@ckbW2@4BGH6n}~ z3m332RrqUNPs~q|$*wu|cUVZky{un;*l#E7HV+0pcf_;H7RV zWK2bfuMuJ6KIRHIr4s!IF6nYYhP}s01`=91($5qT;2Q*R*euWb;+h2g^5L7#${0-w zjpZ}RLR08(5$&76ns$cyw;h+^3LD!5W(pGj4#iomi}enys|J|W;k(YrFfWVb_6Cc` zq$b|?$Sci_7l#b`{l23z>OwR+;+so9n~D%WAcA2CJ}tsTh@aFZRzGx9M(^edRw#ce z=?VHHLTx^fCgi)D!&Vam{EwZNGarbFjh2cwN5w)&}~{+kb$)WrK4 zc}L=HrrB)_*6F86`?vx7=MK)O{57-W8cpGUK|JdV##uW8kkj+UQu^~C%QnRMW!^VFwtyvD9(=rUOKw~ov( zhEsauE!Pt6cf?g9g1VzEi*(D`_VC|3F~g6!f^Ak76!s6qUKgcw3wEmItMhh2p`J$J zkDiC~kYELa&2?6=gjZ5mhW^A1rHLoZwgJu``m=LaH}Qemv1m^4SoDP z!iE0nyo?6o3K1x~zN9DUzXUDL^TJSqm`XdV_umf9sIY~CQH#eyP}KjB%5FT}f@5|$ zuNS_|3EE_q(T(d0ozitW5)$aL(6i_XUMj=`mpW4$dL7<5x1B#@Y8aowK%xKgc>l1TfJM3X(8S+O)a zz0<+IH0NZP0?SXTh$>?2PX^7x?)>arJ524K!@BvEoRDD_ri50Il868Y5KuB_(CBe{ z*?~^TC_{}oV=6)%LeYxgXNa8=L8nUnKT zQ~p|2W#MYf0y}jCfnZT&dTJ|UDL3|-v!ifz2WNEZN}sCHxR`j?Adj^vO%gHxSR96H zIw_+z)l4rlc{0Fq1iCpJkiu@GEO(Blc^Oi0dw<|v+fH44{rVulT*kE{HqJBp%0--PI~s);xv)Rdb#^}nf_rX|?T2;*3$ea~p`4O^|#NvL7U zsTtE($yhP1JNm*Sf(FG;Uwo~^d=H8t{zHiBCa9PIxss*cM9iR z54Z)gfq!;{wW~o!LpeHH($5t&Ax|c<)DSTaprT^ruMDtyQjgH%dKb`RDUCE&SRHLg*oXJesSJTD}L?FOXdX{4| zUZ&hev8?`NN&;;nh~F)F9Oj*c}N=);_}HxvTnor<^pol9oD=m|Vi!C~WO5?R>&_on=piYI zbTLV^XqE+DY}ga-?6eGvMgm6DgNJc!@b`BY5^2#`7@uuph?lxrZ*^BkW_SV%1%nok zg`moLH&R(Ok|_(P3ofm@yVEk};whz}$|^!Mh~P)V43icb9O7Z21&iVyPT9+AEL`D? zMPA@z>J6)EqBTh?LZfhfH||27c2dRy`LfU`(~y3P`s@)#i+%H3w>!JyI&9k^89jnh z$Fk^2T7q>5qZODYI_7$aGxadD8eGjpsiY;`EOBhY$?E~19ri5r!knWrdWss4NzxIf zOAIT7uQWE-PB#`8!zIqiFrz)ORXl%+QbO$@%3NFh5wBmOUE2(^{5kZTmSILK&f8#m zD8$5@Cy#FsrzO%jz{VU=sR#kMg(Q6roj>s^dN|&#> zf&e>N2F`O*rHTL8egDGsD0_@m5W5f9k zIJ|K^;-Im0!)E(AJj6NcCRg~%?%g^$aUV)i7)DU?E{IzIZGtiu*Kj*(xxxwOt74ef zXq~_|aX-^>8Qb?O0>-TTri*)oiz9ZPMeJd~E_ZdCb09q1(HSpSB1Y8%N}7H&MHTot zBr`4{-Ao(*3D0$2M#x!88oy+`E;s&4kmnI%J^}dm(&5mIxqQA;GQM9CWNDz{k;}~@ zy?`XnDU#KRQa6SJ9Lw=SM`gICYD`uM3G^a@SW%LrbGA7@?;&k3c38%gqQ+BN78CF# z1kysr>EbAGJe>BW4qA)ISr!T*9xRFb6a&lQtI?LU^sq zW=!J7)~u6;v|mSU20L@1lF z#!yHJ_9ns@Fpike(xQ=#pd`N8i5V?|8rH_^#l(Dz3g~C<>WA>w)!>vW`I8uJ({AE0 zru2hwZzGPu9Rb5#JG|Wy8B@oxT3`y&eFt?f4_!KX-|4Dr@S8~uy4v)RUYhTsCc~J0 zxSuj(A>Ef{k)ZE()LvqVJpBsh!nmq3@E&I1O2~jk<0E<^yw`CVB^!(3M|ugrkHVa2 zkKZ2H8ZIJ;friNYowRxKI~

dN=+{*H$h*z+BJ>Or1AYVz7Ty5zQa;3}hIAHQj$j zO~?-sc|4J5#5^I;980h%c#*81Y>T=(3uEfTo`bEEUx5o++5L$lUcJ1s^bux>U9Nqu znbG2W_^5+3IOaV!MjM8TF74bZK1_AT^k2@h_+T}BRE1Eww8m1-KCkSItnS7S< zANbRDg-<#yqo=HKc@|QFeM%+MiUZfdaGHNVe0p`P*;$@qY6TmY66-T$r7>}S$4nQy zZ9eOe)s2ZUxr9GQVUCHsjAwDWA3pE08I!#7RXj*6(JxSxwj0KKo+^tDxMl9fFS>Y! z?UoYTdl?fF=t~4~)Ws}dce867vcK$%jP42PVukYblKu*%IS%%5AqHDeik@h+2fW%o zeAO`-;~+JRQ!ggw*T@{Rt}n#_xnFlyM%^vUX(JYoT}X-a4Uu3<#{CR)0|q*N(@8lN zQ7;y%sv*R;h+zNDiD>BvH7GUG;(v#H_Uu}syCY61 zT(ZLovEuh#N3X-5OcEpG>H&Qm`WFp)4onugK(}GK-!e zy7+$Wpp4>JGNZVFq<=$cnyp${<3-HewuQsqS~&BY+lzkdtc*}i=@?EA%SFZi9r>*P zxL^nF`F?xKHfj9cks0HUCpD%&QAn6S5W^}l+nXBh?xB?+n(vPe$$5vV4=o8u{7)3; zLYHk%hN;*IC$9~EcJ+)NdTfhx(h%S;1kg0AthMsAuD?1YqxE`fdr$tvbz5i&_BX=J zAE&FwaD^FH8Rka2!rz^@4%wMdzs+IdGfRIeEsM|+}`?O zDGL5C!Yg)fHytSPZ%1alT(@-X<@!_766`;MB|FIu@rNsW5H52g?f=SKZlJklsBtBs zE(<}sL7JSDP~3yaFN9sd^8l~xu#8tZ79QX#!d!)zz_4$D|wKu4A| zVzcwdvZTmYBbmcm3c<#4A@eisaCHY}m~}Og+)+l5YY38zzScB62|L0yR|BcB9ixmO z*CK?~A_mb;Ei59IcP;vkLmiVbM5n~|=Ej5sI*cGTUKn3^rFKfdC>-vTjJ}~{wz-1j zkDxr)do*)Lgb1zE3)3}|;YcTC3@{S00_kB)QRJga1%r8yDb*}`rE5EGbp>+;$sbMm zig7T#wrM9(9OHFDic1*N zpUQ&5-iTOQ-MgE+IyP^a8HO7>EMqvfga#@}Nd6|2uUKx#gn2A)>WqwrSuCpj>~SR9*M6sIsjNw777 zrHYGA3OlSCn9bg@He4)*Bul10Uw;=qj8Su;wa?=RGZ zyg88^$5O8PgEU;8>a>i`tEPAo66h8L9l*9WnrgOMaG-@-I^rb!e!{G&G>FCI6229M zX;W~epEq*N@P}|~7e95fxFxlZQxOs3Hbk&RrE+4hS>#P6^WnBm$*6HPZ^@N}x*bvM zlH_Td8e!)F!n~r7==RRb=#pH*O6E^xL1FJeEN8cNBHz@eZClRcmafg4ww!iuSm)4; znjQt>yX1L(RW0#OBkzjfp{L~n`RR_x=>5iq$|xb_^;G8KXmdD3w8a@NoMBIl37dj+ zH&FLV(B;g%vj@Y(Mwia0zCPbqa_OE)T~6|gIb`{u5IaEkEGKQpA5Lf}g-+&NlnCW! z6LZ6PD7LYoZrTYXXFEM(L87z`E~S_BIh0O@>_Q8j(Qq~l!?`Y=@qJ2tfGbFTGv&E> z%>{=ou9}nO>f&{2mEk;Ua-i0EKv<3qTU|TD-cmwq4|;%#a(zb<*t4V+J01aq7-w9? zd%j~bdX}2?K35WI8&O=((4iRH(M_)1)JH$oZ}!^U@VMQX85^=CV@1=$GELDhAf2BF zXZnOYIcN2s2kE7GAvLcC%^jVk-Gk7^={@PEaFG)-x-2EPlIX#;M7x+Yc9E5J>1kYE z)y4)a=dHtEOlYAlU_gIDlW0UaA@8CBHnGRZ?knPlwgcer>cCq~1~Pf9f#W(N-Hjw` z_r0l|*!07-w7WYZ=PMO!X(_#=8v*1;w>+nqS$899G)M#i-)L*u`! z0+gRw=7)Vgy87t7;2eL>=^2APQ^r?Nl8}Cv`t)94=|9cx;?DniT?LC>l}z%V1mkD>37jKRUvTA}>O zlmr^6EOx0oZ^uMG7>16?SgRSk4nAoJu#*6qImH>Q9yAX}#M-qduL;3%oA8GdI?+NW zR*&L&Tvu5bF$=7WxTbSq8WH=}6c!wsF;9po<9jTLh_EO^yizVXig!67qei5ZhA68D zv6~1Q4DQuPCxV7Oj>#DEJaq*1nhQMtb}DHJwnUh9pT%ZHhB1Uoot07l7nRo|Qb9y6om-Bj?Er z=xV2M9E1(6t?&@XY{Fk<^&Aqh(yXAXay^uM&Q@E4PJm_fFvn#KU}KZYC?VyCQ<-*` z`5hK6HaVUi9eF!^d%JTBn*-ZgXB+olylbMZzjC7dVf+$PS8ga z%3d}d#<^p94s+$lI4h$MtU1QhRD^ge5$pqH74^~&;c<@12sBe_dwY72lvs}^tJH3G zbartc>k}NbZ|x?^2=YWi#s^0_Byo1O2FE8kant0lRSbs92gjZ?=EUJy;pq;^ zXtK*~PDn`q8Pum!U^Lh3V0$%h?F!Fy`Ha^T6UJ_|(2)MKsLw7T9{Uj3O+VY^GjhM| zxClx}{W(%a-6;1CHRC#wo?&h0e(svn608J(Sc$d=ZK4aFV?a1Em+YJ-yg*8HP}e zweLzoy@aR(fUv# z@f0y&n723u1a|kj=&4`tIXQcBPF%{e;!pUju&AoS%ElX*4f+t%>@p#^_ z9x}+!8&{K$;ZjuaH?p#@^6@6-gT|l&nb!~cee`hW+comIJMhh(fsD!~5zBxc#uP<< z3(2VgEyQU`c&o!!*ML%bNxzNK?9(a{2Gh96;?z^Z+nuove=(s0Z~-fkKQUk-$_e=n zA-N*q`)g(}>LZ%!osP`t*D7lpV@jgEi!|C7sS{inU_A<#X1?1&8H0aK2by$*c@Hr( z*AS1|UkuYD%#bjteXmn8#!n=*cUO@R;C%$Jr}O1BPMn(y=`p&dQivl}Z(pOZY<+W_!{A81Xoi2*(J(M;kuun2aJx#7d-xF-4I- zLNZq*iu1tO6E*nQu+#s-N1dG!Z&Jt@y?7i`75`)8v(Xji@(5R%#Vcw*?&OS>)yJqeN#%f-a}3YlE4SRPi61rDAngK60!oNixr_*wYt3FFS*V#_PC%Es52 z4bDVTuRc8se`ol*Gc#r)HRFM)2=NUf4gkWVq{25{Kf{==3A2*)wc3@s+^!dAk>-woB@NOcZTS{=#ULRbZU-6G-{;2uuf0d z9|_Cde_S1-U#DTcj!h(g?AV+xrC9x}(Gv0}L>_=wXGSE9$FUU_3P}2A zls*d5?$}3E{Nf(;BbXa^r?Ead=!c&>ETcWUkiAQPS}vFUC&w76Zco-vY8Y|_Y_As|9UmdLcq#gJi4BkzY)`S?<{q9ax)M%@r2(x za~*Oup_#ZqsJa3HduB`Gx%;gmjPsHiz@PGqW9j@94dJVHeozNeU%dW#JFZ z!sU^L`R1PRM@MB$e8zm>NH5JlQIlPcqQ!YW*tvt*^Wpsr?eJ%(WYif+*sIh-MNibf zka{&xXZo<+TXR!(wi#BzI^nNQ%xU*2xe=FXiS{?rXtrQ_J#3E5`?83Wx5M9^l`+dw zVq@t6|58b$e~6@+>^4LgpM#a$f3Ak4#75FXQWEK3BBe1HCzZtGjsESVjJVO70bD`? z{YM}i88h5D)gK`~s)xvtaG4uxXIRF}F($SGjp>MUS;$4VD=e|yfxA}2fF&nv(XC)&NsL-&i6pv*| zkq;pGK#~1=g z*%Z+=ah3B(r)9Vzq!X*~ilX8lMSf}e2P)3hxV95B+DuK&GZi6@CW75=c{?S_H44Y9 z22;14k}AR+OUwblG`lmccnraDuAeb*STcKSE+FaaP?{}A)=Xzlt1~oX{<@CHXgNx5 z6g{|>XvdRgbK21qPM*U>-?(q@dd|rxN~zsQK;qY@IL&mKN$Fp^toa5G$(YSbzzU;> zlA4G&B$1}&V!z71~Ups`eu~ACZttO5M^^NCda)kJehaO zDeEQ|LJE~ySC$j=L^9b>8DQIN?Oa5haJ)C`B!`e!P~nVw7*harT<&(g1fv)AE6ImJmCL#vXeLX~t>qMNHkm4%+2!*Hr| zG9qC-v4Q-FYeqYLYsf8xa>KLH=MvPuSZLd-YO%m<^q! zwQKqR;r5Qq@bcDHib71hJCMgNB6S~OA*^#uhVh_Yr_=)lcTJu~@dF_qJCda#?(;s~ z)mLv#&rv}+Ur%v5l6+a()^B3?K7&Eea8kxB!9}dX`BPO==nX{Ev@6z*hz%Q^n9-Vw zw1zAmDJ9aGBB7>UxZ$Er+qZ2$ZTkh=!dXtbIkGWflql8ml7&Gozl@#I}~j1l&v@``K1|YJN1cfNRD$ zP;GHkMqNizD_BKBfb$5j!O1)Nc*APg>WqxytT<{!G12Zw8k;S?Ev7h((K+8SC*k+` zRU#&r@HPswYHJtT!eD-YO=8)0CCJ?fVRcS>2Ju4UPvP#)$?!&|)K;2tC7~KZ z(H=u>Y>XCXa6cPD3hv>kj3QOcy0VNoO>)@L(aK-8el+c@4BO5WtWb4Y0=5Xe34jcR z;?X6YsSPnGY&(D68V20oj!DL*K72Vil8UP@ZO=ysDJL}JLKrdkoQoU8GFJSjiA?3U z!~C+5c%wpCUYPL=WtgI#((>R>&=F*o5Dwdz4vhyka7Ra&b6$owp(K(%N3E#fUBWrn z8$SZku1yG+IC|6McRwy+{PAC!uIM{RPcA2}!(bySkI?QpHRlDVD<$IlO%J9c$~-9* zHyZp}=1>cLCuP*}lqdx`$t5Q((FUX)fwvW7TM!h+tAV(GavmNcJ0fl9)UzkQ)hLq= zIkG~oD6A~(WEO1XP5!YK!e#n65i$fPXV_!4t~N=DH6n|jaEQ9yUpr<0oE#P$l+jV8 zq*l0!j3A43khNjg{{pgBkllnFh>|1=emEF~Jx<85Dr+o%Xh?pE^4tr<`-iY!=~9=@ zFto61t*{-p*%|lua!Q7S$kW@G@F!Oj@ZJR4x?Bnt94&?!tcryD zI4#3fQwprJh{Gfz$bAVp5T%0MVE0z_hT(p$zXtzd!cb5$@>6&1AMheE$Ls?GDhm*;!w0`Km zX!E(@5f0uq8C=L@8V4XKFOOtiO0G$6KnRa=dPaS(=^iK|z@r67^Ed3m9)`!P22eBc zqlf^HC4jXBn{i_tdV}jtSgw7XQ!;8LQ`?stml5ajDoEPzGU}kWdx9e}-c-#-8Hxz- zL;}YB(|&A6c#@<3TmQ6ciu`1fx%SiU&dl)4uCw6fIRiiAKA#=B!^`m*)|zzeh3a9s zsQ6D2e?xP$bOw$J9n6lVP8;pm2s3fxATZP*Jk|MUPi_$%=(LlL6_{gUkaS z#>`{;N+&!&-Sd#~4y0pzJuDX${~6>Th@#=T)2S42`Ap|!xHy^4ScQPJpG9qJ#}Ch44FE|k^A!mJo<~3oG{V(fE}Jn}ju{x` z`?#oiJThH5GX%5W#UVCek8lwCtgc8Hg%>*WyvdbMf>s_q*w|99u2Q~;IimSdK4${K zE#bvZ&+wC!5?cmJ&kSZ1>?MTJxZ=FFHJaMc=MQbRxbRZvWy~H@dSflu67FTh(aE0r zz+Hp>JT9&r>0+9fJ2J!jSksS==?VJ^VxuR(ri-{cDNaVMoUdFBG$jmakccuBJwabZ zXxV%jaSII=(Zj19xUc4mq{MoS7Z6cOc7s{NP9($*Fu18-yBc04UTIuPyw{Ou4)M{h zR#=#Vt7iunPhan(3?s896gcS!^9Ex03Kea(zBd?I;MyA@B_>sn_AorI5mChDe**r@IlW;hW|IE zwpTE&B-Dq9;s7^4>e9+&@fUgY{D+;CQDIVIBaI0O^bvw+Ni%dBgDy6_FNP7EuCZJE zsN*umx5{S5Wm+PBj6}BXbcJ&KCw$yV88eWYo0#LT1o;FZ9J5)+ct3-kbidFHh+z7p zlQLdmrLtCq#QGFjtQIlq-Q4xK&l<52pLSA4wMeP$V~r~b^%tL__^eYh zCRQn-QA#2Le2##$hDH+%HSY5+e-gkG+IHFFV#y`^1q$=4CyS&NFP-|Li)VcG8e=BP z2=XOD(jL7SM*L;h&*+#+nYYxE{R(BdFzdqzuMjm~a0p*@!n%ytqXEs{e~p}wUlTG7 zF8CJczz~Bt3#0Svj?6G}YeuKCn1J6PkPW7^%#XT{Q0JxaP3L8J5IwyW(Vqe$QA|z1 zZxMI`fQ3t@yeQ+_`FMUaoOf_7e%rG#J^4)+s+o?Sz1T3rkHaH5!uK7qZgO#p^rij-)+W1jlN0d=ByxVpEh0a3L`Esb z=7&fx%^y+oK$e1Y=IDO>u}f!!w2V!eO+n&6p*XFyG-INdFpauDbw-AjRx|l3qy+mJ zVYU!Q2N_msu(_?js~ZLweYu7ce(uPOrcm{hEmsru7o^ghns48H3NDH8OQ&S?T1;dg zJ*AfFuc&$?R4empoN+dXD+#8T_)qw?gEG7{(lMAGq9eF0D*kWC=dcKiI$Z+DpWspZ zty44luOhW^i^nJ?+V4b5E9&T-<4@uDPRkgCQ))wvD+%=nqS7eCnmY=AbVSDYD)$CV zE!jU&mZJ=<48=v_XgeA$;m=OU*ivsB0ApNbdS}Z71^o-5#{sI#;?Q3-5TJ{-QJgRf zdmAfNF_`(Uo`ZAo=M&5TsTp1mD@iLae`8+Q(tTXSM~vYwe|LCBjq&70_a})7_YdM^ z>MV`8rRblIS*59C$tCBI(@%-N|onfTan1VbuU4Z`(z&;%PQ@G4cw3lo3 zeK^uf^Rke+=-R9Znk?zE=}v2hI>B%`hwUX8z!g@QZdsQRPlZjLt1@wUX5t8BLgCNp zdL%Y=94s@_oefv;9As3(F`3k=mn>+y4URQ2v>A| z#?nG^bwmZDSALT;1>T?F>!S494ib-9wT;!>S8XRl*il`ha3#;i79^O^8l`7B(8J2& z%FhAJ58GoAa)mZT(>EOG_>5_xk{ezRb_hMSL_3HyzIJc0IJF8N31>?oZ&=rlI6;tg}Y9E<%M3R`B_FOcUNKVQV-P~;bkp_t9m9@ z*F(kR622OR4@W6r-pA8xhf7$$>7&Enh243GxVpM?GOD?&*!%XUF-^g*L3pK`hx^s; z4GPzE>b`gL5)Fz@wOv1>-c^>@m|VI?Q}=q% zEt*HUxiLU0#z$F$JI0xJpZt*u#moj*g(-)}GKU8N2P@4&Ms{Jwew=4y?c|J<%sUB4 z{5lk8dycycF*=3ox^%`gY1yVkC`kKwYSY>tVOB#I6!*5%yBMzLhz#GarM8Mbt|QR( z1(NIXy@L!vkvOZJeN!VT1}M*KxM!HF4Gag9+mE-3Jg2xk3< zn;zRVaBs$qos?nWBbB{ErIzeXD0>iOQz#$K?+f9kuAE^QmSX@*A_ClufGYriF|Qw{ zTsfoKj?eBPAk`D8nuej!nI9m+;3SvM=nhIPA|{vc8VcKtXZ%L)&YrN=5oe-66D*wZ z5L0{o%YNDMqcct>nXRR=VQUW9QyiON*?4N>`4cyPK}*HFIbjC@mRxb|!R~%I)j1iT zy~c+}5dm&N0LO&1r3%+=W3Cl$>4=Omp=LK$lo8}sgd9r9@)%`C?B3dG85ToH!(LtK zIsJ&^cic3*jnM0xVS3P?+SbC!WmB8_GXwi6+}6<<#$hXJ7`9$dCB7Z8X`YWc3u5YS z@1Trcpj7QGwPf!=*{kqHVpC(k-3(LIo}CZtTs^~B@Wk=`Ri%VFjVMm)N^V%T-^Ls! zd4sTo8yhj}J>9u`nbctsiZ=?J=t{=*r`WJ7y2`|QW`gVB7A3h8Jo5C0} zpYgfIYze#HS-KZe_dw|4Xb2qOWjASXKhOztub6w~MHw!v(vcD=y`(Rubh1-0{*6$} z?(E8|vr}Sn3Ezdn(Hul;93htVuCANWca6Oc%&|>G>UX0${q(64*wSMIPSZFQYIkvn z{oS3HQH^UVQ;nwZ4dUyJFkS|D59j``jIh!bflZRR?1APDOMD?rJ8cTTozP@TeF77! zI4z3OwUKu7wJ=2CU=}!%c+jk^he6pIutamMOC6cbByhf3i6 z50)+Fy4WGnbM=f8cQRR+<~~uX&Ieg#R@QDFFehca%$g7w2?=yhg7`8uo?tm~ zup1N7?(Ez`xR=v1OuV|0q^u_7y@}+YK3eQI7vnij_i@lE_zx30^O!EaKbMgDeW}jw z2PL)Dhx@s7Mg<=meUpZ??@w*^*)S>xi@2c5V&G!z+XEbv@v1z%6~do@3#KOE0|}(F zxZ8qjX~=U_Y(N==@F3@9%vO-xNXujddN4t3x)>-g+_Z7q_Vc!G-Ec;Dh(j_yOKFTP zBm{UU0j$swupYNwZ`yJJ5D#-ihH+FyxQHMRC*&ymK23|^i|0%FM3XCn;Smlz3x7GG zs`->PeW(>>m4!z#3$*j;V&;t|^O)xF-{^pQl*2P-&*Ku7hw)#UuIP^@ojsIK_=f?9 zPr#Y^7zbwzlb+g${*<%?dn{oG0p_b5?RI#abM|?yr0t(^~wHT)#UtixaITSY14gnTlQ^o(uf@hKPLkjN=)oJF5I z&HcBy2h6D%XYSY$EVz+*M{M5pk|IAvWVmtS)sM&>e@3Jl#)?{HdZS z@Y4w9TUK~D{tA_^F-yvKePfpN{K1p1B&{itjh6 ziT5n>*y^>*iakvuUfqbk`q|FR@YRiP*s4eg_#6Vc*nz?~Mi>>aC$BLx=wb0K9#H*U zNA6`VR>WRRFCt!)kFg@Hpep+FNar|M3CeEtIx`F5`3}zLXjY8OHZ9>^Kpe*oH{UVm zL6r+HbXLZD^~6?r{3%Ka^&+AeQ-Z^!x-(1Yy>UZI2U{?3L15ba`eKJ>G|(ht$Q308 ze+l9AeRbz&`PC6WI+zYGbzaUupHjvKQj!tlWn^&1YlTA0=V+?i?l-5l4=#v@H-?ux zFQXeM$4RcFDD*3cW^c|5)-l`Z4EaNNrSmcj0846xtB45kDk9kKOOw+s_IzTd`)bEz zOsG7$q5KIkAtol=YlvgBAKwLQ4Kcjdkr`8wi92geQ{>l?d@RW0*Mm3B3EaTkxYrJt ze81lFunm7bVGtV^i`90qw*cpkPTIk-k#sXVK{yJLa}3e`f5tuH=t|p<{${6Sj3E-R!s(%;CgNL2qaT&k_>oT`F6-)x?_<8sXgz%P5-*ENg^GPRREVNq>zD(SVt9Ygc%$(=v*t zvCPn*1$%>Xpw|ZJ1%3Wu8E;prYQ7hh^7;z-HZO2&pIi? zhl@m3Gg4xSevYEYQ`Ccon*jqA1{13nb|eNo{#G+S@4&4{v5z%lMR{fE3(V3r0pK2O zUqj;o7jXZFFM1v_%*)Cy?{O*dzC>O$f#B`M;opP7j>Td4vV$^Ayt2uaevUGNe1#Am z95szo0I{n1RaejGpvD|vQ9{aJqcW?-%sl!(#7=(Qr8BAp5?QrKi6#0Cin58?5w|=! zKYY_=Gh&g(j@YJvq`yUJF2&hwa~d7aw_Q2I*c^Ko5|R3Mq>h1pceA^2O8Bm;p9ts* zl~%D4CG)^iOZIz|Wf(?0wkp+e$*3_U`wC;ftEek0KVVkqPt#Pp zJHpoD4o1a6(8~!w^qlNvrl~?p$g-e^8dc@sN6bNrs^MEYIsDjhtAEEQOZF#}WjnlN z*qO!3GA=~Gv3udCuANakEUA^FA|k}kh&U1mOfb{#0h?80D+8vKwoftq+<6(U$U?`U z#pAfFa_|f0fRiCVputu*c}vkR9h@;qS8~JZA%-kNOSE5+Msqn0Yh3yJwPP||?={0= zX#wyzD$M3)>%47K7j8anSF_t|vQ7WiDH)3|w%aN8L(7y@l;4p>TbT!<+RPvw8}xf8 zWeo3?(^N|;qWpmr`f3rQ0LQ;YsgC9_%L{*84W<;~P*D-)Pb$pmO`N@hc)0X$__I?o zUK@HHOKf#uOi84_s6YtDYhiV^W2OV6{r>8xjOym8jpa|64ZtnyQGS0TjH8BEoA7t1 zWQ=p3taR^#hXwqD;_Mzqb7q-@d7cUz{^@{>VLBy^ZM7_;*Yz(#IHL_Sty`|eL6}Vj zi!l6P;nMJLM`d^`l7OLV#02~gf#c2*+!6uj$YpM-n3@dS%JVW46YjFmEJv!KcEVHL zYq#vOdR&r)t&o>*cJ~-kW6o#nf{}1#M`U#OOl&V_OhuHdkisusY)`-@J)S8QuIikO zFJ8YfAxQ~#HNukFG-J_HS9iwh%qB}M*=tai)A}K|+%PnT^>!;CHexr<`Ds-=T+?Ca z;EyLXCfACUc(2OJ$hDXe8m7fm(mHCILh|f~Lp>LJv94TT1?R#tS!LlcX5nCD!MnpD zPO3lLnHg=$Q(DRW2|9utL5QvA#w%1f!ed5grbVf=P>=sAz? zf|H?vU~@PQTWi;b6P%lI{6tB_z@_K1sNgpuoMXV)HD}?*4$Ww1N^C?uq<=-a2}xW# zP38=@>SNz>4|m>&n>sARPOdSBN?O9*j5yX#EGt{@h?uBOz;-W3Wwh+ll5|N!h!csh z@zd`jwD8$*k~1>iopzeXuT@nNX$?uNmc_EiXqRq-UhA}V_=^dHP9b1^@pX^|nsS*!fvbZ^-g5s-D){kr`JPhP2_aoOXLhWw&4b%mPn$K*s3k=1Rn1VTE47 zDJ+qjm~iWfvr$Wbq3!!;I4z^ITY;9e1lvFu8*4Ina6{agorU#1Tm^pK^d)rZZ**wJ zib;*xv`kUxGl^!C@@TmjcXyTpGx|VJYwy&bOi7?k1RVvC+s(F~W=8n-!M1o|$k|Ta zi|H$$tP2^{pO(ui3+FHkG!;`9fDhjb=Q=XOcUseTP(*;u1hAj4#uo*PN#5e1j9R*K zfRTv_c;507b;DK%?Q@Adbo`FX0W;zJ{~j=-5^N)YRev<NzG zpTl;it;3&9=su`o)nO$$aW5d(hUB>UZP@Gv?w^6py%6r?$c#^=#p=?+by-Zn3kjq% zgOT^$1@^kwvlA|IREBRZCA9)pWCXdGkRt#o_x;o8*>K<~{h-ZWxU&N{O@5ta8Kahe zQPEWn?!p{!IMZaHJJN_A?&|1_*Q)e})k7gB-rdBLga3|jiY-Oo*xgsdQ+ng+p%4?V zK_0s?w~XQmQg)+z!?vch!#y0lmu}1jRxqt>249v{7Mjcg?N+(7;IhIHhJ!F1o6%=0 zv6WX3NlBy@Nu>_+l0g^OlsRSJx)+KF&>_J51hEzN2Rpkny~WX7m~l!*S!$Y~D+x7A z6yKVydU4NET0EO`Qbr3LTRbadgy|AvEAt4w#7a3wjFve+2Dqa35@%%ueAO(NSJZ^u z;mGPf-gb8uOWi$3?#0a4keXiP%13#broi(Avk%pcv+eG}TqmrxYa{#4%_yn_Vq;JD zA(zxd9FR!oI1lcdveWyxT^YysO~s?uhD#^!XzXqVUf?|nL(jt&q?s^un51POOI%sn z$t;x?bnuCSV>4X5HPhjdFX)UYelYS*pAN2LZ**}SL|9mje#ILk31xoK^>J)}hXHbf z{wVBn{T%Fk z$BoS-8-AyKxYW@Z>;HvJMDy%go>r&hQ}?twc2>Li_axtZ3ouBy39u30O}Lj+bKY&) znklJ>a&J;ns3#_=9WGql#{p|5*ZIVX` zPH*q7{EH|k=KaY$7|c>V>V*e5E$5BZ*G9L{A4mij7~l%Au{Au%EIB-EJS(a>j4odk?lBPQU}2;_E-Vw8%59ad1`oqxI`Gip^KVbtQWq$ut)$mKzY{&l8`?||{7 zkv%&7qo((8vc)r6j%ul8?N?Ahs zFQ7i1gWAnMhsa!vH7|5RhQGaTGk??(=0(J?V;#O5BhSVkPB7&s z?MW&LD-SPW9?ags7u!SI)FS`U;q}8yoxN@{8#m#m^!8edM`}_|#FvrC$u;7N8D=+w z&m3OvsI`+(rNCqfNcV{vEAN#XS_ ze=^_O!ou*@C!WXyil$;WHZ=&dCu*WR7QAf=5`P25?Ggp9?b6^B|% z3H2tG!%QsnHt6o(?39dhj2UUBAn~_QoOQ?wi+(J;)ul7)(AX)J5bqJfD?`6C8{X@PjNaE%#uug<2^~S+M@Y#Bx6nmn;dxHs{SL}#(ltIf zR}$(2MA1-*LHzV^vKLA5qv3zhCBq;>d% z30+%}-l|OT$e$=D;wMB*({)rE{%3PhebR{;(_WwM7cQidmT;dUE;&0od$3Oub@|hd z$>@+uy+%qe>CaG_7CVA=`ptfSX=-7x0~BXsA(xJ>tziAzC-}cK{+0* z;~Rx9J0hb)s&hR=9bvvgOsToxic=oW_*JLuTXTsrf_#k-_6T&T_h&6?3nvw&u&wE} z;p>je@dOki>Fw2u3jPhk4+b2YAW+k>?zo5{>YGl?7`RK@CtN}D-=aJRL2Q1Q;`L9s z?z7Xw87<#-LdM|4#8#Lw6;ZxJ3OjQjVj7Grva4)h?0nZ*8PhD6FrYt`1%>?{u~%c^ z7TaCi2|5MyVQsTLY|V%7J2IowQSw;CaV^n)KpJ0V(G7A=*9kvd4Xa3OwBpgU#QG6g zrREiy*w6`g{Er>AZ_O*|2=fyasc@&Ce=ZHjpE@Vw^%aS&NX4URiS;wG*s+$^jr)sm zC3aik=g!OUOOyqSSpG#)6!jOR9>FStDvT3?8n{`S({LQSfO}T33_c3KbauvsywVbC z^+f&^$!1H%)ju>%3r7jz*AC3FrDAF;XYxR}l2E@P>KGJKdwp=PFAkRp4Q(EdfvVxR z4$fHbuiN}nud8hQj@cNW?C>s|-#a(M;Pw`8MfNAmn;<3BABZ{>CHDW`9c^w7hxoGF zall;oqZ2dglWSCo6-9ynL@>J?UauN=h~abaA^h2y8II~Axj~D^q$b{9$Q$cfXAr>` zVz}F1o%!GNtc9Ske7Q7wz)hASSEns}Edk3CM| z?rnF5@eBl<4}z}8&bbR$aQHd+;}vEbuCYS&OP#VZvL7=-+ZivpjY#GzIuJjs1eE8d zGz&mlN$yX{qmjC}VW)g&&-%gqJiQ24a?*v9NrhDAWj%?aJRQJ19k*hhimQFXfu5~9 z|9{9<0aDHmV$RqTHy0NMXKp$-9xBu8ofaR%!JeOt9*P>X-87@A7Zmppa@i3V@nCiU z9BTZP9huRVmE7vP9&k?`50fk0R97L54q6{8W*5R$os%&O@r1D*%lR_v@f}wq;_^Un z57yOPI%6`cpt|GMWihOV1#I4(?0$euI;3ZNg6wACiI>= zsfchi37qEoL7_HwHJUht3^)0-!!b_F@VU8&;ryv8DfF>K9}G0Ec4ao>fjq}KFQfe^ zrQ!5|M&+L5>yW_?!TdGYlNud2+?;w{2W2d@dh$r3^QSDPA{|d0r!$;X$B>wX=8n#8 z99oAP$Q+n4r6>f9SUkF(nAazh)v^+s*Tu#ZjJV+j4*g$5_nD@^HzfEFzT4OyS~wj6 z#XP}@IUg`4jc>IqBgl;ip}piMvCi+{5t+kqW9MXa=$<-~bWUv266_{~u`xtnaSI#j z(JZI9`@h-iHb>#6&diuARYeS3{gvyAe>3v0%}?pG!)_nvV$-x};s{j!I)o|DM20K6 zrh~?0V!5iaa3ZsC2(l2}UQ<2(I}9f|GvlMCq*mgJj38?WsmuwnqzywqtaVJrV6ejA z8Ks0enJBhM9Q4sS^_1#e1gAJIqYFp^R;n5?0dFo~ivBpWvv4kklnoqQ!>OwQ*6h+L ziwSrO0uSLAOCg|Wgjle+rK57(y5&9oi~%(b5pG2SJ5hv~SXVxUA7XIat(}tb20gjG zLw}N(aJM0j#$$D#kepQVFeuisj)V8_{JlC8g{SDMV9Qw5jc05C7qr);fz(OTff#SKe3 z&m^Ay0EL`m32^C@wfz5ZmV+~DyVBct(nBF8-X`+Wms*UAc;Rg4tnN#t^pZYDMWI_0 z_Eo>vz~$Yuw*GdmBQi$Ml-^3RTuZpk#L+!HKibto!2KdlGvTG7TO5_)o=#~ERn-yZ zJYv|0(#>ld*Kdkvc7?4D%5b69+}q|#Lfw%lejD65%}u_cxjUTikc_44F8qE6WFM+2S-cHH!)AY$e|f+OzDlOheAxei^)5r zc-L@74V$w~6P)@8y z@&HUmuE4-!0O8#om9ZLG)1K=@m4OB`KpQF<`te!^1X8!Ls&fwqXMC@kd2d-vz@~sO z4d7|eJykdXXK@s!R|8A}RzGUQ1Z)vVmxz2laczY6IPhYcwj*<9ZhfXnOQW@VqIO6% zpNJK6EzK%UUc-#@GCHzYthKSt>mezLG)t0ss&ESq@4(r%>C7+mNN`h6)FRu5%4F?W(_ldi<< zj^-__AUH0gwuw-|B_)wYB$d{w5x2_CAz{Hm8HPYjSCMptStN#rK*jOV>@9>{4$5e+ zmDE)L|J~A#Kq7%Z&6v7x_ZW>ASEsr zKtclDlc36Y51Xbm-rvi4`##=R6a~IF!L)UX=zoki+)Y2zosFA3?&ItXo4$~-;ueo% zs^Z_5eA;om=YpF-vHW~L2WAZZW6tzKMuhv5z$%|M-RNe;2RJ38%GYezNjkzjkQmlL zG(+6K#oN*xkWmAXO6}HCOZLGf*+o0X<{|qiYpEssP|DJ7z-Z)tgGCIFJ#0IEm=o6F zFD7(yE@0XBC;X7)gnT%W9Ox9i6Xr+Z5su1mm@A=?^Z*qR9!Uai*J>}p>lDMI9F)<3 zD(Q_@`Ay}5#zzxc@?x3UhaJugA`6dkYK8??S;tBhd1V{^HVL(7rDH_O(Zs$@F6_i(VOw-D>QFcSz(R8UR#-Y1~Wq= zN_X9$ex?2$8F;2=VBN|Y&@!eJ>?P}=EGOo($fP-%-d4XCp6#GhCWC5Ta^LqJKZoMS zL&V?9lw!5)tPi_KBK;;j*Rfky#=6i7FL*_HmG^nf68nLaaXVfv?nQmRXCT8@UsLWv zO0X9Yc7sa!i=n-RyIcnISad7u*b6-e+xGnx?2Vv|y@(lO3rj{RYQ_l5GMK5o*t3w) z!fH%fR}$(aMA`5XHISxgta*pnMI7^VtATCk;q}hS81OxL?Av|SdXU}kcO?azQPR4&&VNBAHFczz53KD-C#m$|fR)Zn$?XI3NsC%xfW$3wk;vLHW zY!4Ttw0R~*c&8IGmIaW`w2So0{ktg5<~NV!?Kxcc%~JuwyInjZ`$}m9Jy1rB_mIH| zykUEKYB(R>>*`aJUp>>9a!f4E_feBZu%B_7Zi8Fu?hNmDz`Dr*7ch!H6>>s;fJoLN z%$(9d5kBaojIU6dai#Q<{t%`46}&2R(Mx^U#WUuMp3;ipPtXzMBZP2Tn#Nxpp7qhy zU~0zhq$AA7h@n+<$q4sw@b1F!aVKOr7cH3;!UZJ#2}*N-O1X$9Pa*Jhh>*4LNvHfT zqFYQ;;7<{3u^4e6#(2*wEYhxmMvD6Sv}Yj0ZBa8M*QzQDpJ5hmh_d4p9Nam8F?rBl z#5!KOvyxqOgRz&`qiC15htGO$GQvE^MD6vD{ca_YGWa=WkYkkBJq3-2&wExf#wbr- zt;iA+?hC}R$+WPC(jvyN{2jjNq>PRWC9;GDD$9uRB{JB_VEnR)FBbj!BaE8Z6%xMe zsEimt38WXhOijeEkZA6|HV&s}B{N?Mt~Ya9#>m@hr)g+aM3Ao$!Uc}hjBtK@V>H+4 z^%#KA314^AI{eLqk+G&fsLBcY4MI6gCTq=5-*i+)scOtTiU{y60%(qT1?pl%>*BKJ zZ#yN!RQA->>X)q(8|PZSd7d&KZdX&TB9RLrfr;2A3HF^npR@N>49=k66q%@U$GS#n>}_-FVPzue(Jc4c3r<2xlj}GXF~c~ zI2Hr#>{@!!e(uPO@8}9vM1Lyj3Hl2{kHs4uzqAL97Pltj#GQEGarmY4_cC{OTX^iI zWXr|`f^zgL=7=T;uMO*tFmPH7efYI!Afq3sTsc;Vi18aT_6Gyz7BABazjg5pbF*Zl zF|kB{M^TP8u#nN0qf>6em;8HI&X_|WrM;@Mg5>`|c@8uw5am29{GNe39_gSBe{@R5 z=vfoVQWg{NPXzKMB@-t6*&!Kz&aoAcq#^CUP@9H8I)wmUP6Qe)_7I2oSEpo5?P?A& zD5M1Y8)4T0Z1-pu=N8XQjZi&c3b6^o4QXDo_;dKX!#CsaCyZ;7vrndn6}6R{e=s*3 zgE05SEqA+d#4oxYS_}Vlc!ooxG;^+~2=gyuI1}k&qbl~^^MdAoJ0QdI8T){Rj0pcB z;Sj#2PII_(ivQo8Sqhgy3yRy)GD?w>@}%pEiWrxLSX?Ia07x!>hs!x6qa?NAkCYMR z@}&6O->k@R1t(;*+p)R7DM)-jigTn?NMAaImXUpH!xbH~j&E}BX9P*XDx4n5a$@dJ z=9M9sOs~ZecI)(ag)2ENW42ghwj~{54j_iDxY%ug;iA2W>je&UQpN~bB#$M-B2L^3 zk<`RHh&(o(w5%ah8+V{NE@S+!Ss-yGp$;L+>|d=`>_Q9Ry$-fP=*rH^FmQaq!%F8* zWkF%DLM+=9CjT5ncq`gqCS28V89gtP8mXco!qrHi38nh8Fxb^?cLw3=&d7L$N?fUl zNlBz@ki^=dMNvCbVJ$W(hif`3!`fDIW9h-QM7tJg=4s_#o2gCPwr@Cp^QJAQof{5y zSdPJMsSRaYcuGPd9VSwFS=kOUKio+f#q!h!^C$dJKF|CJ!VdK+UyV9yt_epvGQ*(} zE52zMwDjyjM@^48I*MpIX%NMVW1@$P3*p*M%jnz31`t=#dpw%@)yY`e)p3ktGT!4# zldN8ul8C$Fih~c^#1zdYO)o+&(yM+xktL z!gZaTVc3^<=hW*7dpxmR7fNo#?yR}#ZS=gJBiG>%CJZ`7`dDWw$F7z~(d&~)1GQY2 zF>Kp5`5UYT=>p4|Mv_w@Z%Cv?Z}gYi)AMmd;0cb(m?$)3LIb6rQK5W0;Ef2NWq?>L zb=)_0{WX){UMYqvrB~i>Lg}MSy4mK*4fcKJaOB1yEa7;+{w(aAn>y>P999yt()g?o z!$_klt1R4%Sttj;%s2OhDMx0sadpS>{iQQ+pd!MFB(N41ZG^9Zhops*9JFq7*^2ar zDjp>#;u;doI~L>HdxQS0txK(ST*fd^WBW)*ppyxzaWpr3Lu>;)#c3J+a-yw#NrGt# zd~<>i$1AIRVb&lynNM8}+*Ov>nv$mAw@|6M>)Ce&Hu#qa!MUY_Gv;oUebeJo;@yfo z4noPZH;o(99CFI!dQ;;Noc0acx1l(jVBJ92TD!(BTfD8~&Yp}b3EAr`J^KiogjK@Z zF%w*Q9%AnYTwXiE?VWhiWFk`;O39^r2kIUMf!&?y=`h%h8Lst@4TjyoZ4lNuCL>^E_$7-CB7cKXwum(g#QP9sa{CB2@~tp3Tbh5*uZxhaE&2e4Ak za8O26U5$5cnWE4eh&C5Yvo%0JJ-}g;tpN^m<(=pootiNvz!|y{u-937mY|?#63Q;L zIOk?_r@y!ft2^N=XRgB^Oc=;lJmf}lB5op)h8bHZLN9TlU9ZvEg{z* zzEW91^5>}#8VY%EGRM)aPRN)~DY0Snkd#EaBS}|AK?;}j%+7W{obRBFNqtRqhkZaD zVYU&&_LU+(@wP_I8H_Ebo{~0{Z+Bou`>Kf_U8X4X1w`AVJ1(Kpa>12_>9V76C+Dt1 z_9oQ!nzhraoS+vH%K8xlA4WJ@2mXtToRv{Os-Y86LGl+p(l`)%Hu}5+} zF&kvkQjJ@I;r8xhCz-P{ydul?5Sxbdo787l#4QkAIQSP@@z$_uXJoWuCAL z>idz3pun>Pvr_s@y*pZ*4s(vnu*W^Ay;^^wkT6|hSVb`9V$aEOD_r7`jHr^*TulNJ z-$8K>iCkD>yh@|Z_l7ekdrrt`Ta{(0vWz(M|1eLgZ%XwpMAx(+Cos&ounR#O#4D@LpQ4h9GQoOm=TU95qmF{U5kpQlbRL` z6Fx3e6nsQDD}z@RY`$7>TE?gHgw+~1>#+ojDqlPxz|17{fTO7fUMgJRi?}~=mlL;4 z{(9p&1|I)qA+DnCWimTbs{!6I(2Yll6~&*+Uy=?z_aPI^Kv5otqa3oEn;`^3fc z?Qp5Xa)!)gQo+u51l>3r$3_sA=s`w114G2$9ts>mdvFA^&EaO`7i|rMl{M=uq zR_H^!Grc$)9^m+lQY)!p^x;{kX?d~J4 z_92eQm}i!{%#>cz52f@Gkk(bEXJM7{jPA?~Z}!HSbO?8Un3FP`Jd%m83_9r7rj}`n z{&3PO&T&$CH~AwRy6?{Mq$SuR38RyRZ?Us5i%b6=<&+E`MENCJatS}0!t9&eqifz^ z+cotVCuFP;dU|_%{^V)`K2|09f4seSU|hxZJ)YhO5FiN&ApsIn2w@4P1W2=yZ7|r_ zxIiF;%}TqH7E8NgR=bSfh z%AGrRW}>+#W@31}@i@ArAuCZ3i2Vd$XEvyK`NXC2L_=SV4XPN#e-iKykixPE{3Uf< zKG`T7CaC4rg0hq%k?1KPLbsRvjuI{|hbn}p8joXmtZojmt6hDL4|!P~>|C_)yhkmZx!;bGB3ddV?%C0xq&t#3I@A zK&I7$OW(TW{d{9`48B||iGCAH0f;m&;5)I5d+8y((3l+M$J~X_MJRH;h_5t|ot+X~ z75@`nY($P4pRy`X0frrKV+8AZnZ&We^or z{?S8A?Jt9Nm|Qud501$2a+Bp~I=ReIQRd|Y7|C7%GIR}vb&u{q=MdqQ#^@MS3kb?t z_$6VI_*EcA%`O}S8(wXUj+$**mCaH(QI<5X0ZlSWqY<|G#i;To0^Bcg7kCsC2WVL6$H7ECNc5$c88;#U4m{$bt z70^ieCQu%bUN&B{JlpT@4sSLx#{zHR4KomOyagP1t^6gzeOyk9BVXTYOpd64Jc5>K z{s%&m_if;X8^~&qoZ8vn(>Y7d(ZzP?w;Qu#W^5S6I$1y@@jF0lp|5h*@jH!49_l)t zoTZoV%ijf1oo=fE8T9zTcN_4U6#6Fz!HfY%WCV*rLVl>%I(+vDlAA2$MrHIR>w8G<6& zCqRZyG>sLAYD`OrvR8Z#XPSS~NF6mQ!DxjV2}$x#fgH=d8Z(Ls%BPLXF*KASO>@(e z&j1*sPI8gU0%Q2BK|89{(A)>3H)Veg==ea=*(V3Nv{SuB^YcdHFhQAJ3yX=xsf0zg zFYsM3A;q*_;&4*^;0Q7p}z!Zbi9~I#3kIWjG~g5Zq3Pr?#o8w`0^P>>`f{m z$@~>C!-#KnBCl*>7yq?*3%_cdjw;UF%E$zv$n`aF!P2oAAm&}+>qg|TbS$efSqea; z`37jT*~SICZ5P_v1K%_%$2(Ol)@4v6`xeMxqnc|r?cMtJN~kQezLljS6sf)gs;dgs ztgMTC*Weu$uN3qs`HA^GU}{LjT%#v;Q;@qozrPab+$v+rPv{>28Y^;XXUBxZ^elF^ z%kkf#9e!vW9t(cZ#SB!-rUHzFKO&)(pR|N|or;C2*>yNB}idD*`i@waFl*$u|Fv>Ea6wiJ7&gZxyLOz8Yanq4RV~& zQeMYEf6*4#_oTS+#{t8O{1+oxVY`X>3H?_Ii|&tS&eh*#kK z&CpM)uPn@}m4pe!AO-D zxxDN6KoxZ?;gIIa0;ewC*5p*91;eQ|wK(5doRtm0S1~HbD1iK0cEdpAx+=IZq{_Iq zpmk11xA_IRQ$AeH$kxhV)bvsYpp2Hv;7ECOP{I`<`;0Ug9RIa_+}AKphn1}eu^Luj zk?@)zM6I*Qgv_5waHbJL99k*ha>Tdh^OSsWW*fW$^gJu!Yk7$M>DA{ie zb~qqn-Ch`k!;H=08!9!81@jQx1h{A!wxK{K^`(s`;c%mJvJnyU7j90B5Y1EFoY<-*- zfTa=^$&Lb<&h_OldTXM`@1$^ZV{$BRsh2Pv37?*e{>oc`L1CgbmHf0nlBGSo@2m+(T^7gNnoO!=(@Ml+1-}e|80%TG5Q&VzLKT#fTTSZw8cq{Ro404 zx&!cbMm?r`Lz(NGsICP>P|_a z;iwAC>faZ=3wKYuDe3lfx?vTf{`*1i)Cs#tTi2u zc3p9i41q|r4n(M)(mv%fLAg=w3}cXox;M?WYRyg93BYQfFXzeQx)r&DB2FFG8@yxc z%>_ekXiN}_TpPfpJz#!r9yS`0V>&GFp&o+R0p@YYawb?X>z?lE6bHwPN$m({8I9wE zFt5@u5rN3Fi990df=wIcCKx$YVZ-`xw(&SZ-*TTNhe3*SKykQMt{8|LZ+d9R9=nCj zG78D%sd8@pW+U8MUk@0Hn~?PVO1~A*DP;?!z|gTFNP;Ef>VO1ao@){u!4-xOzhPzy z8Xifvf;4qoazTN3zvQr%ZN{~-Zi@f}KM&xrqqOIq>c~j8eI?N44qpHWy#vr_ROu!P z?U~df+-VFBA5+CW7KTKsU7)&}P{A1!&Np~R*_75~06^3WfO?>yrb_@2rlft&-HgD| zh$?OnAP|Wz1QATZYzIX;-fm9nceu#t9N``rgjTF9nL{M+-NB1ceQAJFuVmB3lK5pW zHabU4Y_91V0^#ogc(j%@B=WS?)?9CCK3rlnV-^-TL=_P9#R|X3CSqWcxC!Eeh1g<& zTN{Ip(G*fBr+|ut+z<7mAxAWo{~anr4m1 z;b2S|l_v*6f-VS#ybj{ei6_=HHDK&gBOGIMvL2eBK`AXIRbS3R%)?T`Zb(4WE(c(q z-W4J3Hj{rc_y+FMYibVD*$zhP<$>Rxy@j2`>CP#HDpy-Xsks!o z;oipRXt6|6N+zmcso_4*fHtG1O}iuRVObWtuW>r;*^*I|Fi3De5a2WF8DbJiD*mz_ zmbg1j{bdmDZ)A?4(NOdaEmguK`2+ZNDN22zB>`^Xfkx;UMJi(56@?TJ0>#ZyfTbO0 zg_!f$|2^1<&zB7Ui~etzgt{IAT|<>iPk6@VP_r^9h>i46Q*?zYR|%FH9tI7lTxmfw z-g^3Q<8%~%#ZsuEkm3=bI7lcsz>7C_vut6M$=@T5$1#R8yH+bE42x`!BAd-;WJV+b z5;7fnw6Qs2i!8g+S&Cq!dkpAwK+~leS(jYuEr!P$lcW6N`U|^mEbv4WQalb6FoIG+ zX9p<^!sCs|QGgX6Du+e7Cx8wHLhO9eGhsd-2GYBW^Zbd%=vY(BAmZy~=^P}9p9Esm z6R~E+yuo#`kk^x7<0l)b!|9Q->vtQ1BH2?wcA$`@(w}NA?3MVlL3pZBd8ShFqbpSj zh(u2#k#wi~x{D32Cx)l5geYZJq7o2^o&h3EoW+EhZcByjg=ZSY?dA8H&Mas7#Owrq z7T*9~wsefpEbg*?w!u3pUzS;4B1=vIi(JnE7b+iIfO2JaV?iR$^uKy8-*b)8VNR4G zl(+n&R&26Ak8f%V7Ttl=z=iO9<8{_8z)BeC?+k?O5R<*3aS!#IIR z^ftj;(pJB)d^)y0NaU_`-fx$m?-SkuGIfJ>`;DCv&bMjn8L~ONk?#C?r)hEcLIpuz zxeAG5-X(y#z$<-kSeU}lzOf~icw-v>oQ+=7^ZOi;ao& z-^qS^Sx%#u?O9mV`KU?SRWGRssG5pDRdP_*$Dr$2VL{29wR7jTTtOkZU5+J^Lxs{7 z%*I}INqyY(T~e&llPX$SCv^5Q^Z_srhzeLjIZW4yKyP0rW`|y zM7B?X4KCEdWe7$-u`$u_^<;%qd@*`(gWmS{X=8QtCj?SvCMr;=;4@HwRfL7*skzC} zn2@$Cahtk4E1TGi+TqSm2+CZAM#|6erO}vS4r{#SxzcrRk&Bwr>C2xtX2(ktNU52q zK&65&KmmLxRRuKY#~Z}t9Oylrx$s33a;{{kvo6wS99jBBaO(LI^c*VivQ=3-v&L50 z1}$}9-NepKThHAQzHA~K^Hc*-6_zSOlKLy4M!-@Eh1tOav>I})XlJfHXojz@guG%q z*)Sx@zXo!6gMAG(Hf>z1I*`H%UpHMd^EIaI*6O~Bdp#Y3z@3#taDj_*JR zX16J5aT{joCpH%Qde}_(uFdUI|Ci?~#;+BpP?hz|okQ>rW2C_l?vMBS45k zp%?JT`U9}Su9nU3a^doPr-26<8hYV}#^`XvS@uX-1|!{%KnEKyHKyjodYOSWnv+e` z;%4}71wVy?+lT^e zPK%eHH6~hfa>CuVnA(7#GVwaetN}($C;ZIhTp-!%dglyP6?s`G@8>Ka@WAqqmdjv4 z+IvS-wd6+C@C#GqC?Eo<940DIso?$-$LV2LNq0Z zmB{cV-)KUgU}uPDu8H_F*>f&4gx{I4t@Xk(I4!CyIRc$}eh)q9IEtMbPNn&S@jE8u zqx(mJBH157c9@Xyv!=?ymNwI041Y3K$0Ut7Rn;R0O8!5CAC+@zu%{vaVEtaEFKR~g zWT(y`{KeSU%AeJ=R-nYv9sx(*zk(MgtaY#2MK4~iE~&p6r=znpg!szrpmTU6{X0p; zQ!XctHlmS(O9aGs7XD$R4!b!aC}kBIDgOz|qvbtqI}b*_xH|}wVVO5{+UdIt!oN(y zdG%#&h$_NTWAG{J-w>rAz1-p?>KIl@_>T#3RJp8W#ZNy1llM5An&C>~ zsf#z_Iou%?LuLG|82$8G*CvUtEVvb3Ck=WYgsT{ZxLwbi3K+21Ei z6>{E_9Op76z4!sfzC|+B_2R>>oE4ZG?@HFlG zU{Vc8?t{RM;Y7~~X~chvb4JeOkYmXXHdcqdAM?WN&l6IQu*qGa3hnkRV3F`w<45kDgIPKrt`Cn}!ft7)%uK$a+(- z!de~7&UK{C>%TSRDcsB$9V1%IsC+|6wKb1(J#KEww$&>uVvVV(gr}NYKn+?i8@QPHng2&DuI^%2dg-H0 z%nG6lRK{3bs<w`BJL4rz5PA(NNN(g9hiYr9abu%2 zSH0q_H3ch8e1dl|`JHTae%lJ>L=hxh+S196;XcLHz5u~w>crjf1;_jD4$E86y z+Y~qgN({Ev*`Md2x^tiob+0_5(SdNY30YfT6hzR{U}9&QZ~=~-TfnK6FCN5_0vORL zhjWe5G4!U4N|>H=SftwuI+)n=vf>!emDnOrSmu@OW=qr4-F?k@iRayB)SK&HHp5c( zELjCjCFem2+5rruy+NWhV18X75Ax=XcIYoO_s)uoL>)w7yXkRwo((aUz5}14c0iQ6 ztYE`w%#0LEUwqCu6-)zbZG_%wlD5|ukwh^Xo~p|KP)$HhyPyd(=q1_e+t{^h(|U2^ z$T9um20z~%`X0&GR>G-yxAM;Ud%K@Hr7n3yO(qVCuL#bkr_l z+O}@FTzkH|7%nzdcdP$){(h}QLyh-f(u9)3^_Ay!7t2{Yw`|^~n-|hbm(2OYJxzvVPZ#L1EUPk@sDh=27Brwq6++51 zK5){A9RvQz=rll)YzkypKOXB$(8zC!wdgYBm!xnR7G+Lg2M`a?0QZj+)rVNn0%ix8DSzb9>xA}r~7w%~8 zyl~rw^-YGuUT!KJ7N#Mp3`?bzsVaPmx)($tXnkZ)I5*ed+mst~Bq}fUis9a-&9OYO zg6?pbiZbs5nN?FEU9h~b=~*jpQd28A`_ZCef>R;Dk@J4wL_Lwni0z%3&c3aamtu`p z9K>Q0^uqm()loHbmp@lvk@5kcgeTIB7g<`CXh2>@gpl9|8m*)86GvZ`iHRXl@;?at znEmzRt2UeS9XRd>vKjlq#_Q?q7Ta+)7c1lt8VMf)LJa@qI@^wZ`tVR=b%b0PNM$of zkfeSXsA2dG$JMlY{oe9?e@OzvA8!1Ph?5F;b1t|hL#2dAKmxjY*k@C6Sg4$%iT{M| z%-NyBT5~((9s_apJl6Of>sajU_05?WgHA<{gCf+wT%7DSEOW@BkOcOH@OV?< zX>Fr}Z}Xree*(x6j4XnO_u0V#DjS%dXaam|oC$~pF$$L&p2PxRp<$0oBexX&WaD=@ z;t4|bxb>xoNam-28GRiLy&;E7Jl5i=M(${RhNJA3!uU@&PT`n~r$GSgzf|CO>w~mG z4aEshH|~|z{~;{C@-x7QQH3sAQ%70HKR= z8V-IPgl8MIqnrt()J&wFE00PA&w&C=E6i(9746&~$fmtL-5?{}b4`t7T4A8IF4l~J z%AN;h814#w=C~*7`6j{<4Kl*htVkq#0m#tR&@ATO7dY4F2Q%S?#^`8i1ksPcLdaddaf{OBJtz3T*l;_?RMhc(qaAMgF3u>#2C}w4+jAgoLjFABy9|+S;EzdvKa+IQ{kRkMURQ)!n#y~HVFkK!<6FJBf z3+wGB%i&_p&EtllNcavAqLbmaXiT0%Yp)y^v$PoAxe~si9oBg$^1Tau4dJuFuxf>EU`}a!4|3Z}re%-ew1mcl4;rh(q&KAa zn!T<#AH*wHflCn|f{0s+h)NT9Qi^(abFSZ;X~y%jK5S|n>xKrYYAltvvC9OM^%2N| zAzJpiEVTBe!v_Z8qb9~-h!QAjDMbBWpZs@zbWj;Ta`{mI)I@K=OVDys%9Qc6jQZKWn6}?pXpol(7Pebe{uV zh1;dwot{n;qR$)Y6?D5~m}LI~*kKM@%SKz?EY`Qg8OZV3iygJ5!WT_~W98GZ^xZ90 ziA*71q7d^7W`SHme7;nQxj1hpC)lsD><=ha~g2z>E>O&_MOppNZM-TswT*s2w9RL6n#YZSol+nZE<( zqZ6~Z`#POQ{vwj}oIFwCyC&lj$x>rFf;l2OZzCy^QQ`NX@U}uXYH1|I1AUrutj|)X zsVfoRH=TE{*Xdsw8D^r$A3!AL(xu6z9J;OX(u43rljP{MM^7sakjy^7-rwB;ipMbYuT=&HP!Q+em&sZI!#jtUmgCgHg!H2=A7=6?3OfJoY zpBbH_cOrnkBoi@~N72amb1lqE3Ac zl+0*L`B;Tja8ma#p}S(9CD*ks$d1lmnKH+x88Od_P$c{{2#1E!v|D^I+h3Y%?~p5A z!f%ZEiVdYh$Q1Hh2tix0X**`l;#QL*O(b$P{LTb8dQrpBdSa;pB8h(wV)bELxPR*A zbsNhcR>GT&6iS>WbBN^qBY1BvFU*FU4ljWP+Y`f0jth{r%IMerlZkMgE=9aTM=%us*4PFe=)5~^{wZB6Wm|cz*qV!UJ0J0QW((m zLin4h^t7busZ-aayBCL`NcMM-;d{m{dm7%7J5#T}v?!hnxyPg3nF{|f_MP=*RK(M- zTKtJe>g6e@>Yq@BDPzvCiVJDE<8l6Fay;f~W|66uF~Ah@Z-_uRC8}m|^PT*Xwz|oZ zIxbi}L$0FR)N6P4h5wi;M>u6o=-g-;YWy!W-c&S}-QQeO)y<{hN+&QX*5P;{l$H|{ zbgLI|sp854uPUl$!0I~Dx%E{{g`+plpj1be%;wgHOdVH+4h##${ih6j>nwETFnZZ{ zel-)aP5!vXs4QaTD)M}3PdDMI=IT&0WMWIbk@^DLI9$VII0lEx{!vZr43W&&1oPpk z=3==${$1$o=}K(Fj_#yH&&`Bu8NFlKVGMl{mKv@N4LI(qa!xAy+b~7l5|3isHGrP$ zn4VqrU&T=MgIFp*@2%jVxcwjw!*+QwC@qUz*QBhgmr}7TV#`4hkF@)Pc4*mAPfrL3 z80G4h9TkaW2l5?@C;s+2dl5T12-h=0$1-=$s|1%{I)|88q&x_e=#5xg*5|`K79_T} zJGH4D4mM^-Z$v2l&P-I|QpF)q0dHSl&Rke(ccrQAX~=U^6HQ5Vr{sJ)w7~0|lJn}n za~@9BL+f(=!D99+rx$SBgi{n}GB{A0>22t!{~p5~=95oWt>T&j#y64r#2$PE#5p>$vuE)Gez<~UK>#h27f`mzN#N!c1g)lJ;O8#TPf28o2#}^4> zi*bs{Q5bG#DjZ8OL{k+^aOf&SQ_FGCa)fBHVVj>6!*(<7!hpHdFe#1#85+NtjxV6_! z_ljj(4ElsW5%5?U&PD_|cr~1~5{jzvKtM=wGAND{3f~dX@gR1&Hr*uLv;HktfA({t zqu4t@ER0jReOfM65fiD|oWgZQh-|1dN@9eF1Ru{XFU)r29Qm_MnxkDCq?VMW@>WlofU-70 z78d@aDI%SW+#Dh|F3E7vZpO0+&o(Iz6Exa3vA&LkB>6cYN2ijUuDMv(7bUhwouTP-I~tYb&_0bSArqWHa}kZf7r! z5O3?wmTktiR{o-qK25mTxE;+l15)xVS+oTNmm2N?4OJfgDft3&@2@P+%kiz@l9i~S zQ(rYOK@Wccmnxc2fmz8Y#T;zzX*wJy2V`JlOQU3{wx9)uYG$~r4@T~^36nf}z*G5|`}1;0rdZ)x(Wi~oQQ7!q zt3PudmnvqU0!3R0qHDud5oV3rQM4oW#V8WVx*)?KQ9KhX_9T}Y8y0u#inoI^ZQ^iT z0Y<{z+1nNTorqDGGd{=X9MMk-4yoorg`NY-hx~x)M5&%}I$~Z4q#u)sf*UZRQbC_D z%TRPJ*K~Y=5j&!vhhk+iAaY#>u9M_#ee+zoSP-5sZYmF^W~TmAuYS5)WTo^0q$7?( z`XX`3q@}W+7=}8FSTt>pfrSw4%!cvEx&&5qrWd1!?9Vfl3Plbaf%lQJP4#{uF?hPk5iZl{iTILc(AeFN&cp0)X4SX!%%$7 zhky|7ay0H3^TEqGa|av2HQVclhZ?;jX1FHyV+fs!9tK7D`c_W%kn=%2+@v@R1p_FS zzx|xyQp6)50)_&Qixm%9Go3^INTYU)E<-2AWn*;x}oidv3FQhI8YA z(~mY07f8;Uno#p8MzT=hW1tXo&&qKb4#UTq9LL0nDEc*+C=B%iN$$si8&(uYAI5sf z35wzIM(gm~5BWk3=?3B;&V zJ~Jaas8W1k z_UlM=3VHzqT~7pM6ZCl9YIvd1J7!r`)ANW!q8EXv)*G(7Qo~YD&ef3x{}-Et|EV{; zKtg>lfj&f#mX}@R!^mwgve1p5Y)ecuI3IecDZHm-tr@z?$XaX4KaQiL)|WvmEUUrP zY)5Jh{w=2ygobW%2`@KMj*%onsFX@Ha=rqbaLX6s_a>xF5InzLcIAav8n4G~%1yFL zJrb1kuL8Y>i}Jkd(!DtGFs$%u)8O!FHyTyXqO<9D<(L(^BcRDLxuhfOi>f|!Fu4DDOpYNpFW?>6>3*S|fpD>)N}MYi{V z4VE%JvEpOjh+vj9PY>@kPRAlOL6nn;5+a%32WG6pLR)d#D!=6COcUbj3hy@^=heUa z%4SQzr>YM?6_$_6Vb^K?{6Ul9a2kvYyN-CI{Sav3AF_5~54m$t!-tLC;V?0TQ7tb! zwUshH0vT{6jEx&k9UDwaM89aN zu0SW6M#D@pjsN2MdXV9X5eVD!x!-Oolal`=4&ggH%^BcoAO_gJoo#CjGESWt;SSt7y6daezXVi$Ab_3@8 zkl!{@7uFY*dt@Erp~~+-CDt7ozamjE=mW$C$j;jNu4!_tI}%8XiHQnSD)=50!17?& z3LKZQ-bsvuxVLbuaqJr|l`j7Krscf)@*$*ZVPY&kRs8^}FqbJ=zwtJwADRf4>nr+0 zs*p(cBhaDs7N<^2Vl}kFkB!aIdJ}-YaRnF&e*!{uRd(`9Jn9*nZ{*~aZae&+u{ydc zqD0!u=HzUe6B|*Dr?5n!{>DT(440v$WW^xEZ^3}R4P#|) z8xiaP9B8}L>n(@h8K0wXBajvW6Qu)ffl39xhXTx@OMg3%V^7lgQGYOghqX+YD*gn`A^C8uv?c5x#^YHfsE+K4P-Ocj*x>TX z&Dz!Alnq;<75-&}j%hC;w9YUgUVsdbtp5h9`tP!{4|ENtu^{8Ye~i>&HRrbaDQ_-q zh@|~5Xfdg?DRS-rlWs3uX$@mU9mIyAw3aF$lK9F3tg8XzJG1q4~wI4cwnJN(@;0SH$!Jq{Z-kCGH+m%C}GU4kY5)yXfmOa2g3 z4Cxv{5w2nU4zF&`1z3qj+G~RLV7zwjs;4-nglie0qwlDk;zuBIT^n3SXc2S1Ig#If zXmi=?7_r0In0@Nfm#@U8mi?dwR$#fq#zoWDHGYS?aZFDwSmfIud0LELF(qH{trm>v-cFh%)EWu`7VK8zY0Zy1P;$S>Ou4wIqPCK0hB4=EOBaPBwH|2bk!%!qV z3WVs;$_v_6H&1i<{N^UZ;iN1BYi%q4IEIZ%ZvmwZQEL0=s`lk+kU$oSo;Bjd4P#H6uotRqi6 zJoI+P>zFhWMtPaw1i&!KejM1fmqKXXpkc9f(kbgNp<(0>dwg899uY}>JgAS67q@y_ z)h1Bqn>-lh_NHZ*od9)*3ritPWP4{Io1q&xv3*Ix8N(VAgm& zf`7k+OA#kR1R~WmU`w1Pu*Bs#oMgOrs4s{iw@E@F%gJDYYOxDYp6mWD1`Ll1y;3TBrbr6is6?F)EVLMW(QA)BSQy;<^rp(c~CKN5E zQHZ3T0QJp;di;@MVZ8|$6YweSW^qF;AHUMm#3*J1#9)$v;ith<;lf7acFgUIVOs?t z(wqsJgJW^aIkSx&dfaS7J@sc9m&d@58ClRJEYfWP9p-IpD~N^HUHjsxnUPj-wsAT> zES3@J|7LcO5LD}cr>+w!XJ)z)S z<8^d5gwYpfBH2e7CfT=w{owK|FD}U-5w;nvYk98nA_zqy*?AztXv8IX9tyU%C5sl@ zjc%>{NsSRg1bs^;@^Iwb0Zs%(%giTDno_9GPUCZo^|^Ud0fjWX_-e^g+qS%Z^X5i# zHkw}N8h2G*VswO8LjxZKu;%<6RfX7Y_{R)R*<@d+t0ZWnT!{1wXY7P0Jlw zPP@pYIa;@6jrBmr0FC^#pMgl?yMq|DPe@wJ;vK=iVTJGsA_WQkqneI z1zGqyc{g#dzgy0FlThn!FD>o0O^;(`bA-cq2$dQ-&;Zv?F2X}slxEbOV_n4Rq>+3)^6%tTZGnmd5?S=!iu{_{9B<{^I|a#UWHw_W+iM zjWfB2pbIOFE@Jk`I5P+jH3g0`AciVnA`Mpwkh~8AFUG5~Ss^EUcEZDrb*=nK z&3HuwWo3d^3gF232ynvF!jf7aL$)_YAF&+7*@7!GJkr=5eG;(>rCtq89gl(zbl*;A z6-qKZ+C*JaUnHxaUj>j+=wl!hjs%+I@gAON?Z*K2$C@lhm|Dd=v^fMx^2dQ3HIw9N zk`cFC4#MM&*OkKm1`;i<;!7#MPXjS4JMJ`I#;|D|q1 z{Yl~JMz~h~q^A87L0^=KynBkA&j9Da0+aEVy(8J|(>jl3+*Xx)s!!Mm&V}<)*^XGZUiRO=WmweFa$2WyHmeM*7cmYrZ?T z9A0Up9%Ei^YL>gv;%mp}0vah_1xk1sY?(B-1iWNc+m59vY=@C4#j8!lPRUi%aT%!U zu+(@8N_!2Y9Va9{BLdzB@f?TOn!tP33tYV!k?1J)br6ds$XxFsJ5lDXqM1SYQpKB~;`X9q{0urDVtj6YeSdKf-fY4g z_FjgrRVhnWP1lFXsP-*Ti%1G7v+n$YT)Wk zpVV|(M9}wUf-V@qk@GX)M1*M05QzJp-HwBLNZ;1NNmKuXkQD1;4M5CBHJ1uj}cNSZFWcBxpro-{c4McTVst8Hy zFM%4t%~?lLWg(=6gWiB^2VXWt7fa@v%8+5Jq%7&7qSCKGDJ;gKu`eeQ%N1f@H94ND zGSb#pFcN+Zgy_tLpIWQrP&Z|#>UT|ur(dpGS{uS7`}e@EE^#>xb+O-~r1%ji;P2R> z%_0{jnI4OwnK8EK$0oqh{9}WS#%MJ9S3pIXKY>hqgPfDXHbu!|=Kq-@$LG&s=tsz< zbC{(5DXArn7`Lvch@%GY#rT;~JM7eip|sU_r2RQ)(f<^N61AwYqdKVwzc6-(b!Je? zZz+sXWnjwqC1uF`48GLHMcIbrPUy+Y%-SG(sq3lfTOhGJ)N7mnh^#oyc&hC~6w%y@(rl>9XYX-h{#yut@j%jvbP8!YeKe-R zzf8z3$x+iRihwGo_){eZb^RNbF@26z zNQ2N4v{ag&C?ILC3R--@+#caw`Ga=lTAZ*Lu4eR(n1~!ytWey_Tsj|Ep(*6*5P~kX z&<((qqEqr++c$-4mX8w$|9apj%Y0!WpS!=$HnhwB)-qi3yJdoLrBdOuLB-4}O$rw!cOHpykhXYAS- zu4}}Ok-uX1cL|TQ`-AondE;~xshYjI1zYX{Ilwp_v#yG>O!HtQJP?Ej3!$y(%H)5x z-^L>6^^DK6l2usb97ZGIK_EO*2y@17ewA-_$6{NDn{cqvJDkBeG_BpabR|0F90EDV zh@46XysR=b2htx(079qPkpusGa_qqMP1pI7uVySUSXE`IyqCX?y|CgslcQYw9NhDF9h!FY(E<(+|uO~7RLM#ksZHdD!$kjQppu)z%{hp2=p z+2@6S&-Mqh?sV8nxKc($Ne>~B>n7mB#ML(-s#8YJ!!gtPa1+$6FYMJ1hh<*MzbWLS zr53t|!IHR0!_7>ZqaKXx85E0jM}Y1Sq2oBAM^UGhwmR0cS@ zt0=-#(k&qgQ8&2xXx)yT94~HV?5OoM9ToB_aS?&;MfQ$fz}?6hHJGzy75ld`OH ziqU%vtAvH#DS1)HqEpNrAVzKX^5Qc4jZ;mAW9E>#V6+^vWb(+A`jFGWUZ}KiKsDql zj&QosuD;R|j4yjf(5abLep$q>ggY6fqesYIt@=%YNZvbx7faar6M)1}Yox`EMr&zt z7N_3a#T4wQZxdxO)lvSj#6U%Ng`&#OE;|e4<|jE>!KC~TK6?Ts`#P{==x~~NI5qDK z({qpdqPYTQUG7x93CO&quvNR2QUI4lJ+C)~jwsI}q<*^MPjp_DSXhJ`pzUOL5e8i3 zJXo~OccW=_oEW_N(k#(Z{FxAsc3AfB^z^{EvrOC-b{HujX*Yourg`2|((S>A8O}D& zJINo^jYgxEN&!W-bHD}*l#7y8TWh$5WV6vb`g#IttzlveIu&h!A`CnuX5H<*8|PXw zb3WI^I09*MSgI$N&d=x*Hl=KZ6!eJY8ZafhvL{PNhVf@2P7E~Oa4WyWAL8|@XDlyvHpw2$0QxXU&Glzw5;4=*EdSN;&;CMdMy%U#H&f$SHX(|Z3=?HYa$g8;_;m5t z2)R3J=a$Xew2T_PzO?hXaFLNae7b~Dawdi_$$odRql1+1kYe7>kQ*h#azpI!R=C)h z9fnEdo^$I(m?JgQiE3?K5hJA9KVJXaFMBGN>>s;7OcfQ8(kPD_p)3 zuA##?Gaz!^3tZ*yBU@Gt_cp$@BB<_5R?k8*II`XctVauA^$atfdW2(8!~$Fl_caX; z3$KV6zi#C%vqcgryC2I#tP%~PjfQGpO!aeRsXN@?v|KUEmw@Db0C>@%qWV?nWl0o$eB5eyH&~77>evUlEBf{xA^1sI`H{9^mkMxbZo@wdK?owUj*wAZZ@~TAkk& zzqQQEddunVo<|zD!`a0TT=lhcpyYoP_%UkDi)#}BJA=j+dBR%2Ko5T#H0N6ja{Tt5 z@Mx3a8AS~)er!vQK&PI^Ko9EQsBSogq&?QeIJ^KkELD?B7rOX}O(~Cql(Iu6UfdZT zZ}h8o$V4czJppW(eN@??*xWJLzSIj(G+sxfsv+r1TPkPU5|<*L1Q96xY-SLr9NYSH z-Kph9I*d3x*ELqr*GhoG$rTs;CwkiDoVfn1c&6ju%UIIRn@;l>h#pYyJqC=i* zDjijbFqP$Km}Gw**bz!>oxVN9qpF{8+>RmK@+!Hd>_H(({Q^)U@^F{T5_iNCptmf^ zP3Ci*l#+a{@In*ds6HF2AB?ut%7 z1&xfa0VCR+op=~;29=9Or}|5>_2{+6>gc!$qD9L@x@(k(WPTl(F)O_s&e-*GVs1RY zwz1TcmeX!(gL}QPJ6gN~DfJjg(!T-pn7EY(Hu23#mmJ<`%#Qaq3}v@e8Y&|qiQfd` zs--ds0hg_9Z#G_s(QHhWyb4I#w}2Mo2$+iSX`~FcLrsnaH7$@jU{%q@MnT z<S2*1 z)|vcv{0{-}s*<}sIUhc3c*oY`Nrng~50v*2py@sLvY5n1RwV9p6H{ z%5>r=LXqlopt_1s%}j;Q8#=iE>83-^>)Dz5pmVVCP$6*{6GBzi60_QdyF( zo?vqr#QzfTQKc6am&2D0*HNV#Y#Vt@f%=7w=#on;G0I{=vI&;ec@b3 z@GSspb(ss_HaJgpnM+`E)b<@f;d5fy^}B}U_?$4bweHCS(Y^;XSRwXR8k18C3$TU6 zz765~Mlhy`E$@ggnnxt@4?v7{;kdmGx5oU?xb7gokElKPLtHOo+2Si%lK4LYKKexQ zk#(n+!;cNz(I>_{5jj2+_9uY7uE0*T!lXoiY?kg}5dP1=9m?fmQsmSxkw+oLPpN!i zLCzUi3_mk)hw_*wg2!jV{v5Cvge5Ytf99sm;TMK04|T?iPU)A!uZ+Us@U18pLn76$L4_en?<5GnF?`36RKCW5n7;)khNLO6MqzA(-x=&l z^(C_qGsPk&1hIb)Y}ndpd$JPJ=`=RXb@c2Fc@BRtqOJ8r8HDfnZEE-!k#d{|scbVGBqKe=%%FOR#Ja-IB!rEAY{4w&%j%4A{|Ywo^rI zTR-=AK%qNGhj;wL;2e!A=1E1Mz8Na~Ct%SX7L6eZ-V0zClV5`M*R?wtcvgRQh<0jsuw!0`1LGg2-1EARR@qWE!qwu#Qo*xX4Pt zs}gW;OT4OATL~a?#Mj3Y0k00g{iXbD1Z!Za{~Cro#?@t6MhtoaM4D@YM!VjQ9_A9R zWdx2QZpBPdeM%7d+CYY(a_K^6CS1p09Yu^B5fe`Y+>cUc}LOCXwZe+gNJE zZfKaEo|)Mqay-%u(UDgcg~u(1LxGPm(`e$e*_D$)7Q^8yfsJ`0Ye@3P<3089|5X@{fQe_i^ApaF{zZ zjCRaKkdw1ALlrFr60+7G8obMiu1cS)t4iVPBAJ+=gVA?gDHaF z0pQmW@ZAqw7HOMS={66sLg#O>sJ!vZouoqbbHb5js8-_Kt*|Lu^(j z+-W7SF;9ez&xE}*VdEjc;VvtIO$P&O{g2Oty(?kG-6hKxVeLv_W1grsJ`;8wU@;d* z-5Ip@;UD#chBJ)d4Ef(R-WBGKPE?i8p9o0C2{59XY{k_-`09*DLDXee883k(*~d7o>Ljt|FN5tk`~ zZw2^40-ox{g!Bvjo&>cI!Zu?WyQ8%o(HOv&R)IZC(0E%z0u?PxTh(LT@FQnk7|#+ajq zT1b~wgayNPcouSNl?4=XTn3I@b=4&RscCydFq+j>S3@Gz08|L$wy$S(AarJ=63EwI zG}1G#_}3>Y1uQ`T+6%*I!XBe@v=`=zUy3P$?*%w*o5}vZu+Oj^-8Re_$&~t&m>}{p zkP+38M)nlU6D~Ib$5>V|tS21O+zT`qF0;t*aPO5+WclK2WNA{|hZNcVtZ?6zP-OWc zMV2PT{Xl^+E}lUc?r-ppF>d(WLc%`4V8!`4H3$z}5v=BkiV^%WWn=w=0E-$a$Dhdx z`|=<>*nk~1lDP;SF{t?=06#>)bM1|GPg|e0_iFZd*2Q-!`$M6J(t!JlQxL zjvR5X%1l{y*oz4ynd7^Z5XtxyFk(DS9qGpY918BK#^+ecsOU!{3`w2_5{v_TJFVRk z))by@@Q!gHWs0wn5=4Fmkg>>sh@4obo@v+)Q^2xCbW0NdS-{5!$@&X9{dR9JJlj~t z%pWb&2$M{qNc9|0p^)VBVSi0{u2DD&DP@YUkrG6H9+73`4*Rph^H+kLGDYN+Ao2@< zj8>O|0vB36iA8^*!8=-AK4;{}|3ab{fe4oOf=sSoZ1@h#TQWpgc_7+LfOZ2xOO<|e zOAbkyMN{jFpF6zN@Yl-Uj2H*lD^*nfA{1Ghtr= zScH&UWityh&LU*7AiUDJ&Kmtj1~8(w7AGeHO9`)n1ayhqDi&UCe2y-Wx#HU~Mex@E z9BZ~ya&4o*I@WBb+NnC(8u;q~g%);(972Qm_SYMpqlHPa>w!Bu&q)Xr`34~8%+c8W z4Z<6ZV0Gqb!XeF@_ySYY^BN`eX2W;Xq1^bH@)P$hz{MaC2R!bXeygF6S!8BAC}fQ# zU-*e!Zv$7fF~pZ7(~^joi37 zyxWi+HF7#FM{Kkxg7*MQZA0Az5Z-HWj_)}f_fLiI1MGgHaEq)1t=q6MVAuKk4cjqy z#R5`G25QL|OFD-{mJfgh&1qrx44m}ggT~-!PAOAFPYEJ_2*~K|C8RQZ*iaq4y<~`p z@<6nY01Y)x)}~v7sctuX)F2%-j=3T(Qw0AQz;i8sOKa+^&fG%yxKXUGu5pfu1SDsc zF}_=tHvh`^K!V{*!kWHs*pA^#ZhlkSr)AFA9{?&BiN2*H+ZMwQ4b)N5D$Hj^VUhd@ z6!04C?MzO}_DPx2h94V&qi@afMfF*l6h8q)ZVG%}yFWcG0rkeRI-?=NkmRQz!KaOl zHcnN4W)zMgIhQfMN$v--{G2ReMZ>EmdzD(@7b{`OWsEGjAIS1cu)u0*^_H66<(Haal*XH6 zB-rl(hCvxyZNnc7%`qq!x9Jk_j{rmo#J!8tILJSQKN+xN%*^MEg`EF|M1KYmde0P5 z5&mKvj^2}D7+T6HLFB&zSuNVx&YU=({${|Ax-rl^QFeSL?B6MPx+k%uQ?ub8hU*ZV zGDYB&Ao4$f3=a>hOFSfN5dLKhj>c)33#a<46Vf`~e}f4{6B};$j}bVECgzE65TE%1 z{{`&z1vbrjCL|hbqikDm=@j=$V$8)zddD2DqBAa_k@Cs{s;y{ecVD=QF*xk=#co>9 zk(@-kD$p<>b^GCJ2Id%$=tb@J33YWqX;*&crtI+ka1BHC6v9jwT|wS=I*~^s*EPX4 z!ttWUifptE*D~g_5TJ(> z>%9}MYsiis4mnawmM1FSAAmY^bg;S|4lqbZ8)#{s2pXRWdmvz=HMpRo#`O%>(LIQr zhD;GSC5U_wkTGDK+u9QjHdIFex;~bJit%k=Ek~S{^|;LWC}^@TYx%R4BB*$ zHYU&Knax`6K%WVFOTeP8a%h%=J-XPtA8us?W0r2%K{9v2q9hc#ZVfI}g+1MNM}}Wr zd%TU&$it`-BTcTe$YBuw7~rFOlW1~@5u6XVHEc(xkut@vpAtkq7RZ=h#Rk||CmVKe zXW;TsC%mF93kKnjE5YxOLslDC5MD3{e>~xFIN${VV^p}k!8<00vawnsxsWfGPKHB@ z6F`BYPbc|=HHPmfdLI9ywI?Nrd?JuhY5LNxxr6K^LwEF}xr|YM?gz4*43>k0C2QDX zmE*v*aEft_Ib_DNjaU>)V5GYP=rCN${d?h5BRE!m8PR931>`U6Bid;|gKeH_r^IB( zu))&}+2IqZsG>LW4l3QVn*i><{y;;mR~sGe#WGbP-ZAo4mOqdSflwTCkd*wGyiU-VAc z3BbZnJ|oBdElG<@$MdW=c*kv2#k^5|@i)?K;9D%nowgG0z0qhqe%1VT`UpVWGx-{5 z(Gp1BU0iN=r1;M=d`E>uUa9s`e-Vg0o4|v1g!rek4cyU=Bt!bH%VtTO12mZN2yYFW z4bEf5N{)z!yp*>EfT$#JGRd~Pa}Cl_Nn)M|8lMTf6|i{gp6rU+W|)q*mJAV49*A}x z&|nZpizlA%7q%O$!<&-N8S(SKkZ1>qQa80jX5VtZi4m>R@&*bic7X!6V4~QtM|Uxt zZyXNiSVcb=VMuZTNYGKmC=p!56kP|7jw&7jtmB+M67xb};&7KFd_wN{miyt>O<_Z! zEC^j>B#!o9@dhP4(%v1k=+Nc5o%rD|HX?bb>(H4iesiV>eh+}7n$CoUaEakMs;Oj% zkn%vZCea3ixp2>wph<>^CJ#hw0S*1E4cubL%l5oU10G{oSe_AsJ&;H=1tPUcyVKJc z#M{Q;7=hX`Qml}n`MnxAnm3p@#4rz9Srg(tT{9w-%7fi#P(M^ng zqq<_tBa(O?#OfaE$Qau*8ppUIXYzBLk|zT82{hVJNO zBtt}%2cqo-+986*Zdeb1N~6d=Lmx8{p!TXhI0r_;We{Fl2(4a)%ZKgDwZVv zy?~GIN2g9=g52BC9o$n;&dd3M3%>a zCFcR(B=v6)9&a>`+E>xLDGDi`01Eiak{1E-DV_uh%&jou%Kg1h zHh9O}D&~pM@tLqs0qmgyYaNqyYZ|c=o@zY*0}ro4lKN?&R%gYGPJF}Djmptv2QgFX z4q}4H&j51qh@^IBp{ai4XBx>EKe-jgh+dj#BzzVKbta9=u%2xcj_$H}`8)xi13>jW zb><|gJVfQjjc z9PXhvji&MVl?LwUs3x>tb?Wh8yI+&>jVF<)(5zD}MQBT){CEUy6z>BCJ;%l|g7Ww*>;9IuTdQf+PLi{%XKevXuJsr0!n+1%p~k-%QJhsy=>n3R%6>Zn$5D0 z=z&Y1q<F|S=copjExw&4iT@7ZA60z4WU+VUiUK)Ws5zJl-36KV zzSDTmy#lXU4Nf`lf}9%&e7UpI^QFSOO~R(p5;$g*Au2mT#U=ZDz>dOB-TuxE;l0Kv z;YYPKX}GfP+(7X60X&X?`xf^iX5syYEf00rIENm&;&)_<;2!{ZuHV+!{0|!b>iTVf zkl;fgfXyj^66p5YI}!HtVPhEMsN(mKdZam_J-$UAi$os*5lo%*4bEG?RiaeowDwLf zd~_vr6=QD>i*z63drjz^cbnc39X`GyBF!0{YVp1DSS0!ch+rII9*rXTq;WWm!;~q) zrv#Bd1>}-(*bUJ*{Iro=5#unSk?=Eo6>-?fae{Ne9vW6b*IAqRhT-;0~KA zPWqTPvJ`(K-8Vo78`y@);;gMXh41i9BOlZK8^Wl8mgmE0@FH+2;#&}bkH)}X`ELqx z`L;2SnKZJhFni1!Uz@)fBuT#mQcQy{TN3YHH+T3AD zp^tI!)RmwBk>&@WfuBIO{PYJg+W&{f;qVh=`Qlq-X;S`p zLdR#q{sgcX>!)_`fP?=tWXE_Zv0}Lc4h)3wKLtES`-QpIB96uiKQnZBs2lB>D=KG- z;6DdAy0r5BgW(rO;^@-i#vP0%`5@pjCP{w@QuH!YvrE0*;aA4w=w&oZd>4Hr=C6T? zK~X;YLQBpg{f(hIMv|1tDh?2c{97QyC4jhy@H>NbxCD?RV&aK_zXu>Yhd9^|8l8Q@ z8UA4C4l8K|~8&xjrn|DQyE1`)nMQ>HZ7rTiCTaD0K3 zDVA1B5c#is1=&O1$pxwZ%?KPLh-^mhlq+Zvk92ccG>f2oxBr6vKqVujUBAQD|!@U&~x^KfUS0bRuyL_=NI$XxLwF-7pJ0zCJH)@=w^GxXJc zp>;NeyE?#gvn-s-7p`IO@=zzfqIdv8_16ReTBDfNI!U;efje4b$`lJGC5U`&Am_{F ztZ*H}US+wQMezLqeuT)jo+q>3@Dq9lcoV{PjdJtovNDhn-4|CBI5TunzmC;)5p~Dn1A_s8pdp*_SKp z`qTS3u9k!Hg zVw{bTcp~5t07T5k)J!)VX?VxVFBt4kKmK?**=f*NSYDi!GadS2=6Dv1WQcI`K(wQP zhE8+mZn?ut8qduQ(a~ux#!L}4ArSc%K+biV=Pib#4SRK+=6Pm$-4fs^1UYXf+{$1b zg&-NCTzR0>TLbNef@ZyEqZOuRyL&p(5p)|PxB@Hfc|;N)17aPrdV>Yr^>JHca+JP| z3dj^+Cnbn{ERo}p!)wCrR)U-|MdXwq@^L`U?FNw*h0ri?hYeEEs|yC19ZU`{k_DozO^p8{m<()tn;u^8@Pz@9Em^F+1r?k~cgO4xV@MmTLHurW`B zjn9NVov?D&2DaecaV4-ZPlS!nguN4BQ4<#B442L%Hk97kkR3y*WlNfgLj1b`A5;6D zl<-uzt6@8)_L?Q)>LW4Nn&!@&{10^C>kQYUnc0$NCW(Ir@Ub9~j?s%J9!(g9V=A7{ z8CmkbkZ3)KP&hKO^!j0gF*piGvqWfpB<4n9;+DU5ICCYKnk8cDBQehcCM@6nAZ#)~ zhvmyP^}cmrX9Eh&d0wp1S#j{6V|b3{oH9j;DM68&feg1KuP=j(We~O)zQd$uRyB#3 zP#m(H3zkELB^wM2lZLR>_{O+%Ewg7HLh5ax#?aDiPA`eavD0jZ^Nh{$c3HkyfLWRp z+d*;D%D3Z^En3?SV?7(?U2Ru+-!TVF89N~ZJ#%a{VVChadgj#7VrYV1x=q;g0h=53 zCg#HhhP=8_Z^A~sy8(PZ{W^%;TI}}Z^IT}~j=5H|X&L!_><7NWMPNb6tlx0{ril&V z?ndCSn0WyaYZDXETI`NsX z_XI4yEdoWlJvogav<%rXCRnxvP88x#0v}HI{zAOBI!qb7!>VJhh|Uzj+W;@RWHtV- zV-#bmPhI%~iA2*N!hjmxB|feGgx)}e57*22=<9B$6)8v2-d z0cT&O%#o+`BN;CRBbr)kLADOyPBmG(*==l&&yllM~l#VP`k=+PiTSGBOW9Uf!gj;=~F z#L|%mqCFO9sL$yp`|vnJbkygRDWS&A`$T>`kkJ6;Jj4YFm3x8#-(G$kF?g`<c?M4KADgaTHQ$^S)Heq<0;mSkZ z%U4u1fRNznAiyV^ZOJ9FGOv1ufjd4~$`lJCC5Ze?Aj5-^LZaf{-)9-T!-J8}89DO5 zkm%Wbh25Ryz5UP*&oK_iE2K;jJ|&3!Tp+^;)1$X9=!f0md4}yV=yCA2NJ_VA8w&BC z4}6SJOH1Je2J9H2mX@O4CEIxLLO|U_pscSpt1B)fhK2d?BI7tq{&GaCF@O;kk9GF= z!=}LUZC(rsxlRiqv>V!T>ETO^c6FT=fk^aH5TWyxl?5@p7eZ$tyv#TpPKYdDEXFKN zivN$cuMUvoIKB=uqwSEwabO+WAv+{nU@OsCXPs;(c9Qen-QH=fz1wr|o}_b_nVIto zGcz+YGcz;8_g?k98ra#LKHJ|PmS)zP_ulk0R99D5znm0TE)^%<202fdapx7zwfWo^ zqr-{vm89gn$g(ttS2@WM<4M%R*(32?>{6JoCMIW$2Vicv98tWH6!ng@`Cg~J65ix| z=Yu27AVvLVQnPDe?y4Bg^A;yd=vw@-_-*`F_-`dXd*8yqF$izl2u023;mF}`)VGu3 zs;pcCtaEl2TQT5nHb&cpcQ{u7{o?h&oWThpLg%Z5WX%bBFVs(huf_*n( z3j^&`4@<4@aco?S>o3&?Yl@2?B6u$eIM8Bm@M?Q72=8<7gi$JcD1PkhM#%3c@|aq@ zw}Zu$4>;5LQHu#F>JO5dT>$2I-1oq;_>i+Dw9)*z_-gsRC_YRIc44!#2-T)T^CM1> z(1q!#2(LSVe^lUz2td9s*j69g2)Le#;JOp|#|dsVb$z~vq!piV=#-jj&qUx=yB6#x zrFo$n=G(|c7Cz;`2?e63BDC%V{%L}9J}`IAQQ^tM?Bus$t1qV*(JN>bU?zh7KBJm3Y+ZMQpzvKi7Wn9x0 z07LL!COilF`LK>80bgKIefx?41bzS)qaz0C=u7! z$yM%ekX^puSo?-ko`?RX1S#rok~-@|+24e3IaOLG%7z#pw^ekVLBnXI zpE*I&2o*QX#@E2)XO&a%Rv|X&=Ol4c&Q9k0g)<~{M`pY6u}I;!dWl~WpI(Xqoix94 z=makXpNOcu65y{1IA%AJP3o9kHvGnkc7XeQnJf}lB7RE|Y!(*15q{@v3C+SDiSK2X z!u&lkZMxGAh{#ahScdT?+G`#AFwq4KLwej+)Sg`wO->bu6XgZaaadL6F1ubA9q|S6OANS6sLFaOzK-q$ zej$R}cV*aWxUeIqeAhhYb-oz%dJ$ssyJicf;i8V3@LjdaYV*JBMrtocWR6N%#7P#A zFbEfShJ;b6@^CDe%8z2a1Q|JO*!KC^Xds45I$eV6viM}=D*hs(OOeQ?2z}cRacQSW zXt%5OOazbDg1ro3IU=DXaegp+gv&ZIF2?od>R|k_2=2GSznt({G2?9DA-)|DMPp*QCfQ8=#zcohPc`v}^XvuxSn zs*b;TeCap!5e_HHtC5nmXJL-M_i%M*NvJ*XnfM;@TCj%@mPNA{TgJkn4w_Ijd?G^f zN`Qv}V$FokAIq$=;TrhizTuigHlNG%`cwz8@C#dUROPjtZ^Am={4Lt6-6LSi;Usnh zp=Fj+0Y=o<2AV~+unU}9TU_iQ*K2=1Tqm7{iu-eC#n&psh-DL5=scQUpXm&D&7H+S z@#{Lpgs+jkNGF?=6rLCM^@x30!``!(^fL%4?1bw(`h;MRh>p!k4qt!}!3{`Y4i^4H zctOGq9lKF^%-IslW;T0Xz&9drER`KADwP{=0DHw{`}4xS39;Ej3_45maBL6ls~+y) z7?a0!a{AU&RsC%}I4dqnhcQy@oAJ zo!A}*;TFy`At<8ejaZRNNaAXdD}Iy{IxAUKJ;GTUKRD)u@oP`7`}4xSWsbdNJC5SE zldFz&>~qnc9Yz#Kks@miYY4o`Uf^ganP3}b#l*+-3VU)4G2Ds_tXb3RTROd7MsRB< zm|)CAf_Xe8{2W2>x5?r6pkvA4Z<`L!iYxdWLGZUDJguxC?VX{qF_aoz1xGx0$a%J8lkM%jHl}iSbe;*Ti18EPG>i4U z-KA`67CvMVNJMuk6XA%@>|@;7i5g#s?f^Wf??E2N5zl7w&^0%`u11j&9p^-ije9X` zPGTw}iRyS#F@_V(-*f5VI^CvjXgizqD5!TWaz{GeW8DoEVYCB}*wZn0#9> zdx2e!-}nOad`tud3^7cTA*)Uq`pJ&osD8e0#+Kuk3uia6W7C^Lj4eDu>a=E@qOmin zbXsK~y~Q3fWupc*5N9uPinAoV$bxt4TO2{~r{?fng3aJhONZwyM1_xz_XWwpz zC>6})yE{W;S6C{h3XXVA&tGHK9Cz&2!WmA|SV~1xHb)TrJqRBw>-Jv1t;TRq$8W5x zi+s$>DaR1Qy~sd!_4N8|*7t{5hi|mRE5n5#gnlN`Ie5=5hW;gt;W z__$!_3ZhRrX~!0XLxy=rZWNuJ9IR5A%^-xnK=f!AoDxqf&T41JDH`ieg`$Kbo<;J+ z7Phm$vXqf5IZ0#P>ES88M2;Z%y@Ze55VpW@o*250eH6aQ7zcPP{rH5?GXO!KRZxzQ zsZ9AkM{ib+r-aR8JtKnPds4o?i^Do?9<=P(jWxbv^f`vmSBM_R$EgmFy5t)b~uU7f{3z$U)0!9wGVhYgtJRoTTwhN+e|% zu?)!)CvwNH4?D+kgG=_g*PLjA^DwJSc(kz51@BYF65D>glioO^I^a~em|Sq>dK=5F zT)PgEgv}29H4lkHs2$uV>rT;FY?TUDgwczf1GF{!I;-o)n!T`W?x1jQ{Ez#F`;aUK zv%~XY-ZvfqX&0!A%e=t;$mP{=UzfFW{F}?k=@{m7_B+2QK}+iWz!1HBQow)T8uk~k zmFfOYzxh1TM>tVFfRtASpeyr>mHvV7Kqo!^Jds*)0#LLMBJH8Iv>3+bxFYdjr`~?v zsWVW~KZNvGuceQL{ZJ?0dfv$mQq&J4^~jsISRW8w++D$j;fFiV%O5RJ>5(qsuFdbCLs@0dZ)=dH<5ARcz1lCZHk>cDj__y~v#VK* zSKl!WuZk`~kD;JVz%Qf|Zw>m(ofSk`FAUAEgBUR!E%8{FGu6#0`#epoFzX0EI3 zRKk;;{)F>RFH{M53I$l)d#OV%SI?)qf)me^0&9Xk+(^RHfWBt7BZjYRICL!!x)^p_ajPFTCfIJK@LU(Mx%snX5Y{eg;Y9j8lC}WI zW#lM3%VgQYFWGx+>vhm?47Z{zPK@Dg;rXuS^ky}a(_Bs@lFk=UXK9!jp3_}f?6=Uu z`p5~6TqXbKlFt1wQw0_M3rWwGo8>B4ZLf5Ct!ev{xycY!7GC8131dtNCw8Qk`2gQw z1X&_pOcB?I2puHos}}7cBU@W=V$biJ4Q(tXgqOIQltHHEWWv@2bSZi%63AMc$sTR2x@0)X+p$0TZbpsmy`9%`NzOk3*_Q!VM7+otXDYa1h=QG+R@At ztsg3HRVkAtYz+pu5H9#y2_dg!!imHv(AM z)?kV6&E(qzz8KqyN!S3H09#Yp-|dBk*_cEyyv50PwXW+KWzjS@)FTd9ci zZ>3FbEq2kNA~+_z%_Ss!ZGYU@{Z3$_dpqgaR}6>yT5wt{ArfIQ*A6YrMsbkIJDf71 z$O&O=wOC?&CmAg%WIURnwI%Mm;9ftBY@OL*A7`4t2wn>Ba`vg_GOs(dU_7?eyj$;& zougO;i+>`z7%KL`d-)z$FyU|pef9XTl|U_;INwXotK*G|R{8?hx={v*0|@VP)&y&_ z2x8pD9}1{qe?Qq-!T6Q-;Lwi!-Ohp596I^%0p~rYxx7nXyM!aA50Z(ESy^v)OdU6U ztE{K|kaH!JtN`r&bW=bR6uP|&!^SpsweFf%+&NC~o@Lb5(dSyux|+zMcS_T!otHY*Rpr(DVA zW+m0_1g$EZSU*ix&Z>sWONZfvdG25zv=?SO%=j8UzuFtIZhghV zXu>y~eRFdyAc`@MgA?yJ$;;U#Oc7iB-O~7{24Y3Ex=&wZ#oIF@Befw2bh6#&i-gfbGGVmIK(pXm*2EFZ(~? zd(NL=841q#bu$)QYQ9f3?6u=MPW+QTDY&n=UGWDlVKe?w!w^krAweLYGJ zyqk6r)()W?yRvyEBcf=2!uD?8h%U-Y;R$4{&q(l<+A}uz=QysQ&0jw zaRmt#FT*hb<1t15Q_|Bw)7%@0!Vkh~!Y=5aIctJBuE&j5H;yH?pOejuw0?_=bb}qc zSl0X7y|qsGh4UTT{EfT)*sSq)6-Z>iB-yoDviW)Su+g)V>um;LXW0MBc@q+N6|rIw zPXw2iUsDUmW^5ib!=|+hzTW;yW;LiR^%Mal=xjew50r&Qf^2on0~G; zbP+qVzlG~ryMecJe|H{p19&Ilg&Kt4xu8>;ze*7@YD(ddvfoqLwZKxEEW~z5Ltu#G zTrv9n!4)O6hWd#^6;lfSNCg}OMjH+n8fJ&*gg-fZ!ZOKU(bFCe{m^iG=G{ZsC}O5k7Jmm@UK*Ob8uDD*y-Sb7SH0r#QxxVi$}W0 zcKtV(d1kZBDzeF}{y2$FTK`V1^ktQ2aO_s$&i{vN+T5&32&P3haY7j3#Q9Hg#u&cY z*}>YJU3LaY!|*TXOmKw`h6{|J$N~ZD@I?A=l3pEeQFH^Wt_}9iB7sf73Dy7E5U+VA z>`lkuiTA(cts6X}4~q-0%Y*PgCqJ))XAxE!E`VqXGmx1~;rP>!GJ}mXF8YB7;ezVGrI#T|t6>xLo1NNFurzi8$r=U8Py318eu{p=K9*sD0t$&YrOP z;DCi~s>*vfs6m&aOHk1v{2YbV0_5m03yx-dxTMQS=&ywmi+>EHxGzO+#x}x2Yw<`w zoLqHjXG6VjvQx`No}-B1G9)+zIN65dX(almcL{%?j1hPlF6(p&iw>jPma%$OK@|1n zNX>yz(}}Iw#0?qmal&i&oKCpBb0-YLg0X_t%?PI0uRwNAs#zvj{q14q7p~}hxY&5n zW-y|-5-B+0$kutt@5W$D%+)A{AGz!{#6s#ECjgvxUENhAw4U*f8O2ZOLzuLTq3VWd19l$w|E6hbq3V6xC*+oy{Nr(e!O z$SS75*m&tO60BdrniAbKa!B1ZscsY0&BG#Z+19rY%jR@Aq2OAE)^vt1jZa@Yi)*+Y%5OChAozlUe;SfmO;k zQ8_DgVSy7>4|AHiHOw6LcY5Kvt}mfNk6AMZjU~CR~9$UD+GoPm(MR=mU z0cmN5W!?KJD;ys%Osv^OHc;Hq$rBcNY6gm0R7toICD8uhQ9%4}ZIx4-aAPOEO+sBL z93xZ!5ywr)L3b6WEQs{zbXr+R3Ri=4-NL5{hdXWJv?#*C-NOhMgSLv;$Ruqyr8e$- z&DI%aXS=<@-tOWMM*q!R%!FuD`=M>uVQ#aWt~SCGVZ zOT8v-x%uT)oO&Dh7c!Xkv0{9r^Ch$?LD)O$ri3TfqsV#&lz@y|H#MkIa4RXO+DeT4!1z83!#mu1BMJm$3Uq^E7xUSkt&(P_Qg9n8xB<#w z)D_b1^`(TJjG{}@?I?-rIxF+8B~@F;Iy@Q$L(E3f@v-g4D|ehTHCrPM=^SIFj-ET@9{8+=(KNga~$$aiz8U)lX@Eez zrGEsqb&C_9rvbtN#krN7^f=Q1#NnAcuyN1^xONX;1HT1yqIfE7a{&p#2^pBZb_1}4 zY^RXRLkOEiT!D_>nG>A&4$T#zJXfwjiRwgBT~bu^1BD$kPt-hcOm>O0Pl%s zT7Ec6YYSHv=x{*H+{(V$&cV+7TFj7oSC?@5`1f?kaY@8EKQj2SM3T9aGP$IK^GxWL zKup)l!YpMU%BkA{ZF$<92}%?ubv!uaO6d~v!F577!$l>yxog}-^{^6g4~n=6MAVxmc7%6F z!K3v4hI_i634M+tP|B!QM&+Mm1C0_%;k~Gkh7Jb&QkW0!x16ve{**0)%TJ6?nx#IU z#qrK-oP1g2L6~*%2b#Yy9_5EzoiE1toDVAWW@qxvY=OLk-E8X?zc}pMvV7ZhCNzd} zcZZ0QGMMP*NJqPJG<@Mu@3w>wX+{{+fCuT1B3{Ir0B&A(Dg{^X@1$xa}g-eShpX)EI zhqIkNA*_Qrgkx}IeCYyW;nKk+CQwYXMF@js)~v$#{lmbeP3WD^jYU`?lFXsXOzT@y zCu&as7AVjOBkBp>r$JbAVF~+}1ZK5FH)D{cWIvTKC{lwk!b}!uG+Vse%1~oNcL@tk z+_rn#UVPyJT$-J5z{M>#*QYAJiLCzEOe)<6shiH-cpjatNM@H;o+ zoHXISPMzT45QtIhrh+Ku`;nOzsPs-{5>Z*h{hc+z!WKa73jfo8=tC%!<3Kq! zrgLz0Z3Q814|P2WZ9@?D#dH&6Z8AKuK8&oaCD9vWF^jGCJhS+9!o!_&!pJK7Hv=%r z8ZZ$)f`qif6|4{=%rhIdb=u4cJ7!{>ISUHuv%(`?MM4OOP)&wznkc00QPf6{b+*%Y zH(Wen0g?a1?cGjqVTSFHZ$ZRF5Oo zVW5Iv%e>d{XW8HKjU#6F@y?p?s=~37*Uc!X_@6+2I$$j$7e+3)4-vW>^Iazi#lgmcdL+`6t;7jxRk= zp&kwu)o^S0R?OA-RM(Nv1xyIv&hW(hH1cwdqB^jb;uy1Y3BuD|#NC<;ql#$7QT?%w zM%tc1ZM4J7!4=2@vk;!?N)qDI#z$2UOLWg7or;17dS|PnTocGH2gk4PX)m3G+#liD zE+8SB0pFU4UIb0>()1i^VznsG4~G4<`M6R0xh`XZ?_0g}_!)u&iuidXzA=bPzP+6= z)aahYUv%{iwqtw2RNpq#Jl};Rbkq)N1>$$a98V!>FQByRLR#D)z1{X!^CP(tPTw{Y zw1oe2Q7Oha&mxVVs1aFOUPvvpdK9a&g{Na-f4Qu1jAMH+G3u`k!;4%@!fZ--v48@P z2RaIYPUFC(=f%{+Wg1Uc5o`y>Iz7HIFZ@efMvA!`lW3TVv5+EvDaqNZ$4EX-E3*mV zO6R~VXCUlQU*`M?K8YO3B;>cFz*6yYs^Hj`t&tvwEg%R?ViLQSg%iVT@Cw(E5O`O! z)>?xp`d52J&O`NYMC;iW|OKi@HGr5NS*};5Q z1N|GEJ7Kw3P*y8-Q;RDVZ=?#EzNOx73xfS|t`i)u!;|`0oPo1xb;|OP48ogS&?(K8 z!BJy}QC#wwz#(yOrZ{#R*$7cgpR%{RumE@XTU<>-vn|1xqS7xh<4XjVgtt-xm#btU z;O}h7Az#8kC%?VZ=J5;RZLa6;&7~vE)HRHpNAliIc~=2bySq5wvOn;TmfLV4Ag{+e zTug#BVh>xP)M1J6og}<|Rvt0DsxDe9rigi$^WQVAFwRxHmT^hnyQz=821Yo<0AMnF zRv%u}@E(_v;Oj1X^vg&hdM}A+1(v6>wtVnDC!5ek$@nSF^$ML(axgrD064=Zq>x5cr1) zeh4ti<}?i_geqg}Tlk1mrMRPFW&caiIx@lVD0!e*{zPpCvn;QC>$7 z!#U_-CnYM$=bU#!&1|kDIigrUPgeQ?;A=wng_Jtj%e_9$YnZRy0Y?nWefb4fkTCvb zVD{n-z!LIB3SkpjUc*W@V#N99+KO!>{*rSiIDq1lu@4x565E%_*1YOsPSF8^1FW6X(~-Su%$aO^hn| z4QHD$)-+c^0~6Ob$;Hn=17-YV0fBDoXg5Ah_?AmauzfZ#O{nll<+rKwaDD}Z4t29Q zXU6LJCeoSpmHDam3U^;yzO(QhSD0XsRAIBao5&@V-=#{fFEMc5G7Fb3!uMR#gf2w3 zfWO#jl@@f;Fg8@N+6Cx`DWfTP`3L_bdXO`eAlu zWhMN=g(Q57S~t*maOwFa^&El{$#)na#%j5Pg_hwEEq4%pza~TWG zZ=U0BY;Q}6QfhxswRCk$I;h#x(1H7i1Z8Ubnpf$5TKoeHGh>4#5;`|9?*$85( zdzi!{aet+_7R34L?bsFJ?#g^`4e6S&zhw~q<}%M1Uuzt5gDb*CCJFsJg)(T4$?PyJ zSq{6_-cGL{{^42@8j>EjlF|+H;Te|L{z*2v`&r?+II)UUM*Ms0uBmPN5mp#SAX^II zZTOdKm{1-XO{<`$rTXI-CMo>c13qZGI$MENpGJE$o~*V9JCwO&-OHwd3$Vmy_UI%&_7In}{nJ7dQqoIP_}V z(olsRrIwiUg7^n9i$lWDD-aW)n+l?sFGS{Rfw^kKW!r(Xw4@hy{)Ep_g)$x0A4~XB za}lb!KGe*ZZz2mNV1MUP1x#W$Yb%HsbxjEiR?)!$H!U8IOGF72l65f^l5ar3MuOH! z+)M1n5j?CHcR>j=OoxhfRy!N&fF(ucJ!zAb?x?BY)-Yb!peHhb`*^x}0g@UbeWVo^u zPndr@aUr)^4VXx;LQ>kRrGXJ`yt}v_uIhvdi%|lwH`R>|vk^^2M&YMXB?7y1vV}7oKbQ@FTFMXyn&%WRiIU z%Cx=(%PO>`V;95_kr)?!Ll>1`AE_TRExM^7iup!lE?KQ^v1W;C5SlHEGu+r^B$!Eh zDw-pHHvwOwZbDH<)P1#+_L#B1GoPfvK*?g(c5DrYyS|0FBb+Lscdi-tOK76JB`FWhq_bIYvkwZ?^7fbk6pnP>g!LXaX2Mv* z(9H;@*pDK+`D-iwHEbwfX|IH%ojPF@)HKDYb)z{;1QhSB$V+Rhs1W~Dd#8|pPRnw) zb_r9>A6RfBZ(oZoHMgM}2K}0mcrdp*Z|mF%ewlLRsz8bAcBJC$Xt1=*c(T^a2~#_> z?5Q{-3OV;y5DSA-B!)Q3;TWe+7_bCrudbU3=u&hn711G9uJd#ImKM;=!tGtdX8aqL z?}WWp<12jzC(=8RlvaPWns7?x=UIe1I(fpBT~M{vuY@ZVccKb*Xtm3O@yBpy*O1Vm zHLf|ve;@&yDS%_5FSnwr$01>H28K0*GQFBy+hTemAX8jm37 zQX5|CEv_NqBh(wEb+}Tol`3eA%gtWQGM$|xv&|(Wd;{TFJ!*$PzE`WNyu+UaHZiyYJhv{0=BAv0ifVDiG8<)D9DD3KGxYjmX*{? z?r?$o0MpP+=irRtKPkFW&MmWE;VygyuHon5q4|}iaYdXKPkXwnD^2Lna|kQS{5HQT zU`xwRYN6Y zi~_c-{8pxAII-;^8yE8OkDOmIgqkj)**Of;`@$)%AYlhUjxx43mEoo6R4U>Euevv8 zgjY|=N7z$_(_Bk}(@sdHL^pM?(!l5@TTXVl>!C>#&5Xac9gfm=Gdwl(X6%^WG{fH`bESbuTdm^9I-h*n{ z{=G$Z<3hk}xTh;RPc2e-V!Rg_4=GfTa7;q!mlCo>%uxiL5ZdwQ>wq?}WV@r;ROXku zv-^?hEX=#6gwSe-ZA`3OA7-LRZ4suHkOY^#Fs*M$SRYX(TUD9;Zp?bXRR&eR_A5K27$o zJUKTETuy@PP$2d-bW=eT^N`H+Q>fN%_r>LCOl&(i-?0-=!kTMHuxkZZY7t|xrDi|X z911m9onD(CB5kStr3|^)2N({xiiBY%gE0|fAw_S%^onw!);k;r>p%8ULiA{}zG~>t;`O zoEYK6`2ccqdVqAc0oi)+2d}~doh`vPYtI^08AT)yA_;rNvbP`JqG7k)3lDa#35K0a zO+gr)ZsO`eh9}mCkd>psD!g(-L{HhD7N$N6cYm*gwdsdCb%J*Sk-OG~8TEKj@jtBg zt!HOucD4qCUU;}upQpDLo>(72R@?NAnJhXQWGU|HP{2nzWy0_i4=9Sx=Xy;0(K%+_K>@D?6>Z z?8erp1{Udi7WLJA;M%qb6L_J^Gws5&UF7-ofhQA6?{lcPZV0#Smd|xno12SHqqcod z-Dn6WoH(DSGNPr!L)-8-Cp)NF9uYP;X@(Z}sXXQI`1O;yojp9?)wG+{2s;BdQTi>7 zPjX*Cxg0SNsFVdL#YpD=b3M0d)>DY2E`o^Ug(RUHsc;NObj5}jIZcX-wXh;P0wuB+ zlZ@t#%stJ%<2f=fal(XwUJzEmx+&p_^`&HGITmyw^VBfB%=wOOF2^z1G6^K2my?Kn z#OU|Vcb3Ce-@0dOCN#XlCETM~f?y|Ctua&*`AUksB*<*v?lKc1y~;%#)hwd2@s|LC zel?-F*0#`HT(ouHELmYpGysE{Ib*|XoNh-mouKS9>t?17S1Mjh6`Oz@123o}#&X;R zCpd9_f&jSwzAkLq*SU}cr&Eq*Qu5n+aH)Ac)v(HAq0Ne6S3KVw%LELwe1l6!Xk&#e zpQBJBd?N{MXG}5fZ-GZC?hS8py4yDweaWrj0e=xmY;Pvpp}^9@G)5LW?pyiUV{dWJ zgn6J~;^(f!YdEIZ-%57cb!z`be_Q5}dz;fwaCK_VB%JKo>_kWXI*KkKZ>JEBW?AYQ zmI91}7LGB(#XDTW1e;b8YI3=i&_wx8Qr-xZ!m-T*B;6l&R=7+S-s8$rEI9WpS`|sam!|hp6W74G-6D%dDO|>(^?j}- zAvB%}FqOs%b2P*YXoX7ymWcOLL|rTrPHcy98b09s2@cC&|nx={z4yK(-2uL!WX=Tr^dJy1X(GM?{|{ z5seHx`Vt$!4u;P-LxRy-UbuA-!GD(U^o$~*Ji=OsE##2T9J4EEjB#c-yNE(yl>6tL zIbr!+h*q4snFKFQpQk1c0cBSkJ!)%%@CDbf8ULhV9xVjZpqp$ngTaaOi{xahF2(qp zP4^`y#6=Tf{YYOl?Y>MVcAm9SWO11we8o9ae1tI#hP~qiP`&C`DS+-*cNneq55Qma zHRqfVY~JiIGB9y{om~8sbte^vZ#ZLu$u{wzV)1>Gd^Fk0-}+#Ch{cX?IbDMBAb^^h zV`yUhwirtlr*jaK6sX7%;5EgM!iu zKXGyQ94}5o;Rvdg*vPMAxFqtY6uAj(zSn@}lk1NYXQ$Ubaiv*I)Jr6DbatVXj*>k z@Ui$XhhuJWAQIa5pIp=Jnl+USg(8f2{!E@j0TiRDve{8K+lqI8al(WtRtd(cWa*b8 zuq6DI5;*syC0{(7c?UxX(Is-%JW_?2q5n4*ld{c~fU)yvhL)VaQx2{DQc54B1Vzqw z9K+lT|8NNji#`rwGW?DgIi#rnN$Tr?niC{^>iq0odUHJMG|#69|8fw3IrPGZZ z#7iov`#06mcr67ToBRJiE+%35RgYVV=*9w=i@yK=lI>8|inu?yn0OQ?KGV|rpR*=Z z%o0qj6XSsO!WV#-*`miaWwT&MMc8s8orO_e5dSbHQAh}66qsqy%@|}Uxe%3@aTHT4 zMt6@6bAoFoT-YTfOhL29O+j`&f+*^XkeVHl1`EEo#aUm}DHA%Pk&!|$;<=c3aMmGb z_|v2~t(2CQNI5NhdmwQxkxR>r&*pE{dHw<=t$O_jLh5e})k3{_nks$$+sj={)g;QR^SvpnH1z=+~PSFPj1lAU*#jWw9s48s+jGhqqCk*rYt zt_D{ku0#==tUT)%QdrxOg#M^-Wfzh#erfr{bm*qKmLh0rxk{pzBg0kye`z^VTCPSd z97{`KHi*XSEMew~QS9n2A!SY%<9@6(#sG@=5E66r@L5=EetCh06jr+zXibDeoqB@v z!yg|vi7SJO{xH&C%IFcO6f-ej!})HD|IuJe)-w|%Qw0?9jY!Oe`*%-RtPEp$BSaN9_neB+H! z8;lk5SU^$Vgw$M%)#u<=Bu;|jc@>8{Z9@2gAWEONgeTUUl9jI0YD2IW9t;phwh(US z+zB&Q0o69I0;&|;oC-EU0bbP>XHPik6l6JE8T4!wX3*+o|0CSOWh4wILNgh<83!#b zEo!+Tv;@pR`N6q*wwu=s;LXNZq*9r+qwB&EE-1l>DMFg4;tyjvr0kYd#uj0=kj1Y~ z(Ezf*VxE|Nq-#l7$j(7x4I$DfrnrwHH%&uGA@c+?@|5R;W*cj(2j&+ z8gx^I6!-DuF4+m3lE6;b;*{sfPKan?+e$W$UJ5o~FbV^FqH8v0PuS+n38R;QVu4pe zdCHdQ{F2g{%ckHg$qiPncwDmOD1tR0I>_iDa~qARbDUouxR_VRBOVio*^k zO|Xq>0(z=|BEAcW868qiQ_@|*AUW(It$_0;SSaK3ln76>J4s7FVS9k|>U-Nm92A6$ zS-Zr*J}ajJ4r`op2?^m;ju)GJBf12gL_zGX`-4GyZJ`Tq>;4w5XP3JNu?rk`IIKa# z#x7TsuwAnVXrhWgjA4+fX{usH#OM{~Tk%h{JFMg3&y!t7LPd5&u!WtRJ>#?q{Y=dPW22BF-$Qctak(i|u!q(Ld&4QtJz>hLwwI&WYv;FRP_ds% z_G^P(-Nn|drkl-CaS#*en!Z zb~P#bwTdkfr&9!{$Td?OHdv&T!tVPsTu6fbG;!MGm=bUg3b;80a3!G_)McYVeiZm% zUl-@AEo{Rk-r;(W`D?r1f6ZdSehyY}y>r;b6cH{V?k?6Remb zs7WmTFw%kKEK+wS)p5nPyNvu_-Ck?QGPkizWoKHTYaa5v?zU@6a4-tW^ysD*S1RVH z;&7-?0pss1s(i-^bj|eF0(w};-^O(^j(PL0C~<*^)nsy{`WPyST%bs~qpvw+_cxrGMxS-9=WtTx%HLrye>5!y10AN0=&adL} znlW>eO#;_k!|rAcIgZK5Z}Y1vfmH2RQOGMfbz(e**G?=B2V6$Nv_TLiLN_Hmu^uFA z9(;6^W%X1585=qJ9Bjv5clLy#Op{+@*A277jo?bfIaEO(%7_bygYQCTZf&WDZ5X|9 zZ`YB~^W|WsB)`qvOJ!_nxev9B#N*oP_I;iGnC7ZbTBY=zH^dRs{m67Qkd!khp4Ep% zK|46$w3!ojWc~vc9OrT9TCtiE?(bS=o3)6*%0V|9V3XnpP_a!X;-q>jyd>;oF;aC_ zPQ{^#;ejqIA?BcFRy~3!>IadUbBVf5Tl|vo_wZmBkl;7Uv8-hB+by=cjGN7JXeoIJ zm2jqwVGTxA@feT29jv^pt*m+H|4>(xP+v1VlhTYWIS->8M(&}viYJ*3&ta~a)&ejd z?);naFB%4I2QUSGm&1wj5u{|+1w?PQaag$hIka>U;gQaGhi1n3q|uE+iS1E!Yypw3 z2&a7X`M?&T#P%4nF*t*xXL)~dz9}=BhmUpg1Rt~DCR@`L3W<6gMbUwm&mD=wWv@Yd zdG$bd0l7OL?{X5n2z67(5lGQLf%F_OtMerD>&TTex3*~6>!0X45{jjWX!W4@1E*qj z6w>u1>SA}Kx%bYPz^3E5j-KpV63RpCT$q(j<<(>3BeKKZD$C z?+CEXPx6W@5zlnagfUS8x}!LvdKRfT`Xa%S#eU+j=;$;G&vvE+=UjOLG6E*L=a7!A zy&7i0Bm|@`F^g`Cpf7L&PultSW=!xDJ1?1xrM81zK%S_;8x5NK!7&Gd&k(D+}zK}FD?PP|Q!WwDNWC4>ea@zAHU@}M6 z3%{63Sinj~3)cV=qT;-^VR(s?C)DCzXT$4Uz=ZX;u@ORJP{sawvU3EVkZF@y8{zOpBF{Itl3*aR81V<%^(`@4fK+>YUWt|VdBD>M_Lo6@jcfR>i`Qw#eqjh+nh=yjL&4sizG z5E&po;1UvSlQbHWG70F1Z>OoSgNAAjGScJ@B$5y^t7U}ye z_0`2!lxECXSl;JcSwiPsoPwLS;twNp^2i`npQkEz6Pa%>i;_9P!*0IdN)qO%H4efm zpoqUnV)_E+na|J0u>mrH;5ZVj>LE+bLimz1Cq$nYQDUPQ11tV7lm9UAXZZ%Ot-#KZ zK=3=G9q1hhUvUKq?_SM1Py;CLuacV~N7)VtOM+V1QSmkBO;|g~Fk&-_yDKVqqWwB) zIfL|IcZ`fZgwcG%`OZ@iTSODvH_3K0ux&YE2Nx4&qL)0ot2oNx7Mb2PvnPDZmE03g zHVg+y_|Jclx!n&C!T!A_28mOPj!$i0Ez6oB%?1{Hc4xX&ba2@ z`i1s-eqP}BoIAm+bi7#k1v(a8g1%2dhd~fJL^{X!be2~Up^h+wwYdQddYsoAe&9k9 zVq7wuSRKb=ivEYB=de*1nuL?xU~RR-kDNbYF)If$3Hfav@|599!;h(f>#rWBP@6k~ zr!36EZx^so92-#hi3^)hTOD;=@B_OW1Y?KR7IqnSHOeKiKc!f9o0U8q`C%+;+IsxsqxsP zu;@(SA?WVsM#W#bp51t)p+iZ{2U{SJs$WwTlPp<>*Ke*mr!)nFvTwuaNp+HQSZYqdk z{ymvFeax5KvzYmn&Hx&bF`nTbnRe{l&X1l??lxi#ogD?v-kMW}_nm8Slh z?K4nhcD0AJa~E|H3FeYuOoVPmFvWf`vR?!2u!?N28S+JKhsD4tQ^1(V-@?V6KcTl2 zkn!uL22~0!K?R(}#`Vn1sAte+cFA>|z-b)n{3TsU!pd^YUQsmW6DTC>Qk2EXMs@02 z+PuK+>Ye_4%o95Zmv(t);K_zgwFqp5Rs4aI>qc@x`YG|n9K^3pqm^_d{-hL$AP{5;Q;?}#lo7-V2JIdS9ZqD%~e1M@uh3v#Ca8R z7CQ-)itXRxS=HQi*b7&6;&aYT-nB7)fboW$vk&HJB-3eFqQtTDINTt!b>p z&?k5e7mzT3)OfqbLrcsxDdwgSQ|&)WZa|H`%$qd`*K$>-{(#%ojKVR?aV z$1#0K>KbF~)^K(pZ1U^4ri2PyQ&KgUqTfV%HlOlWUFq}eb~shA3+lSgo-oNBUr`E> zBEKHVx%ynS2r#g@MG&s<{0Y8EAz4k;jSP(+cp^1`iK{4cX=Z|v-x`!>`}K4-jT5OLgu9GrsA$KEnK z(}d^H#=W+OJ6Xa1|bLP#>uNj}V7mb%y zII-SbtXcD5kIn@47#LT%`{x$Un&1YmX<`*T(Y8p-=C!i6JjWGix}EsiD5SI2mgqG( z!kH5qw_xmzbu)q~_FIyj?i=5yY8P?e>tcTmAwCdb>9nx(^+*?zV3atbDe=1r_!4y# zMe+NWdmOm>5Ko3Zz(>1`gfB6^yAhsfZ$(PPE2kXm-QpcobW*xa* zdMy}DHmT)U7>;rF1YfWtMg9r65^*d=uy(pX-96~bXq|iMpg&6gFWlb6B-Bnl6}v#c zn}9D-cc3U5^3~YH9p&Vj1KU6t?&zu#LdM1iKGuRu(w!)YGnwvuYsZ#WuZ`56d$DyS z+}X(!1_V58U#0>glFcO9M3UNVn~XsitSv5f4~FBMHNk8XTBL4(mX_nGh5I6_zE?Y1 z?KtkT-yKgZ<*>0Hwz#4MldXzr%Bnxs6G`7z>Z9k*<~H$Yr){p`w)h_ngL8Sj%uz(J zodnkg&bV1QAHn421Sd^cwMw7!M|6ofkz!c=EFm27x8d(zAM?2#&YtkfeAtS*f+Ci? zkcE?#k?iA`KI{v3b*>4McK0D#Ms#DVMHA;vax%1yK28jxF=sHQ17XVP65=&V9?~L= zcupb@KWDy&W;;G$zK{JS)5vjar)9cDLXzMJi>)|w4 zlVC&&#!5;zBbZ{p8`){3RC09S>?QQRFca?X+zCd?gbW=56!GaKrlF`XyeXV_vd|5! z>_F2qHo_|mduQF00mXX{^3tcH&43<0O4qBZ5Ph!$#3$qU#Cy7s89dccT^$r>D_!4j z6rftqAZ7QWGWs*B)`7!76!}b#eD<7FWfMrB%t2JDyBB&!kTCX%vp@;g_Qs zu^9L4wp~|BZj}tD_Uq-K;-4cw{g8#2Wu!$9G3VU8GbfBCW8#(_O_U3yG*`v~Xy&+C zJ0_gOa5B5vAH>5*J5HUjTu_s9vKCbm7Ab+X!=oT-V=ML|SHdDpNJcYk1q*X z7(y^+-9&$QgcE0voTCFS(saWEyX=(bX}~ow5w4K%8ukXuJyyiRL2U!(BAr`W34JF{ zsD^w;0@=IjrUq3CR;hqr*`v4p0^ewHi16WX_C^Hwb4R9nT_Z7b}h5bTIMjYa%3;AnF_wJ zFw14RS~f|&52bQV*M?fov|3Z1gmn;Ob7zqjxl7CHzOFE#dgg#uUis}RTDR~f; z&@HH=@OG^Yv7>bhH=ZF(Fm6D@VhDG+KG@YHID3R=T68lWTzVctJ+$@RpO$;(mU{g; zEN4E{WhAs-hcO*~R|OUQ!${A*vpzPE{dIUAG z_bhEpK!1RJ9FKGn2}7u!k43Q@SJiEogMo?fQRKS@_)42PXK)U72kRp|;RR6yk9OjO zMJWd|X20WJ(K4(gJcbfRO%*H#^0@ZLI`?L%Y?yDT6&kf}Vv~$;;(Q!Axu;|Nhru+K zvuLg#Acxa1Jl=(z(JZ74+fW56Ow#xSYGk<-Gh!@;{xUn#@I;rBP#MOg*ASQ(pF~Es zM-79D7lNl8A$zP1Pj=b_lT|SG{<;~#6#G-iehsi^a{;&i*KB$b6WKr2`4jqsNt22K zs02KX0vPLK!$~3Hb;LtDSes`U?&4Z6JlzE)46IdPE12q!6WFBm8B}^BC@nRw!d7g= zE*{rg?rV4TGhJjt_vM(T&hILly~_*|_ACmcTS*p-yAz^!R}O`^srK0}>+X1@p>2;K zn!J%;Yj`B?ITW|4w$$daJ~-4H4#IO?Si)9gFQGBzRmPT>=TQvTUdFk-&G>=?!ThD+ z`L5{H=AugXewRoj?FE!Z_q5`Y^2jE562t$wl!P@)L0H-7ri3Tf7m}4BtTBR}32>&j zWY#8j-^BZhxv8UKu*(t-pq2Sfc#(@6B$SiI%ENt%gQKk^vZKGxivqpQi}^ZSNw9Od zTR5QsDL8qw%u8J1G0h6&!&Z0|9PzxAJhbV`Lr&4eKm|R>u0FiXsrNKfm+?$O`KLMx zsd_n8(L+@2-0{rn@I|}UgGsC zIavl+im+hD!QSrTFucJfCUi4`uu7qu5}sJ!NLG$e?&zy^94_xe0@%IbO)g@>q|}i% z;4+N(67^<^qT!XLtDLqZn3$3Euy=2EnTPql#g%Mr{$e#5Fh?Op{#KH+t>$5!r`d*P zgv96jo!;jBcWLGy8_PKgEER933eJ+bn#EZBt=R%uYaafiAr=sqEiCOF8_^*ws}{Pc z2bPX^QU_OnYNn6ecNyO00unxigO~!p%V(s76!p7FO@n`axW0<5T(euYVwYm8yE40g zY(ejF-UQ!7hG499Xrg>CDJ^Kaj~$u^hdXxB&x3f(&c5(ICrlWq3j6pgIHGz#sfr)C zE>Q8LneYLpO{i%4rlk*D4=f!YqzVyhCzG4+1MgDOo#~vCu zd1oxe&1r!XNn{h}tojohB9Ab!R*!=e`6o%v@2n|;<{sIUYY+B^&p2tqtbNRKoWMl*SrW1h+c>elAK6!Ndhp!(5XW|Y&iN85b2(CH z6itMm7oiL)`mxM8KL}rN!gJ%{&w<4CMRL(c$Cl2Rikai?woO?bnfB6e!k3&nVbUfz z?>Hu6OU;+5W)swa*i03k@c`34KYUFo|G(m55}dh0Gcmdu2Q4jMrIt%V3zmeCYch0K z!`GbjHu$|^K3)FW4kGxk6Q0ed96dAN3&Vb=-wWSxt_1UJykRRm(SDP(93@8M7};wa zz`(>%$?z?wziacWI#%pCMsgSwktO8Y6hgb+m)>~M$^?Y(IDbO#;Sk2}cSS(aepj@G zEpyyYf?!ox58-=Gn^5Y4Fjn2{X@?w7tluXqqwsyl*Ggvzj^7_R-GuI{dHa}wiR*{t zV*i-!e(hLN5&AR{}N1;-|RbUYFNoWwLRH2K+@EnY6S56&**;JIHoZ^9;8fyDY+Sq9Az#r#XX zvdzUSi+o6k*bBdM>I9!{j$-8b?Ub(^5>)KJ)_c1bPF_52DmrB~{Km->tQ!Y0Zoex- ziu$*t-h?8T5n7p8WM(K#+TXc`guy^)CP6pjprz&a)I!&_k83f=ipl&&VgWN@;SVk= z!F62)c6m*Kjv1Sj{*g*)kdC&H6*HR$;ZLqBp>LhkL^428|C!W`78nVX&2wk}#kmuz zOT@8~7!N7-zv{((Q+l3faUPRf97O&%Cr?;h5lo~X&8!$P#r}7)U$0PEHAzA%@!eW=FA50{a!^s5@`^N$Eb&jQ9`(ZioHxN< zj+rKmvh*oC!0KG1F;B6X``rN-I&pt)--umP4{Vhf_i>>f{N&1Yy}5>!u!9Ixa>X?93Pz z??-zeoCO(l7uRP4GL&B2B_xdZrRe%vJTYH_%rsBYez9kg6ZsC-KW4LV;Y&JeLKj+@ z3Dg0K_EMzfs)ieiAs%afX(ycUnG=jDLlfI&$i}**uQ8Q{#%6~;T-Hew-clH)&szo* z@8!sQT^8`A;*e+bpHZz)gxu@_vv@cxQ=f5^m~SIga1gHJvQ3?e1XoMqIS7Eb!btEYZMU zb@VN78;)>Er{ckeu~N7uNjEWMdlHHC-EzbFjtocs|JQe<^c_Wg7AT8)K0j=k7jYS< z+b*t$qg_WrCtl-4EMST5RvRvkqrq^^%4 zVzX1M^)W7Mrn#1v;jFHge=0WYj6s@?r6z7qn3Tqn%9wxP_8U=E1T;;>AF7EmGX|-; z163UfRqU=OIoCSAhj=GWqJS9@?&umj%_UcbH=WfVtM0=QPN}{VRdWbOB4ebvX%`Yy z-q}?pSa0?ycZ-hTh-ovKZUrVS!)EKb1M_t(?CuYdd23~9I~EkwjV|S%nR_wL7T&e_ z{XFNRA9lEq1cyZSwAHEXx(X=byQoamKJhpA+~G6j2Swt8ZQZjqtMlQmF6AE0Wg^%N zv(yzdQc2`aisagt8i<-7_K~1AV8w09H6_e)gi>mARY-B4MDFW=JF@|ItRQNP@nY?s zoq3Ofit#49Ttb3Ju*RSq2P`4e6v8G|*fd(W+-u7+?mar$)g%mcEC@@goJA=YU<;RJ z2Fcn@S)9@rf>Kal4j>ms9}eOf*RdJ@rlDz%2}{Z0M7oEh*94$>H4w-SN96!vmDpz% zTHL2b2YfiixfAScN3vSscQv>YaVkYvQPpH(+gIhq*nMaH^iEEH~a8Ee)BB#fZ!0l9Kz0(7G_ zvQcp9Ig@%g3n}i=LJSZy+_aq^7fp?7%nq#xCAK-T(Qz=@6Wm@w`blnvn0Eyex);aV zK=iU0By54gt_flJqOR>j<>>5-H=*Nl5?m^E>$;cOAkGqGhVNBThl8#R*OtRRSCOzFDkRgOn>tu&=ura~@W$-*TkNm4vDz7y zT}8s+kg(k^!v_RI`W<)82vhrSczqN(x1!Ea@5ufJM>64xrZXdY!w&Q&|d zFdjPCp5x@?Z0AgP*%FEomwqYWNU@87eRhBhxZ!~F zCiGQ;F=E}Q`a7oB50agpzv{|ODc6v7EIb`{$XK;?mvb*X*kGVlaZOhB$MIy+c@A}Q z^|f?#G|o=3)1wFB-mWQOvLg)Bq8mGl+5yFTAM$ccE&a2DHhsUZb0!#0dVZACz{Gby z@^ODyJe#CrXV>4~iRfx*DsUcZ5=+^RH!%poKR~Yo``6mmuDP@5u;fW}4|J9U*9e|B zj!_&@J&08N7&Y6lYJT!RuYc0#j))y?RNe1w*khfzx@S{B05NFVOZ6DntO41|G+>k;I-B;I=g_9^^< zhyi}2(=aHYp=#n8dpCbvz>gYv2_$pEOFY`q&(lj7n7AH8E)IR=-7hC}hRg*EXIFTv zvnE8R)-1bb+h1}-Q9q8pu) zoEti6ei}8~vgh8l6=X`aKW#tU(_K$Os2-9Q<7rb9FLNL<#fxN?VwNivKy}rwwMEJ}hXRYZoIMnS$uKPM;84 zRfVylum0%RQt>>hU~FjVj5hSqSUrHxdjL=TAUxl7B-n!EJVa$o@xOrlG=5jR-0|s$ zWZLmL;s2aCp?8W1_S$t|VtgSPvc$Jf-n9|jwJP0BDR}-Igw;h&j^k^LymMn|%G;=hC)+$nM4v}iG zw;EpKtO@DD9nap;@5Z7_&}%7(gN1_eclQsp?6}g`IXy0#YNnnxcHIa{T(2h=S6FlZ zt|dx<&GrT-oA5cC4bPC_iSdnOo_pz+nMTlezHU#Hi z+96M~oI1@R18#Vmi@8^GLFDKrC%;W2liIgaEeF!_8X`tqoW2n(huS+_R>Hbl1{3RI zX`QnGDe`xcoblj=b)}Uad=~F=$^>I+%!(3$MD%VFvCl0mbrmjYU%;XbLktx-<^{IX zdt5-m*u|I4%u##q0&?MUghb-rOL6pA6iR`{IAY(z`&>st{Tx#e8J6hYPdfGlr5b#2 z??MP4*a({*w^!DUwFY8|?So`96R8qY9E~X)>pff#A9CJ=-nMF$8GrT10=krZm`XUP zm3CY3i_h^q*^jt}gp#h`X(22zew2*-u+?0GNT>TTr%N!-^t`>QZj_iX&z<{m^06&v zE6+0s-fS7j{HlZ!oEMSj9>SaGka)v{Vm^IPbDw#B&av68S6X%cRHA*9C zpQbd6E-EInwEq7yE+pZrk57t8EU|r-Y>Y_tk#-)tD6wr}fU)*-&NsnR(LC1Xh+_Rb zS?O+7@xzLQYov9c9aeZ~*B6|a9=_BPXDC%Ypm@JXUfM9)6~RHyiuOy+c)MoCkxdbT z5zm+Pe#HqV;<9zZ!B?Cu;r)aWyN+z;srBNx2THtOB`@3XIUL9l?Y)XfkO9slgK7FT z=fpO=rZTnXjc^o6WM3y)aT~VmWSC56ue4XfH=J=o^^wC##{{hX1leqb_C!4WB>ccNB)B>p z&FY2Ujlq_fA5sh>lNS2(7WsxfHEC7wx zg)=}3FDruf|?C0B{Wg~la&0_X4s*s?_2G|J=ThcwoG-x zzc#{Jw(myK#QJZ&Xn8`pH0%x$?D-$3+zeq2OBoR1u)~VZ@PfU$nQes%7k2syv448!>f}4NsL2dcbP+1L2@0PUq9yL!HMN81{#y7o&7CZR zr*hbYi@LNu&6Pl?CP_D28z`jhV${Y^8)itr%eH1ZXm<#Wj6qJJg{<}qv%UTb;{=f= ziR1spU0s6XNVxI4C6h?sC8*ElwQ&<$Okc(AXW^1A1C_U_rPOo@Ih4pQMY78R%%`=T zvte^z+KF&6j;Pt@CYG2kLnaQinzL-pQb^6WSNbd1^V|!Ub=HJ6HNnJEuB4-KOtD{% z?6&0J8DeKWR@K_QeS7+?=pYQ2cjko7pq)V&vu;XwV!Z-cxt==W$EA@m+iRb*9l!Sp-ASOjO6+|&#jm+#Y>*q=IQmk>AH(cEnB*YClm`U)v z(iF_0CFKxGp$(w=tf~CqY=ny+>inDWPa1|sA;gc7wTL2|I1eM|bpbd&xCy4JWmdk1 z3rLuQ3eE)RW;Adr!?0s7sc6%)h6qt2l`bkrb-pX(-SCP;$2*y~v)e>@)k2L-RV$pU_4f$OQPEO{?Rf%^9pDY@!6NaLa#@m)`@l(=UW!}1W}yT*evDx zE-7J>To*T002Ad6NXh;yPwTR^v)G0eQp)ZEPug6M>rxBhhOQ!EsLoNXO!C{wBvN-H zs$)Z{-(HMBU3edcon?%uH+ESGrdJuxq?Lct2Ic~TG~I-nt_Mxgb3W4vSd?v5&dA`w zJ%hdB@QsLyYk*i$C!T3)W{{|xQWR|(oQi2%uK0I!x8BS(;G(IE^T+AJ_8Vb|?dD`- zd?bp$g$9UYK5yYHw`pb>&3$Dcf^QLi6JWBHl*0Bu*fi{~FrBi$k8sw6HSi2AtB61t zp!xfb#WJ#_+>%l_kQMwWh0Dz2vDytsx{`!_Pn3}CPFd|r%uy6W4_av{Zoc1JTV4rA zyMP3*di_FNL=xMr$i}u;>R}5T3w8`}9MMUA_%Uzo+zBu5aP}emuCi;v!6oN5lv8qF zcL!^8X!y5v@(I)UW>Y$%iS2e|qhT4lh3KegofroVWQ~FoEga*-36-yeV{cyirGzXI z$4Z1PeXxRN%P6e<@iN@rMI@MTmBo}=M3LWt`Q9!yTPF!D@hJEWs);x?(&z zrr7U9b~=rCu<=3L=aXOYHr(0C6T&p}XRYY-+x&{4V&6>mYk|GIh8Va`lL#C9OO zW}DL;ga6-PB9|RjMI140Clie^O>L?ZCh9V$0G#I0=oo|(T*GP28U$=5t(ycEDLj!1 zxi-sQ5?x$p4%tdu*f$+^xQv9g*-{@{gb~kO$YTL4y%xjD?d0O;Eq0sA+ zuSFbD?IabOQ++^w`#_j-!juU*%~LDhad;v=iNq|+-2H*g2i#n>%LzB*e~+nF&9xYT zpM(?NH2GMMv+W9}@?3`Pw#0O@6DIg}YIZy1P$JtcvH^l0_jg(|_-hfnMPO9SY=kU( z+zNCAN@ROTc1ye&=M~X-7!B)3HA7_o%0e67H6>yRr?{4Tj4x?9C6hz?>!_slRBF8z zze2X`u#Aucnbe%2$7Elpxv+%(Q&3h)x~avLin~#TS*bXy0sB7?f_ryo+_;r05W$}= z_=PSumRbDi8Rs6}K?Hvf!Z+rtvt)Agr-pkv_nFOKnRO_JD{L&T!0Dv&UQ}5cqp-6O zt$WthoTo9$z{GVXxj69}Z!_-DiG*$EPY8{3JgZxNH)4?rU4rH)h>QDqac+wqcq^yu z8b?W4W`cQ_l;}`6Hyg=J>A`6NbQi*s>q+nmIZ*6I>(YZqSV`C`3ECfr5P|;j zHvFCt`fIDUBfaYq60FRcL1T9fs05rv0Tzc*ajwHUJo1)dpHnA{$hFor?0Yl04Nt5+ zvR(}(Py1wMxQ^rDu?~wI1o6bTuq(df3dY3fCdT9zFvY%K?5f|Y(!Rex9M}lEV2oWiBbZ`8 zNOl^prOkx&SFby1LZJP)U5Nk^(>Y{fS1@{DP;X^lxVO_KbOnO2cht=uKY$2$V!e;v zFSp{+6fq?Z_jSUA=|`QXIpT=uek9@=OiqNpSSOF%-^p+>ZYH1}r;aSg65#_#NcT-O z(+P)w>;%3CI&DI=os{Jy#}xg8NPlV2BYX?%ZPE68u=6EM9xEQw97YrmAqDGZ@c<5{ zL=O*jo&-nWxT8FXB&vszYBX?fzvaz&xU(e;7vm$B3`~TNAR$|WXCcK0)h7pKYL zkxrQ~ksFyC7okM>C=wnH!ur93A9y|<>4Q+sIg43)w2L?c&yAVBs?wHWtznjb(lAxS zB#n=u#*(FtwPaY@k98pvK0xz4+Q7v1IC8Pm9|?5q4z{*&Fz!ltywjf0{Qfyi?3AkU zm_il*6Ucvk;7;=1^jGQ7AA~2mk_1y_N60Nvis!SHk^PZ$QvU0Ml9G|wQ7HTQ_$P)0KvJx*sYo(93T?o&1+JxZDVivzKfFgbliP?qEopV&{_|uQt z4i7ZWLqHhPbDc3^sNmC9m#Q%0c^-M>2N|GXhvE57aIX9y1|s+u5S||`>)o@sZbpUo zkx$_NoN6=vO+!aHet^i}MEXLKau&m>H{;(d5Cvx$Vu_)9PA9y`SrfjQFsu}HQw9|8 zi^Xs>6! zT)T{Dz!A^O$#X66B(o-FMR9lA_^$N-ji zxvab4(S|l7WRsQK5XUpDpXk*)0*otHIMDoHaRfZE{Q>dB`cblSwOU1Ihcsec4MqPkr<^bc zRfnSIOGTf9iSOg&W9|tyuhFfw$iP1x)6cMr;4ZRHxQI5MN@&0vT3;FAlg>|4Cw&Lh zSJ(b@VpxHAbiS|-ZM>U5!Q+=nM*1^O_f|1mrG@^w|^kIQ$FKr5+)l}cZ$P^ z=(8lE=WV=A7e42V3F|sJj=gz)TQwD>;PX_#fvDzKFqk59-67J2(hm88%SdryOgL<; zh$9`HxX@j~wChXGm{8Q^`7#D7coGdp6kjIA4e_Fy!27hG<3%xf7u$09ijz+; zyVOWWAg%C6eyt;tysuIot;3P0j$h-+sqkoIV;YXG>96$`wwpuaYc6vR&o(sU5$JlE zlL#gE>yC^J{@G-96^>xI8&=MWY?2;XpJ388j14&xC-QGb)vn@F8aW-FG2=hzS5 zatR4TtkAs2uzh0vd7C3-wva!A68+^z46MV~s)VU)_qWdoC zY%E)w%fjkf(|v?jA_E5+%=escf^n`o3)ie5?3D}mIi!fcPh$2{BmWBa)^c|R-sbQF zXWxN;*iaPU3o@(f^zN$JROUeVk&|z3CKrM+>!t`N&L5MLeiL&t z?4>WSyVyt1G8bPSVt>2XpMf_6|b3RR{E#j_G8Zd3U`#W}t>>&8Tjwk7a zpSgyFRQv{K{Efhp@^ea|Usax1`Er@5b9UIrq<$g%!bKzu4gxYAx~V~xf?rYr-Kp%= zac0HJpvU_5E9X2G|F5aO4HszkWIo&ykZ68Q8uq{q=7O#MX3;7*iT*b(BhirBsCiQ6 zliJ@>EvqK79mEbB=X=F~Yikg{b6L1(Djj7^sK*lJ?@7sZ4%wtr*-U_^fO22SApF5u z6IKZYWA#8cBbZ|UBiT8Amm-d`gTUx{W&qM)JACat3M~A|l_Vr=aLE5h+gHFzc2wQt z?rw1;SjUJE0_cXx*m_;800cmC(x zdgngr_xjZ){C_{#boFkZb6&lYTeoiAGAUjnViSR6{eiNI+YZ}eN~C!GHwGxwP57gW zN$4IvOV{K@DxylkpQwOi#Q?cr*AbO7*WcB_=dKmHC@szQW1QumT}Ohas|aWHQv9M8 zUyA-hMGRmmzEs$d+P8~OVPTEouP$kVJ5Y0$@Wxt9J-GDzje7R0Hl6HHopmq1>F{@# zk}#5bBN=ZpRba{Z2W6Cv{ppxt1^fTmM&UnQ!zD5HtFTh=FDfXmzA)5rw7_IiJlY32 zJJx4#7y8z@@NXBC;6TyHnPFPh=(|=biM$k6#c?|oAy*6y+{LJ5+v{CiTAss&SmDz6 zCoylqM!eOQp}!P$Rf{L)%aFNl2FUNMgTur8Pjg$$je%KfIb7D&{HJDsiF{IfIjZF% zwUl;(XK%vgT@l`1Tm9(g_O?{86c)r1+ZD)0_iSN~$l|Z!*6J0V6Cc_*YbKl`m`JZg zQtoWmIDE1_p4^>uWfzdJvn@b-XcY?Xq$;`;U4@Domdgl)!%=+8o;3_tbu|e?{-nFP zi>Oj@HLBp`KRevj!T+<6wfLXG?r?P{$A`9eK@6*gdN6TbgPip3`TV5h*V_@|5cX z&A^{uc#wa>?jU?etD|sTSCBBl};HxJ~R8M zZPIXkSCe22IAUxm+N_#@FHtw3D4HjQgP?_vSx3VTO)uQg6(u-?DI{(M#MWEDEPO1$ zOVEud$fn_5u!SU|{cItLDQ2a=f)LGNxUnlqXe){uw5m~I98~-_A^#mvA(|PZM(hEW zU7*?OoXOA%8!tC?Ws87lnfj^>rm*^D3azx?jN0k;$sLQCt%1rjyL&&^mr`>c+7#=~ zi)B!;?@xC2GTDJ+2U=kLhXY(ef(a!g<5!^$RvHeZ1_qYp!I}6p9}aTXW82?LU05bj zL~<}m*k_bz9q&k)lepBueVK5U54jO{i1Ti5=M|hitqP6UQgid#N1hG0aO#Wy$euLn zmLy@X*gafW!tPKf-q(bb1$Myytf`Z?R+0wLBJ9W8mcy-F%K7cJAO@=i750Tr6>}&x zvo~P$ig_Jvf4OTr1w9@m6ts4*i?B(etj2`x`n}TEoT2JT;X+lm-*m!nfq{s z*Tog2hwboTX<=ojRN{e$4z2~B-HFqA;V{>oumY($=~BTH?ctCAtKv2)m2Ud{d{9PRoNhEc(pEEO8DrREr_(YqbrqUFl;#C0riu^87T?Xj+E zw!PLkukX_)Z4INe9!ISV9T=j;;{tpBi4$>1!Mna1?&zu#R+kaLYN`fHe8)Qko*=@kZ`yI?EqnU2>+sjzd0z-?I(HFFgm)n!=ZflL z0_~@3JMwpR)`Z;~p;*PLp!JC$#l3;tT)St{NyTejxg{MoI(34{R01*n(l_x|SHg<^ zMA9>IH+whsZY_b}Cg)AqAgg(^jwGthq&f^#79o>c(8xDASngE6+`%uAo@9A%*y2hO zdRi67Dxvyi3!@aDM8$Cj5v{LtI@@4p*hQi+BpnMUyDWTYYx<$j-0NKCBunLA?~u&V2b{3q-SJ|f@v%s2O}OXBDuTM z;zQfx>i5R0LJlUrZR8t2k2AZt&>MyA`$E_p+h<@RJXM4-^D%B7WP15{jbS*=2@}T7 zvDC>WEb;9i-=U~4cS+NmojIZLLeIcP9SyJk+*Fo0{T?pjjP`1FRI6t%wQxw>=@fS$ zSW4zB()*&tjRv^i5eEJ&;-iOQ%0(s2z>a33yhKyE23umLDTaGBF)KEbYn#W6S0-7` zd}N&LhcjG9LesBHuRV?_{xiwHKlpPOPX39`9E1kq=t?-tB_zZxZNpQ3c8NHI1LO zxI%<#vQ#K6eQPPC?ObZ(#(>9Jcj_Xl(T=b(rwu{5!*FjGcuuoGhinLSPau-a^C*)W zwDpNtaRXTBx}+4hwBIdewbqC#{`1MtxvYFrIZFW6bLtJvwV|CpAsDd=@!)fW6Xy&$ zIlNag-&zpYtWzcgxe6dQ+;U!CqKR>ijQfMJG!_;zy`A1$8shEuojf6O+p&z@OB`j# zkR@cELip(1;qsJ8S^kU#XHPJ#N?T+VB(W`$jRtJpfg7vsC8tanIUOZdH`4$O5CSFd zG?p60I=_JAWv`nZ{o3i27t;kr6g}ZGNw{t8+6rniM>6IrI^x2L6DMpoIbP$lmeD0> zm4c3dpc8w;{wdSbJEo#DOvQ?`g%zgFj)Ci&!|z+h#u>o#pJcu^Qz?#QN{L>hXohmG zA)na}{GUt43ti4p?Q-}-(@;PVdLVl9BD$DR2CJYj7>vTuxf4wLeO^S@FiPu)TIqhM z&%GQk0*zDbx@$~`f^ayiBrly-ytk(SE;+j>XMf01$Q5Qk^NJuG0~d$E@6cWC<2>7L z*OIVHB`lMoLOrl_?4gcZKu2EJ#Y!xCB^Zdi*X1O5j&ex&5tuQ01g}bLO!;3;V3Wp+ zsF5?-*qpaATnP7ZNhji;v~;cRNK8x61V2!_E|j$?dVw zvD*j3{anj=?OLk1rl|U5GnsVWpE@~E<|byg18qYPj?5xlaXH=|{{YvQU_9n{rYtWu z!AsEtsfe)<+{2z)#a0R@5dJqj$OYW7y@E=6;Uyd~J(x^K11YK6P8_VGW6e#WhpjDQ zehUwAHB0Sksubz3tI8|&52bp#VzkwT6=l3<>0vG`VZT7Xj)Jl%KtYM?;pAc;+TBC8 zzq9a1yvr!^J;M1C7Q%*LWOY~~d?X3!Sv6MiIpQD=}?9T2c+hpNVk8}P6t4uKV z~FhICL|48cFQG`lzamrF=k&*oSrA}`iKOUVqY5n-3v34Cw zvDrc@Jk_O~iQhHMRSvfgYtRCTe_{w3@=)<}ojPIgZAi$KVTtc~4cTG%Tz$jlU&ID@1@ZYW_p++(+Q!yD=GG0#^oZ1y_uq__vfHkwNzpK9- z-r)S3@UI%?Q*}&%m;eT+_Mjl_l8p<2NwkL?w|QrpWP4oFQC;xOws;u4hBL z9_`y$M^zzi;zT%cew3UX9x7uW)+O9Y3mUSdCd%7sig%ji)1u!hSBB73Odl8A&U9)WVZG_ zu*_szPot>@^AFdzEQT*QZGypDIK{*qXC)-jeUWtP^W#x}MPD@Y&2x|TORnMn_l8Br zD6LvyyPE>$P)5B3bC^q3oFYo z{5yqHgz&tq4tB5Nn8F-W%>1uwNeFS$p+u9SLL;`+e4lDG+%(x_XAJu%VKZWBVHF2W z!w+0lLNr+N>nm|c-4Cgb^Smt?><={ZJof5GE@gtZ7IjPm?y$OLM-fe=KPGA2t{U7X zI#jc5X@~Ihavwhs{@e>zv9@Mtjs7c#2&1BN~Q|i1W=t}oka&pS{;1|t+?#jvh zGuL=lyT&1JBOMht_|sSeLBak&a{BUh;@Ep-RBtD1hs!8k5c3!Qt;tpJ39rSZszU>VJ^>4xl!tYipbo zJTW{v*~Oj&4^aKnWi0@rWvrjM*r8HoR!RRCrE?`%-RCrGdlg#&c0pZ0x?;q#gnzr% zgf5&z+AGY9aVNEwLAox52{>kb8r$#6ZL3S;AH_5rDLYsKifvgXx2+sj5-vjt>__>Y ze+;dTPU*`!IqIbCwbca>6u?AzIa1P=t4`?_Yty-4u(aBZC!fRRoj$>8s=`?nRKFbK zkg6+C)vchaG{zSUgE*~sEkhXUHC)lPo!wqFEdzZsjpSX4^631mU1(s6U$x^+S9Vb; zhJi1JVpVxjb1(*WAxpk&cNMr#nS9Sh`aaRzLy=<67Jh5JltXC#0LVPg8 zA^XbJo$1K->bIXo8UYCU8iZzRtPcF60c@>NA2}29>pJ8bTPLg{DJ(4ZK)rR?Ft>K<1oLUa?LY(*;cZBG00^}aHMQ~V zEqmxtfw@g{Gn>7`ZJj*977&;{w+ao&QgS;gp)HUu`iKr*u2n z=drb^R6-Q-ktDu3i1~6XYw~H^w_?d}0r)+8_lv#ZN&Oy1{C+sfWh4ZI3(?ImyyQ#qD!K$6M?vfb)gXzug1Vz?NU(?nVG>kO(1qcN^?0)Ktd@r&;PNvV zGk0>j2_sIsF=JrjI)PlAYh?aNceIERau5~{lMhe>9lJaH(k4mY;lJ6} zm8_kjlE@7dd4Q3{y@~P6XlT$lS+dckB@D>a!i|pD6tY4CvXq=iC0xVu8OFCk8Q-Gh zC$P}qy4~c8dTEsvK`+L!ALEnG&D6;*lSO4`q1}w$Sw=kG7FV^QT~%{ncLpcYlSsNh z0PD^r+j(L*qF48Zlbtkvn9!)Z>R@Uk7s_`Ot_Aq-eDc2EY_ z^W|J2eT003dpLK(BCs*-2%*GwI@xFs7siRgN0>;wNO{V66NjPV7JC7%@G&Aw#6{zdpV&mkpO<5g#;Wyjgb zQ{P#l61%|SUM?abG_VS3TB={x@<`peRL2pZYR_T~5LXAPkeCf()bxDBknP z%K(!~w&i6weVp>n?XN*UH%b+<%+1SwBjx#II}~Ub{F_f6z(Qv#7CW-ma}f!zVRqjR z9~5|09WxYo2m~s2zL>{q5O5a|BWN$|F7gz~tZPd#oC6J&?84UsbSavnB8DGn%`NY! z-FdNwn|DIrb!=&WQG&4-rNS7d*yqW93{cayv$!U+pa5-XEx5F$c4-%XL#xUw`HP@m zKhz=_%=>oMAmIEF^B)hEhi4(iZLk~Dtz8k0Zx(TH&5{eAZWnAz>D|P%+DxO6whLIb z+$FU!tCDbH*@8gAPFIt#OX@f##!CpsTLp&_ zv*OeV15S=$+<7qv6zeKkIr1Z7F^f{<6cJBU44gEQhxC6OqzO!-C>(R+SVDK333$6b$_S!l?(T+$f56JlHCch1D9!G1! zx~n)3N?Xi}e7%&ov?-HG;VvqqX&-kPfdN)5b+K7UPzU^pxx*!hKvz z;)@_KJ5KY0ypc>o?@OUNG|?m!Myt&Zt0PIhpG!Tz{WYl$Ql*a3N$mY8mLX~Nfl&Az zu9u0&=4_Am0j@G(Ec>o&|r@l_ALX_L!5B~{<5KG=j&wT*T3#CUnW5VuXc^{{YB%()?i0hT6CG-^i6WB?LUfjnx|Ad1X^5{9F zJ+hZ7YxELp5oNW%8)n~LW}ADQi%EF@IgqKzi&>_X99J41PYoQ|*WfT4 z@qi}(#H6~k#(T<#;lG?e!PUB!o&PiT21GGGfy@VinH`F=3R7WWd~{FN>Ri0yV;G+3 z8WQ3l1ZNslXvCJ9Cs7T}oAOow#=;BN(GM-<)RSFC!X*g8F&Qev{e>c^_@6?4j(Qcp z4g7>$Wrn9Z_lB&>CU}{feK#4LSf55#`ftht5fh2U*(|&k-Ickc!_%ER!C@z)n&&RV zO2ad#fo@VCE>6)D!DJM}tZRm6x{3tPnXpWS3fpUerQ=!D!QPn98J^$=0pu61$XL@CyRv)Z_YDSuCXD2>7PVYb`x2_X64-3ULn_$tQWtS_ zyNH@u6Bq)28Nr!PN^3pT7UmtJg*?n)c}O~rUS?AaQ6~A$t#^B zVeL|WkRpyqUPTgm#Pe11i09L>@(Zut7pn0^vT#K88d7mMt=X7iXkQ5HIEC_BCrubm zg%sQIh3pGQ(e0vH(qX0Hb<|LFyKTY&$UcHZvNZ<}!fx;FAq3JcxRi_QcAJ1MMX#r# zt7dN*%f=;S2nla+=7fec{*p5oQM{29<{-#yUJW$}PJ&nOO-`1uI@M@ZJ9HVISl>)m z+OLIhl(pS+;Vn*=(107_P=F(vw~~g7{CpnkEaTu$c$@Pi*va~_J(dbw$OB1CZzmI{ zpK`E27lbo*U3qwiQzlr0H8Ez{@yr}i)bAuUJ!s_}TDTanR~z2twD{0Az&3BtMl?~r zo0N2)l_|0ELsZ9mobfJ~gweo6_+Aon8G^^Rqa&xTFE5vFE}_9Qk4VNDg!P5@xrBSP zOAw^JUKJ+dOV#_SimjM~r`>QK9f%)r`h?as-a~UF5q*$EG;!SpXRbWZ#z>|QIblNE za*Wtb<;E)^iul7MroSWix)l#-7o!va+Y29YA?M>qEz^09ndr%@(n;kIU@eEwTrzkA5&UNf z&&6cP9Z*Vb7e42F3HuR_W3AmwbTX7sCE)WEP;!`C$LMk|2`-&4ICsJ#Vp31b07d&n z($fCX9I9!!7{?mEi!gQV8z~sd<>!T5_nfzbpPOx(7t`jVPiS+v< z<Plo#6*gv(H1fg9!eIgy##b+m%Hi_+0prvn5ohqu49;lJ+98B}7b-|Cr=v zGM3YCuHx)S_=)r08S+{tsOI#W#1h|6$w!-D?35>$(qrdHf949N5)=#uJD2*jH0;rn z7^Lgx)J0!OS}X&W_Sp>v!|)5&IM=T6;)gL5C?)!r6wTgH;|{VN++Vr0l#w9I3lfKd z@gyNc6!Wji%z4qraL(LWh}005i?bMhe!in<_ z=q$kEK1>gEYN8XtJ3L<6x?7Rt2EChRE6^d}; z{EIj%DHberHT=~%6Ndigd<_OB#=nu#dYGNT@0?^S7x=ww_QAz$e|ORZ!xLSCHD%A4 zeXatE_#Y(Z%N;+X!v<=@^FN(Cp?6O@q9a6+|BK`tr1PajZOimuq!0|j7Du0jD#j8`Kgt$qC)O+q+&-(Ou& z6zA2QJ7JO+REfJ5S1PVS6%27LtvP5c&f2vRNP>M$SCHTguU~Hz@x**BGSf?4aE4oI z_-i}g@%Y=8@vgxeP9PCoheR|UaIe_u{e}LX(`GI}gfp(=L}X^TuCpb0ErDQFTZbgN z>yeJGlv0gq#TBmadeQgR$j5iRYd+9ynMZdQiZs?2&?@ti+m?~^9;)(S}WMu@K zdUYIQ>~^Bzw!wm17`V}GuD>HJA%q)l$Q!$w8T_{8?T$g4tg&x#-mQ^Pa&JPpwncf- zk)0FIIr1c5Y~Iur9oMdC2ER5D{7{4u&&|klIDn>*Fmt(hU0eP|C2JOvKzZVY@o`+_eIt?shHB_B$36 z#LT1zxY9G)l@=kb=89i5a!A>MQs!5P(j~F7KEmnQW%xw)%pwYZ33m!Dz_YLx4svA) zkys9Cvb;2jK(Y>|EY6xp=@Ap7j-^PYBf{*+LtImW<2}bSQF+ln;ay|F&=tHC-JFW( zz{@S#nAr$pFAY!&%)Et5Nm#GcnY3e&qQ52SIqIo%qC?_9DU8@kL0Ao_ zP{I@Ip=6~QKek4*y#u?*_ts9G@XV9eXbvg%+mQWAWXGNZt@UtQ=Qoc#3a4HuXDdphw?G_*nJf*g_A z;RvTsuoUC(jk*a?%tw-$9WCGC+Kh{21`CBJJy*K9({L? zW0hYhS8yfaI7%o-=P)?U^26WJsT1NT#-nqDBdX&`#X%n9ZTH_TC*_dQPC8gP=!dzE%}u$-2UwT~0y(tl&(J3XRxOa~G=NizwTe9u;DD6+F>jQ760kv-yi(*6{j=Z&ui<$#dx41Ou2>$PA|pk z=2)g8FXo?eXepVd67Kdiq-%@W+Rktt3H_lalCGMq%}^!bOiG~pD;~8&m>;Gk&cIBb zbCxqFxGd_<>g8DCJDYq5g0E`mWq#$D7O*?m8Sd%i2@`9MX4Rh;qZL^Nmzr~^=GIW7 z#YXPRupj`93oE^y{T)lQJ7MeG%VnL1-?fYjW3Z-f?AxgZGRZubGOq=?(o}@yYPh$n zIj&tzX_)qz2r%L~k30tgNT$ijr=C%YI$Y2GB6RUDqrX3)ZwSpEUWF!TX*r)-I?zJb zdsC48#t~xvha;FQei=p2m7Rkhx4fU^2>Wp&>6`(d-7Y|#<41q9T^5G&b$Cq9R*SQ) zajsosj=OIgJ0(h~ougVBHCjJl^64UGZV3scTvUQlGq!MW95Kz4>FQvzV+S0C?dG)w zXGt&+%d=YvNHmM2DNZJGdRwN37}UMwoELX883z^r1>~nCrCGn2yTTGy>~!`73sorA zRaB@#ihG&d9J@6Eq95Q;6(V>L4!YvBcg4SG=?4NZS``XtVq7I7YrA5pnu%$v*Kt6@^HCx+cln9%R}dwUJzK;qg%t{a0($6laECtVn&KL}y3Q*Ob(YkB>GFlnm`o%!DC?A|UW*}>YVa}oyh=3gkU6tv z!UJ4Of}>6tRy!)F5k^4qK9Ib(0&hNb7N_Cj=V(|w$c6OqtCp6MgIpZQu9cvq09iuIt&>P!V_IaLMs)VsZb%?UmwSonkP{W zJp{4x;&9a|+@WpZs88M(Atj{3i>b$!kf%@xm!MiWu({f9&r_W|VF^06ZV-%ko<^Q) zf~S~Y2yG-h-Dwh*Ck=UufFqt~kmsi0(PDgC+_qdAZdv7oK6er*}M<^10o5{2#Ml8$ zU}0?*p5;pPz{OLb$9WDP=O)llw`xHm{>8yuc&>|0=(obL`c$E~6pEnYe;)byLMwd> zhgh&SWx5!gV|l&{NO++Fs_U^uR4I4?6|m`g-s`}Kf^K-BvraI!^Q=G^nR+V-#K^AJ zsGy1MMPxe|Y&9|JvjaOagGes;`fy*xi(Np1D@}Oz*eVqAAymMn=Oxs01oXJ^IN?fT z_An1*2rqSc6I^Nz+hCK^mESc;4tYeU3e-+s|E_?OWz7=FS;321O=FMh4 zAMAoyg}mCe^#Ri`z&QFoyqsoEiGK~n(-NRFdUwF}O4Imo7Cs=B7yA~yweVV3moTC@ zj5Td9RY67nI@0saMIUl!`yk-@fX->_BjnASvXJxe-_D<~#*AL+xUy}=6#eT-&(%}q z(E04*!20zYoO&bvQNxST_C)hZ_kM;a+BcH+YCtr18?&|2D1VcaCCt9%Zc)S$$(u>S zZC&iepJ@34`g5m8ZvmYKM})UH-(B#pS{|;jp=!8V<_I?%n4hKIe@j|yqJG-Wa)S(b#QLX z6ANMGJZB>w@)^R6gEjCjSCO#P%z_ zCw|({4jgeGMxQc|M820IZwV&Qn?2k)%|^i;NZ*4YhijE6EQ>mPpUazSmZv`Gm{w(8 zn#dqw@24=XN>~K|tfoMt`+c+y57=_}fNM%vl?cuxsW7&EE^Mj!Ak}c~yfoX{x`}yW z7*=7C1F)JujEvL%IoE0A~9%}(koF4~RdqD1hNmj6>6h7f1&S)1=jK7U-a8l5( zIHc^8RA$~?xK|NFvl}ss$mG0)Lvi6#E+b*=Y@UmVCAv?OjKf$CszT(73~1zwh^fKKTH1GfImA+GC2#zCQCf=IoFf$HfqkOBydRH=P8dPl~$U* za~-EZjK$i#wu6ITaB26#k6QZ37^c>NH-;$c?*rJJpT&)hc#{vt zYy|b$7Re8sKA{SVNcKjGUsR!`5woi%U>cD9Gy3Y?F^k6gzomuh_#LNX01Xfi6o zO2dz-fwONh>ubO<7?@o@ab~&`TN*(_#@7fXwx5#i0D$F-iu{vxCG2lviU~h+>I7pm zhp@-ai}|MlwzT}5T5bg`+<0qBn2z6hzN=rjrgQMCmg*2Fmz}WiO_;vpC=USzV4ktO`fRi53hQphGxg%lcT{53Ulcx&E- zp;G}*7k=Zy66UEgoXIPHRovRh7^La9)Wjw|Hv>1rVki5Lg$w+ji%2jivmYA!IF{&s zM>_f(WEpTZ$HP=QIq`evoZzO_GGfd=sGy1U4`jVMSo270T=O0N=v+tR?^@buDQ+)@ zR|7)~eH+J&{{k?KZQ$Df`3%w~3n+lN(kfkg8DLV2tJ_haLvPB;A3B}{n1 z?LKj0iRo`-VjI_Zx;YCwD4vqQm1OJv@ONiV7`6l#+gFC!h%Gh$pc?w;3y1LwAJG3ZR9LMSMy67bV>o48Hg2A9f@8(j4wL{I@Gf zSy5>(HP(zuRZ!7iY9r{2ra8NeomvW)#$Uy7(u-r7JC2wxLnfN$6UHJg{8r)Eu)GjX zpD-4eG40XIUzLWu0*%yNj_PjD*Wgh*b(DhUJ>kLY0(2{YV!i>H*%nHx+(Pi|#^n{<;1`2n zZ|EX+;1?|;h67p~@KPlar!q(~SqXkc6(_Fs8ywnDlhno`H(~K+9mMb;9poWSzXAWEr7t*u(R(R}6XnfGc_09b z;~y5KGEX?w%`f*BhT#^@pYZrXGkO)a$2>7((9&{CYN0!eOKYa<%3^RkSoq;+O;~~} zsekHJxRoopTYF6i%ao{44=f#rQb*mi3fGIG$FXYP)t%Wp>JO3q3O9S*+BN;BrqyOL z>AVefUJF%Vry-ea4N{Q7D1_U(nhEPBEmF%H@l`C5-Hv4YflTvL^-km!7_p1t_RgH} zZXC*9j+Yo}u}L>1uLT2^j1FaR;4H)hWLHeW6vovQ;V@T_FkaUL1(eW4dpKziYJB?W znu;}Wg!3mje*Kvz)Ib4Ta*m{&TR=|pw$oI>*L9RjN*Kp$e6KY-P6c?0x&uXV9M2}f z>~0450C!?Pya$I?INF6IOlmcA={Tgwk0JS$LC*Lp>^UOKz_Ctt48Cs}Fw335K?Hvs z;kha;ovmC%s;zKGr@3Q0P02~)hbxIArsK(UQy>*b&6&ZTVk}{}lXITj&MBa=vABXN z1t(AeP2xO!V;hd1`khsGcJhRmm}3}yUMxb2`7UI>37G39?H;yPaNEsYoju{v9mmMM zR4@f1sswDH08YT=XsV^TSsXRq=*$xqj~Y}bY+n;hgeQ`aK8Sn=XFM7ocixY1@*X+s z!Y0>{u!L^h$(ckUWt*vt3;X7rD_vgyhl5RFi>pfTOcn6#trW_$m_qEdL(CN;d`UWq zl8%6+JZ;%jj8D$LsDwfzaQu`l8#jlOUEw@_-!>Lp^5khGmF!a}`)Z(tErm%Mo4xoD zwz{H(VWToS6>vmyHR8bh~C|)6J{vk*}GDq5a?S0m!56Z!$D+- z+oI+=_UAg20AVX^7V$^hUBd?aqqY}f7*RnjoLEmK>&*d3Ll2dV0VldM+-pv9i9uW@k{&T^{b+NsLjvH&BBvq{1E zM7LPR3p>$+ocBR`c zBAO`A73Jz`j5<8^)ae}^#>(U9Pq?>JZfLJiAsD9$ML2PuN6v!)*c>2 z!f5Akroc;M(U%#x6{~qb%v~UrXv1ncLlCs z`haJhJz*@FXet&^rC^QY7|dBcy2!Fy_MJW<^xaXc_PyjEBBsdaNzQ?+(RLcz z*~uB~Sce7Ikzk^v8csRBG%cz^%t>yZJxe!WzCC(G!;%Y0aAoBvRwH?_3@Y{u$bKkl z#QtGnKOl~)aq8_}fOz(9G{nPBS930Y)-tkIQFBcRRMNOijkNLQi$S7+B|3ZT=7`Y% zUxyV}mC$9YIHs!lWezSKtJJ|RyEqsP@&67YL+pLw#7P*qfP|r007k4r0Zoi+WMm|R zrB=cK8G3th_=q7&;X)@&2+oPWG`evpu?4ZIPa}F6>z-L;0}VrGOIXS1_wj9Kn;AKn z_(tTT0lFQ|%CnHm8Ma>G<2>^4F6#d6b>~m$j4Qx1uXq-BQvfY|EaFSjE=n>>CoI@r zc&8E>89ghA`&?cNyIoU?r6a)XCA7jz(jG|~uEe==YCGo2{^IhWiy#FE8FZKCvF_>5 z;ktyqF6lJ3)5*!@1Zav>n1C)t7f}&yuj16jg#HL8<)-a@Tm(L}iCDAjSJ6nR#}n;+ zNy~T?X8-PNh2Iis=SIlXY#-N<;0x^s{c^XZjI;YI@8?QRZ&zZlRu{Xj|w%YQt&`3;5$*@JFz#jH>M5Y5EUNeKT2$N~`(`($7w+L} zhVP;OKEh?rwl`Rjm`WA)kx|MYN#$%m<6)rIejeq*Hnawo*17*M%F_dH#n9TKG76FOPC+U{6|lA4GGpj4r8^D7Ym=t_|o(g zYGQlnEzQq%><=2`X6p~bQ(Z*Dj+y;9w#FJP5k8HCv@oNsZ8u~4Im)LyUxEpi0T^Qq zmX`tg3JNW~fr| zJSx~93N&8Z^@Vn0Q?R=+VRgb&7@qGU5;jGJWg=9l2bPW(P{%b`6N^0O;Rbjmo7=Qyc4JN0F^iYGl7x5dP_g36 z+1$#&lJN@4;4oI+qQWsUyzuZ!XHQtTHt$hIG*P~alnO!+U-SZ>I{{hif>&x`U@!;Xk%@cX)?0 zC+t%4=f*mQBc^wfi6cpt*o4zs_VEH_)VG`|;a$#|;32KamQn{Q0q>@O>q9_g^u%r+ zH)Y@B)En?`TKevU;WNUC^t~kIkX^ld$xO8OIcI|9*?j2|u|)WO5*`G?y2Vn~hqG{s z4>prz%r)WUJ5YTU$l=FhnRd}ylyL6`s) zG)a^~nLkg~Qb$7;g&qbYbhIxxdBa#zk6Z(U`! zufcl2)hXB~-Go!Ja1&c9g{B=q` z2$Erd%r7nMh#88edh-|w3tw>V`-W>wa0P!nazl$e)=7XX+PV?)F4Q9 zv%EgnXRf{QU03!WKHFCzQk{K|GHI<%FYW1!mi8cHBF=iv@gsAGBc=uM1^?@!CcH64 zMdFvSJx@Rs`}fJtfhG6Xft1IS!VjGDc>H~fnO5hl%Ya1nLsD^1IvzTV9*xc^v7>dd z9fy|rBj-$*HA^_wG)mu;kR{^B6v5@4wW3N~mL+T3y@ag=Y_-p=BfD|_tq&Q~Y zPFooy?57mQSw(ZtwwMGL#qcv1kub#T_ohLG987#aC*L99(`0)_JO!;OuQZka!UZJk zkqXcRs4xLtihfB&G_1;pQgx68t%-LlhF|TAmNHbKjbwp4oeH|N{93gW0kUif9nLry z#XGU>;)ZaW41eQ_5?lafz=EQQ9Mbh$>N2CRhc!O-Ii`DI>+1XfyN4`>|8pr5><=F& zG7J-eo#+}s@&1my?7K?X5H|uC?TT{;^uF#5zuy<`v78O#fa3lGxeo+4D|>c`ZES3F zF*dZfyd}PXPWB@H=n4`>j||Noz71JY{zNJCyj`3;(dMndKIyV&j2?zRyW;x;wPlR` zPo|8n5u=Cv3m=lE!$q|Fn7|id@wm-`8$RK$E;wO5WdK&eHBh4a8|khDI*aT?FAslr zj-wMQrF4&^Fa-V&f{*)gV@O%}rxRTwKW;=5<-bT-bX{)FT$oIXjGc<`Z)Z)I%WGYi z6+|Vq&!gV>R0SJtpW5%`~MZwL9ZmXRlZFkFX-OXJ_hEDs4D3E|nRRG}GMdM-mf z95gZ?&RP#SF*`f#Pi@a$)^((G*_iDx;>3W~1kdtUGT+zuBoQ^qAHfjxaE+O+KJ1IXE zaHZi&)WAI}Uk1Rmgq?L|r=4I?w66dROk7tX7i+rCK<7!$a8+kbST#C|J*$@rMn5q{ zel?QQ6`G?&kcDtfr%!&% z(So0hD;d|K4BwI-B7aP{wlf}?@W9;3j!(-^1Q7If2z@O;@U|MXv>m7III6?Q^l)8g zxKler_G{y)B8lpHq~dYQyqRZ@&uu@Xc7w6Oz@)h@oh{+|&YxhJ=a42LFHT^Pt{YI- zZJ?{V-B6p7V(>K{`#^FZ1V{{pmRoo1rq9*vZ^A(?A;BRdID2*#8nLD3V5+$~)c9ny zz|Dz6oOwc>x6ehy64TAe#KmoXXrY`}b7y}Y$xpF}SVzhQ=TC`@!tG1_-Gi_*j+Y7e z(sWB|qB)SqP-OwvJm3kB%L48Kyp?N7m?&}}dk=YW3|ATsr3N|~Fb4NmkL>K=e~#+d z@vmDu^@P`;rDOK{*!IV;M0Xp~aeDMvkV39ixWi7uL`!4zwoaX31Ui;$ugg!F1REQ>Nh9$n^ z$VUh4%tc3bPCVzxljzlnKJq&{TS8a>e{OGZ3`b1IlZgXRA)KY~5sQ4Rz3=3l3468V zEACDd&d4dk{Y@>eW2RO|IBup7~19%ZloIA+b;nSzA z*`}}qu(pVU8{r-0VXrSSR~LD7~jsFMDG7ygcT)3)cr2s-|2QKD6l)hUrlu z9+?-Qc&Eur>$7;Ck{5{KXyzHtnc!EBzc5bJ&9EEslt@!NI!gdq~I+tv>D&?+=yOU?OIa~K}3dK*Ty%ppI!n8O-r z&$Z3ASIyidypMy7QanS&^v8{d#UQPe1tH<-cdXAK1H;z2FzY(cZr3Tu$~gi}bR?cO22tb>-82U3fT zhFRq3G`4cFm!b6-s;awyi zvn$|B)I%xiR&1nU8RPkp9bGNXPJ~1;*?m3zIUR$1nCqHgF3VRf(AZql7^LjsRK_7( zPSVXD%(1q&+nX7NN4S)PHH1)1iV9UoaX*sWrM>&;2zrz=POv%J_e%^+T#qIfH>s*= z&9mOgmBC}2H(|08jyd6?@=^+(K9!eq;jbM}N;x+c5s z7^0{jFY2nwCB)U)PWOK~b;2taO6`LSQru4vcg>0H=mUP@zHkf0xK$_|@-Br(KZ)El z{JOY3H1robJNBM(_bvDAY>o+@pX|g5hMypeScMXvp7<$b<$T1DyJAKf?4b+?aD6id zH$2tJ69PpH$(Sc$O2E@7fOAoO+BrlP4tDWCpk28Bbl0&1zi6409niFR>9pdl#U*%2 zdIlwNOfE;OY9`7;r8M?E(>0yhuBnV@!pdLOlStXKsElt*W0iKgR@YZ%aQb9+xd-dv z*{kR3V5+AI2}J~=_SIft^0Zc>3RuuabfH^k9btA!z1}GbqN#Z zL>UDBbJO4@fr;*Aq+_^(?Y_!a7hdjE39Ewgd8-nTXkI}Yu1^`)f&XWl_whf2-NW!o zCrt2Jmx4oT(8T&GvW__!80HgR?R=NW$v`Zzy@qV;KVI4XAy0etTIWp}MwIBP{0_%q zCE<0HZ~!D=2+PlCl?pfxw=xX>?J^R^{8W@3B9t${w-jM?wzDN5Oi?U zV-E&v@lE=`lc8BgIK0sCE+8X#sdt) zdt6AuT6|(QuPU^3yq7wnuOinm*PriUtIbXqba8`|-T#J0@IIH5unwIlr-4DL-cMEL zIzm;zKy6&EH~-Hrv~Wm*7KA zfAL#K1GdC`m}0nCDTM;@M1@@%`4Lx;&>0&dfdnSXkBXAFi7>JKuBHBN21X#eKX$A> z=9CHjv2-EH7?v16PDWbVclM@Ls6vYSlm4`ob6}$Z zedM2V;)K=UL?5}~iS^TDrR{UU5I3pcZR)gBD<`@>|f^e1f!!R$(H(RDGGMXh7sqvvF2B z3s(sZc4L!*ISp18aTmc?Tv3Aa-;xW~#pE`iOV3xS=bF${+&bb)?rYAT@H(3Ipa3MI zuak&#oA*MG#DW1i$}VpGhO;Kvzd|Z^?iyHW_$Dnf9k{+vQ-W%)9iA9yF4CAay7 z>%oV%3Umm2sa`4qiuRYJrT;UZ7mBAfFfGh2^{{B|a}gYVh~&WmWG`~xXDo|fYZ=ldfV;D6i~ zMgbV53NcF2(8TyBG9C=Z;$p3uTDphGnAuVIvkORQh($aTQT(EwK$`wSP3AnSERSNz_1$+=Y%F^D{KS)@K**S>^ zBeI>t@J}aAnA)1wBSl0#>c7ZLzi4UIN3%5i+d1!uzi*j8>Q{Wk5!0oh-0s(8t&gsbigrx5IERVc!V^J?Ve3Te#}7~+~B2B+;{GDGx* zwdiaLS9k7&K`uiw>Pe`Qa1Bb}AcrdzPDjYWp3`P7psNixNv?)#I&*^Y4gh1V0TS7@ zNXG5F;%P0~72(>>l;FayJ@iEw@mz;ItXH)=jq-L8V)kXYu5%`IAtBYa;3BLvT#p(! znCq9hhL{lL`c97zZOvF94fKX6<{OZi-AAkC?b!mE<7QyFdno;){&JJEF=*--48c*@`N+51tjAyly~s-Z4p^AZbBIhs=|(ImcubF zTo9kXXK!b?7p`Ljh4x2_gSk_9H`7gB(HZTpAqO=O0LDS}%N_P*Zw)2`ZeR_!azzX6 zPhQ1}y}xqmDuGqX52bRt9C2E5>uGc-WKkTqc2x<75(`Hyiy$Jo4M`4Q^<={xY^FVV zppOMOF|;+@)=3k_Ac4gyn2anXx1$nT)7ggPncPCz#M^Jf?VbCCgx4@!;`%#M$Im&G z$T}pWhjV2e3mG&6{>klVWQ~D~JRIhX8xk1p*V*f?gA?oFWIYgoy4D1C+uAc%@nB61T8H`QVWgMcycjIO@)Z1dYlArajtO6JB=1{#=9--7%!Q3acIGdczRMKt|zMXF0b0*~(t!97P1jkzjw| zC}0W8vvqDlcj6^mSs+xnqmw51l!aw)RfT$B={TM`IE_!4)1=^g%syr&25&>dL0g>Q zcR^<-)PjMcJHnk6yH_HO@e0}V_KQ8LT0 zHDfFHyE;8Sv^M%|Xp4P6D^w80yn)Od-%7_vmQkr;qjM(M@l|)f9UdW!h)yICXX-Q` zG=7gGWmutFl8&&+wIob=7vJ+;W|j2KlzwYSXM4vm+;CewwoLJ^Y>y~xalNzc?<#5`DBOgPy!COCZ^&SZJ130!hcp&V}G4sgr#`rHzn zExS7S+_gd%CER`8L1wfWYjRs%Qi1_rgfvyfFB&~2&>mwjBBbCI5ZV(Ue2aDW3uvM{;5hJRokeFPI7nbY+``2B?62KonhGST2974Z1b7ukc>%b zMwNh5DS(p(acQxff(@$E`@=N^w_D2kEZ^5@E+S#l5SD3Bp&nQ|c2Ean4T=E{910QL za1ZB(KeMR<+K-RK{t7^Go=(n#0a+hlj(^{s!NEF&ne7czu3@@aL$*tGSQ*c1q5PFh z+aiTjO;Z(nbo@y*$udvEDoNuRE@~=Ol;8@Y^wp*;Rdj(tn$Dyq&Y9&E6TE+n^cxM< zXBXkuJj>-IG}PvmQyEnf&ZY!fYd&RW=`y)Cyr(lKtl0!$RiHu^WyF=H7|$Uit@HdC zs|B^vmrLvXUQU`2+LU7$ZC)%wiuqhJb2%h~D>L2TV&_t5BNnPlGceP`y7^XNht1F z+M7K)18-cDAn>4kKc^*lRxK}f9(uAEUM=@G2G2W?wDe^Uv9}054 z5&V}M4|wN={QTL`fcZY=vkP6!glHDc`9jSgOYgpoNfHAk^1YXGUoZeA3|&jY+tANV zgbJ2NgIHo4kUXdePIvy0a$4Nhb}djx80tsDiU>*|b>Mg%`tPp1WN_!j?y~ zQ6W6h?jbGRnr?3{#hb79I^P6SqTSexXkxoa4=GQ9oC7c=csJ;MoOFVPtCl7Vd%G%> z0mXY?@{W7D;a_9b-p^SlJgQimt2UyE^8Tdc;6)tiU6K*W`hkUAx{XF3KL}5|Y;* zg0tGFUl0`-r0L<*#5P=V5koo_%A@cImyuwAHhG6LFfl%ojNE|ov0;Jdryk{06NccF zO3zoIk0uibzx)PJ&L3R<+l5w-ams`qT6YI%5lxTxSd!9SE!>n`_{eI7=Xw+#=j17a zKhCvg=RocC761z$g)J$MrxdO$8}>M7nA|h`mkUW)S0-$68mc5bffBgGshF$jUa&B$ z7%TQf=T4Y@1YtFxLJ3c-Pa^9fVAcBb#NN!_Ww`~`*EmmicP$N68f_PXP9;DiqMf_$)GVB=cQqE*Ncd1{bA2+bQqV z{*+_;+XW=iJ%@Bh0ZY~Ib6oT3*-dD73j_GOp6hBB+trK_l-~M2&`SFAC|!GHs8P6) z!}DFy#o8;2C?a?P2{_TkwwC<_qHKa&N4c`(0LPjUk+zgkQeh$C3NX|5%q9I zSG8oCcj_4vj8sENIs-?{TzIj|TyB41RTdLl{W6tW&+rmH1E)>g2FWX&Vy4jWQWthi zf-wFxswskq;$@_u6TepLMn+3uA&=z@XVCC+XFfZDxv~gqu96Ckw7r7b3XubwHlAof zPT1ysr3*PBLCARIKn^9cSCNbpr-qx&*(N5k!}q%vuJ=|)>nq{a&U;BWF^jO$@EU5k z4K(Z?F5qUUd3jV|L&HBO^BH49ArAPpuISA6ns8j+bnAs^mQNs&zSmJ78%teYp}{Jg zJxt*?hmcalY=-}KWeG_XglLUKg<{&GD!eqko|@Q57*q#t_>!^h+z(5$;SDYz!ICY< z0*rx)?v145GRM!{)Slys@ila$zsW^R*yeDseK^456q5F4N~66|@!;9kmmMa0i)%^n z1vyH5CE5jxUO~qc`CCa|+J8UAu87Jm-x`LuIX6DEnH;jR;*g>J_cEfG-%e&Tb+D}J z;Z#T#vkTYP`r0tO!+8@%ibB-xIFtzANx~!X5Oh$%u1Dm=c-r+Xt8<%Ra`vWT8iTCw zhIhG|^V(}6IS+e1ne@J!dg+xa9ygg|qzI-I^jYYCkIPDNq{EjPpK2Hkl-9v$p@Tu!jfOk8etf(3S~g? zevrI0gPGG3x3k)xaDrnx9EJ}$>4YV(NF#tz)?kV6!{j@Fe9ec{mU|cN4Igptgym-r z7WpS*OUp;8g<}wU(pV2N*VM;cM8Y~?Qhy|xXg^L`dZNed=Ce2=^yj$#)co0BfdTOe zmyzHh8$-1!8T+<@OCmo>k&O3WT<#7wYeMP(o3)r{!KTnK%^sgs63yJyqhz+_y>_#$PnQ<#m-4e`!)+Q#M-v6~vd zg@r3Xd*O0LD?N}zkOWY_LLza-QQi%D5 zJZp8_s-InE2AQupKR&c|f_%5%1mwj6qIkbfUbcb;m)Lw3A@>azkkASeoMIWSWPFn{ zc#y4p^c2gg-s&o6B%bQ~mTO3G%n8V*2)u9kLz*Wqa1&PjvV~EK zzemN#)G4m4XkkJj+_n=h0+0J}*t!Y->%uSiPYF*Vmj3Tk|9+s(T_pJ@I!lJ5y%_g@ z;4%|Bd=6kWn-}v>jw~HNqz-FuXl*Cr|GaOpuyp;A3rJX>jfJ|D!NmDva&n2eQH zaz1 zSqR5?RTu{q|3CD+#Y0}(2XjmFd&57SH^H#4$y#Zrydsw9{-wvw_NF$*vku#k3K5xV z(7Um@{BNgCaCX(~an)do{!$ng3wNzAUDOYk##b>N13g16{oCC6u~E|}KLmiFFGFZL zYsP#G+}>ZsVkKPGsS+McFvg~W`z?ei_REpoX6(X6q_zniuPD2`Qztat+Josim^iOM zPL3$<1g-U`a$e2+B1i=khT)2?WkM{OWA1}vwaO%+SE5kvaMc{e<8ONFI7S`V7{ZlZ zTY{%WaQ2E+z$?-T!ZNnhT!m`r_x6wq>{+ePGOXgN&Ys}%tj%30D3M)_WL&$HL&^|q zg{UV5t6$w|6ULY3;HMI(1YCmx4uJqWzq^PVF6~1Xk@lYXHwz6OhHJWz1S84;t@^#x z3@=I7q9nTc3NOICsT_Q+?Gi8wH4O*tku8~j7KmcK4q55jDP~=~dw=idJf|a%Q0?sR z1^O^t*L5TqxPr8rP=Q$;8}X&;dQ^2=sM0+vJeq=K-O}tvbP7!y92H|8w(cDcKO$V; zwVl;mM{ z3rQI01ZP52XvCJ9n^BELt7#u7s_EEyxBXnehW6Ja&N=}GC(ixJ$-X^YU+t}THlES7 zMuC&$2;)A$DHH6O2w;RYSmHa7d}c0sN&ph}7^`%U(bO>LWkZHk0?Xx(f5e!x;;6mH@4DMmS9V*NJZ ziTRdfJ{ruE{NhuHGP8^MY~8ZCKf9a_U*T4+Dq%!O_LDdAN%f&r%@c6hR2 z3+aIS?Va_K9G)BpmW~c}aFJa#nd8!Qd2cw(72reLa|^}VsS2{f1u5>s#qB%r*`7Nr zBaC^y<#2>^C#(P*C3cd^KE5zTek94ckYpd>jgfYZ<6>{PiARfA7>1*qK4Ekaj6!URp=1~b-2-?)rWe9D!qcbLSrphWZhY`*3q@m}%{vIlIpHlinN@a5N{OUyQkp%Gsf7ZSF+goL4eQcQ^G zP9@#ppyPzYqpA2Wz1Rpv-nxn{x~aiBEKOd)%p>}^dA1*>uqN!SgwtHgEPme71cjbK zTYc!eR7OeOLCG|+%57?WX)fHuH6<)K^z)kb2`sUlPBt!Zs>TR!oSkyMgb*D87@rC< zZGa}mX)@C6FC98!x6ckS4Z|7Eo6rxNP97Bz#eF8Z+4{=vD+V_Yc80T@HsNub{ZQTp}{sAt)%flMgTHA1RM5S zSFzW&ZdZqBNpvsQJJ+r^c}X;hQrgd@_FHG#n|nBBmMKeexpgkw+r=hWHR{IcUAsUf zk>^n)H{$t<;%a95wjJ@RwBG70yv1FtfI`=WB`n?qWp7;tCJ`FLm5TGJf<2GVB@rAQ_Z@9ggOwEDNvyn zS1RVHf+IlL>9D@KJM<8R>f|Tb%Nng6f7oHjnT=^}FMRr|ok3VQOol!YjJOU;eDmZh zJ9HT6We%MMXS-Mq9pQ*-kyOPf3kwy6kpTw=bL1~MUCN#fqBQK`l%1puCe91UNpsy7 zm-!ME?_;@#4TSE(@?Zvr>rUrSurC}h*6{dZwSq1|%M?Vn_^jRe&b}67^LAkIIJ+04 z+h{SnXsL@Kf5kOTwZHHj(nRIO2@KM;N?o+=Z9f5Bjn@>~dx0s!vBg@%z~v+~en&Dj zUaG;Bh&7668Y{6u%tKkdoM&uWh`zZf{0@mIoKGA0rR?p5Q_))wNcpZjN957 zi%41P%!Bi*(9*GoIt~PQ{fTi*WL;PT%-OluwVd9rrHp23%3tX)ZcZRY7f}(HhINso zLte*qA6JqvLph3x@KPZb_k7nkNosQ8CC?Sv4m#)=;Y6z4<9$=RaRGzvF* zojMq89n#)qGYAiJ8410>A;;TZ6M6N?@a1r1NvhX+;kzhnMrj3YTqI^6l zS=|VJ@9pixKWC91aTNZ`=@J|w@rU-XV@Tq90=YQGX*k#x@AH5IY{dJ6!V{e_VeKst z<5Z!7DCQ@TnHB3DgTt_Og|NOFp6t96y0{v&Lm07_ih!bhifGGAe)xL1iVaV7+6|D_ z(w>{w{281`pGH!y_dvl2_v)C7Yu(`W3{Q9Rguy(6vL~JhD-qA2h$~S99E6r8@0rfW z&CiyHtwh&m7y^G5!MSsh53bn0LN9%`b4+leBn;JtCbs90ja#4cZk&dY$9~w1v(d9~ z9d|68^105OFeC~nHlV;o`H`I(R4I5K71-ix?8pTDJ>mIIzM;KpCmxv~oLFB#R*noX z!>~$^n_#2$HADlv&6m*Xxb(b?dTfJYe64`p zr@`*_(99?QO2`YQ2t7bfFgxdy@sl63ks(LGK=T6&VFn=du8x)6cN0R1YG6Cd@

e5R*^;iTI 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 literal 0 HcmV?d00001 diff --git a/doc/build/doctrees/flake8_integration.doctree b/doc/build/doctrees/flake8_integration.doctree new file mode 100644 index 0000000000000000000000000000000000000000..958674f618160e16614a0bfbaab0d44b9e322cfb GIT binary patch literal 134326 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 MlF9@4P3oin0#>b{cK`qY literal 0 HcmV?d00001 diff --git a/doc/build/html/.buildinfo b/doc/build/html/.buildinfo new file mode 100644 index 0000000..def1d83 --- /dev/null +++ b/doc/build/html/.buildinfo @@ -0,0 +1,4 @@ +# Sphinx build info version 1 +# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. +config: 491b1a3dfc64f3a67eb65dcfc437df87 +tags: a205e9ed8462ae86fdd2f73488852ba9 diff --git a/doc/build/html/_modules/flake8_integration/configuration.html b/doc/build/html/_modules/flake8_integration/configuration.html new file mode 100644 index 0000000..8d72d25 --- /dev/null +++ b/doc/build/html/_modules/flake8_integration/configuration.html @@ -0,0 +1,190 @@ + + + + + + + + flake8_integration.configuration — gedit Flake8 integration 0.1 documentation + + + + + + + + + + + + + + + +
+
+
+
+ +

Source code for flake8_integration.configuration

+#-*- coding: utf8 -*-
+
+"""Module used to configure plugin from an easy-to-use widget
+
+:author: Sébastien CHAZALLET <s.chazallet@gmail.com>
+:organization: InsPyration EURL
+:copyright: Copyright © InsPyration EURL <www.inspyration.org>
+:license: GPL 3 <http://www.gnu.org/licenses/gpl.html>
+
+:version: 0.1
+"""
+
+from gettext import gettext as _
+
+from gi.repository import Gtk
+
+
+STUFF = 1
+
+
+
[docs]class GeditFlake8ConfigWidget(Gtk.Box): + +
[docs] def __init__(self, settings): + """Initialize the configuration widget from SettingsManager properties + + :type self: GeditFlake8ConfigWidget + :param self: Current widget + + :type settings: SettingsManager + :param settings: Object used to define all configurable properties + + :rtype: None + """ + + # the current widget is a box + Gtk.Box.__init__(self, orientation=Gtk.Orientation.VERTICAL, spacing=6) + + # reference to settings + self.settings = settings + + # store useful entries into a dictionary + # in order to get their values later + self.entries = {} + + # Add a label on the top ot widget + self.pack_start(Gtk.Label(_("Add to ignore list")), True, True, 0) + + # create one checkbox for each warning that can be ignored + for key, option in self.settings.get_ignore_items(): + button = Gtk.CheckButton(option) + button.set_active(self.settings.is_in_ignore_list(key)) + self.pack_start(button, True, True, 0) + # add the check button to entries + self.entries[key] = button + + # create an Hbox to get the label and the entry on the same line + hbox = Gtk.Box(spacing=3) + self.pack_start(hbox, True, True, 0) + + # label for complexity entry + hbox.pack_start(Gtk.Label(_("Complexity")), True, True, 0) + + # complexity entry is an widget allowing us to be sure to have an int + complexity_entry = Gtk.SpinButton() + complexity_entry.set_adjustment(Gtk.Adjustment( + self.settings.get_complexity(), -1, 21, 1, 1, 1)) + hbox.pack_start(complexity_entry, True, True, 0) + # add the widget to entries + self.entries[self.settings.get_complexity_key()] = complexity_entry + + # add an event to get back values and use them + self.connect("destroy", self.on_configure_destroy) +
+
[docs] def on_configure_destroy(self, widget): + """Called when the widget is destroyed + + :type self: GeditFlake8ConfigWidget + :param self: Current widget + + :type widget: GeditFlake8ConfigWidget + :param widget: Current widget + + :rtype: None + """ + + # extract complexity form element and get complexity value + complexity = int( + self.entries.pop(self.settings.get_complexity_key()).get_text()) + + # extract all other values + values = {k: v.get_active() for k, v in self.entries.items()} + + # add back complexity value + values[self.settings.get_complexity_key()] = complexity + + # update settings + self.settings.update_setting(values)
+
+ +
+
+
+
+
+ + +
+
+
+
+ + + + \ No newline at end of file diff --git a/doc/build/html/_modules/flake8_integration/integrated.html b/doc/build/html/_modules/flake8_integration/integrated.html new file mode 100644 index 0000000..7c5e3d7 --- /dev/null +++ b/doc/build/html/_modules/flake8_integration/integrated.html @@ -0,0 +1,194 @@ + + + + + + + + flake8_integration.integrated — gedit Flake8 integration 0.1 documentation + + + + + + + + + + + + + + + +
+
+
+
+ +

Source code for flake8_integration.integrated

+#-*- coding: utf8 -*-
+
+"""Module used to manage the results of flake8 :
+
+> 1. get them instead of print them ;
+> 2. format them ;
+
+This module works with Python2 and Python3
+
+:author: Sébastien CHAZALLET <s.chazallet@gmail.com>
+:organization: InsPyration EURL
+:copyright: Copyright © InsPyration EURL <www.inspyration.org>
+:license: GPL 3 <http://www.gnu.org/licenses/gpl.html>
+
+:version: 0.1
+"""
+
+
+import sys
+if sys.version_info.major == 2:
+    from io import BytesIO as IO
+else:
+    from io import StringIO as IO
+
+from flake8.main import check_code
+
+
+
[docs]def _intercept_printed(action, *args, **kwargs): + """Function used to redirect printed to returned value + + :type action: function + :param action: Called function that we intercept prints + + :rtype: str + :return: all that was printed by the call of action + + >>> def do(): + ... print('Hello World') + ... + >>> result = _intercept_printed(do) + >>> print(result) + Hello World + <BLANKLINE> + """ + with IO() as buff: + out, sys.stdout = sys.stdout, buff + action(*args, **kwargs) + sys.stdout = out + buff.seek(0) + return buff.read() + +
+
[docs]def _format_flake8_results(warnings): + """Function used to extract useful informations from flake8 results + + :type warnings: str + :param warnings: Warnings generated by flake8 + + :rtype: list + :return: list of (code:str, line:int, col:int, description:str) + + >>> result = _format_flake8_results( + ... '''stdin:1:10: E901 SyntaxError: unexpected EOF while parsing + ... stdin:2:1: E901 TokenError: EOF in multi-line statement''') + >>> for r in result: + ... print r + ... + (' e901', 1, 10, 'SyntaxError: unexpected EOF while parsing') + (' e901', 2, 1, 'TokenError: EOF in multi-line statement') + """ + result = [] + for warning in warnings.splitlines(): + cols = warning.split(':') + result.append((cols[3][:5].lower(), + int(cols[1]), + int(cols[2]), + cols[3][6:] + ':' + ':'.join(cols[4:]))) + return result + +
+
[docs]def check_code_and_get_formated_result(code, ignore=(), complexity=-1): + """Function used to return the printed result of flake8 check_code function + + >>> result = check_code_with_flake8("a = 42") + >>> print(result) + <BLANKLINE> + >>> result = check_code_with_flake8("a = f(42") + >>> print(result) + stdin:1:10: E901 SyntaxError: unexpected EOF while parsing + stdin:2:1: E901 TokenError: EOF in multi-line statement + <BLANKLINE> + """ + return _format_flake8_results( + _intercept_printed( + check_code, + **{"code": code, "ignore": ignore, "complexity": complexity})) + +
+if __name__ == '__main__': + import doctest + doctest.testmod() +
+ +
+
+
+
+
+ + +
+
+
+
+ + + + \ No newline at end of file diff --git a/doc/build/html/_modules/flake8_integration/settings.html b/doc/build/html/_modules/flake8_integration/settings.html new file mode 100644 index 0000000..c2ede62 --- /dev/null +++ b/doc/build/html/_modules/flake8_integration/settings.html @@ -0,0 +1,263 @@ + + + + + + + + flake8_integration.settings — gedit Flake8 integration 0.1 documentation + + + + + + + + + + + + + + + +
+
+
+
+ +

Source code for flake8_integration.settings

+#-*- coding: utf-8 -*-
+
+"""Module used to define how to manage settings and their persistence
+
+:author: Sébastien CHAZALLET <s.chazallet@gmail.com>
+:organization: InsPyration EURL
+:copyright: Copyright © InsPyration EURL <www.inspyration.org>
+:license: GPL 3 <http://www.gnu.org/licenses/gpl.html>
+
+:version: 0.1
+"""
+
+from gettext import gettext as _
+
+from gi.repository import Gio
+
+FLAKE8_KEY_BASE = 'org.gnome.gedit.plugins.flake8_integration'
+
+FLAKE8_KEY_W191 = "w191"
+FLAKE8_KEY_W291 = "w291"
+FLAKE8_KEY_W292 = "w292"
+FLAKE8_KEY_W293 = "w293"
+FLAKE8_KEY_W391 = "w391"
+
+FLAKE8_IGNORED_KEYS = (FLAKE8_KEY_W191, FLAKE8_KEY_W291, FLAKE8_KEY_W292,
+                       FLAKE8_KEY_W293, FLAKE8_KEY_W391)
+
+CONFIG_OPTIONS = {FLAKE8_KEY_W191: _("w191: identation contains tabs"),
+                  FLAKE8_KEY_W291: _("w291: trailling whitespace"),
+                  FLAKE8_KEY_W292: _("w292: no new line at end of file"),
+                  FLAKE8_KEY_W293: _("w293: blank line contains whitespace"),
+                  FLAKE8_KEY_W391: _("w391: blank line at end of file")}
+
+FLAKE8_KEY_COMPLEXITY = "complexity"
+
+
+
[docs]class SettingsManager(object): + """Allow to manage local settings and it persistent storage""" + +
[docs] def __init__(self): + """Initialize Settings Manager + + :type self: SettingsManager + :param self: Current manager + + :rtype: None + """ + + #_settings allow persistent storage of configuration + self._settings = Gio.Settings.new(FLAKE8_KEY_BASE) + #settings contains configuration usable in the plugin + self.settings = {} + # pull local settings from persistent storage + self.pull_settings() +
+
[docs] def pull_settings(self): + """Pull operation update local settings from persistent storage + + :type self: SettingsManager + :param self: Current manager + + :rtype: None + """ + + # pull ignore list + for tag in FLAKE8_IGNORED_KEYS: + self.settings[tag] = self._settings.get_boolean(tag) + # pull complexity + self.settings[FLAKE8_KEY_COMPLEXITY] = self._settings.get_int( + FLAKE8_KEY_COMPLEXITY) +
+
[docs] def push_settings(self): + """Push operation allow persistent storage update from local settings + + :type self: SettingsManager + :param self: Current manager + + :rtype: None + """ + + # push ignore list + for tag in FLAKE8_IGNORED_KEYS: + self._settings.set_boolean(tag, self.settings[tag]) + # push complexity + self._settings.set_int(FLAKE8_KEY_COMPLEXITY, + self.settings[FLAKE8_KEY_COMPLEXITY]) +
+
[docs] def update_setting(self, values={}): + """Updating settings allow to update local and persistent settings + + :type self: SettingsManager + :param self: Current manager + :type values: dict + :param values: values to store persistently + + :rtype: None + """ + # update local settings + self.settings.update(values) + # push local settings to persistent storage + self.push_settings() +
+
[docs] def get_ignore_keys(self): + """Allow to share information about keys used to store ignore list + + :type self: SettingsManager + :param self: Current manager + + :rtype: list of str + :return: list of ignore keys + """ + return FLAKE8_IGNORED_KEYS +
+
[docs] def get_ignore_items(self): + """Allow to share information about keys used to store ignore list + + :type self: SettingsManager + :param self: Current manager + + :rtype: list of tuple of str + :return: list of (ignore key, ignore label) + """ + return CONFIG_OPTIONS.items() +
+
[docs] def get_complexity_key(self): + """Allow to share information about key used to store complexity + + :type self: SettingsManager + :param self: Current manager + + :rtype: str + :return: name of the complexity key + """ + return FLAKE8_KEY_COMPLEXITY +
+
[docs] def is_in_ignore_list(self, key): + """Answer to "Is tag in ignore list ?" question + + :type self: SettingsManager + :param self: Current manager + :type key: str + :param key: flake8 key as defined in FLAKE8_IGNORED_KEYS + + :rtype: bool + :return: True if the key is in ignore list, False otherwise + """ + return self.settings[key] +
+
[docs] def get_ignore_list(self): + """Get the user defined warning keys to ignore + + :type self: SettingsManager + :param self: Current manager + + :rtype: list of str + :return: list of warning keys + """ + return [tag for tag, value in self.settings.items() + if tag in FLAKE8_IGNORED_KEYS and value is True] +
+
[docs] def get_complexity(self): + """Get the user defined complexity parameter + + :type self: SettingsManager + :param self: Current manager + + :rtype: int + :return: complexity + """ + return self.settings[FLAKE8_KEY_COMPLEXITY]
+
+ +
+
+
+
+
+ + +
+
+
+
+ + + + \ No newline at end of file diff --git a/doc/build/html/_modules/flake8_integration/tree.html b/doc/build/html/_modules/flake8_integration/tree.html new file mode 100644 index 0000000..0453f97 --- /dev/null +++ b/doc/build/html/_modules/flake8_integration/tree.html @@ -0,0 +1,232 @@ + + + + + + + + flake8_integration.tree — gedit Flake8 integration 0.1 documentation + + + + + + + + + + + + + + + +
+
+
+
+ +

Source code for flake8_integration.tree

+#-*- coding: utf-8 -*-
+
+"""Module managing the tree and all stuff around it
+
+:author: Sébastien CHAZALLET <s.chazallet@gmail.com>
+:organization: InsPyration EURL
+:copyright: Copyright © InsPyration EURL <www.inspyration.org>
+:license: GPL 3 <http://www.gnu.org/licenses/gpl.html>
+
+:version: 0.1
+"""
+
+
+from gettext import gettext as _
+
+from gi.repository import Gtk
+
+SP_COL_TITLES = (_("Code"), _("L"), _("C"), _("Errors / Warnings"))
+SP_COL_TYPES = (str, int, int, str)
+
+PYTHON_ICON = 'gnome-mime-text-x-python'
+
+
+
[docs]class GeditFlake8Tree(Gtk.TreeView): + """Tree inside gedit side panel containing all flake8 warnings""" + +
[docs] def __init__(self, window): + """Configure tree columns, tree selection and add it to side panel + + :type self: GeditFlake8Tree + :param self: Current tree + :type window: Gedit.Window + :param window: GEdit window object + + :rtype: None + """ + + # use a list store to manage warnings + Gtk.TreeView.__init__(self, Gtk.ListStore(*SP_COL_TYPES)) + + # compose window + self.window = window + + # create columns + for index, title in enumerate(SP_COL_TITLES): + self.append_column(Gtk.TreeViewColumn( + _(title), + Gtk.CellRendererText(), + text=index)) + + # Allow to do something when a tree line is selected + self.get_selection().connect("changed", self.on_tree_selection) + + # create an icon for the side panel + image = Gtk.Image() + image.set_from_icon_name(PYTHON_ICON, Gtk.IconSize.MENU) + + # get the side panel (created by GEdit) + sp = self.window.get_side_panel() + + # Add the tree in the side panel + sp.add_item( + self, + 'flake8_results', + _("Flake8 results"), + image + ) + + # set the side panel invisible + sp.set_property("visible", False) +
+
[docs] def remove(self): + """remove the tree from the side panel + + :type self: GeditFlake8Tree + :param self: Current tree + + :rtype: None + """ + + # get the side panel (created by GEdit) + sp = self.window.get_side_panel() + sp.remove_item(self) +
+
[docs] def activate(self): + """show the tree in the side panel + + :type self: GeditFlake8Tree + :param self: Current tree + + :rtype: None + """ + + sp = self.window.get_side_panel() + sp.set_property("visible", True) + sp.activate_item(self) +
+
[docs] def on_tree_selection(self, selection): + """When a tree line is selected, go to the file linked line + + :type self: GeditFlake8Tree + :param self: Current tree + :type selection: Gtk.TreeSelection + :param selection: Current selection + + :rtype: None + """ + + doc = self.window.get_active_document() + if not doc: + return + + # get the tree line selected and put the cursor to the file linked line + model, treeiter = selection.get_selected() + doc.goto_line(model[treeiter][1] - 1) + + # scroll the view to the cursor + self.window.get_active_view().scroll_to_cursor() +
+
[docs] def update_model(self, datas): + """Update the tree with new datas + + :type self: GeditFlake8Tree + :param self: Current tree + :type datas: list + :param datas: list of ready to use (str, int, int, str) tuples + + :rtype: None + """ + + # get the model (Gtk.ListStore) + model = self.get_model() + + # Empty model + model.clear() + + # Fill model with new values + for data in datas: + model.append(data)
+
+ +
+
+
+
+
+ + +
+
+
+
+ + + + \ No newline at end of file diff --git a/doc/build/html/_modules/flake8_integration/windowactivatable.html b/doc/build/html/_modules/flake8_integration/windowactivatable.html new file mode 100644 index 0000000..99fe0f3 --- /dev/null +++ b/doc/build/html/_modules/flake8_integration/windowactivatable.html @@ -0,0 +1,277 @@ + + + + + + + + flake8_integration.windowactivatable — gedit Flake8 integration 0.1 documentation + + + + + + + + + + + + + + + +
+
+
+
+ +

Source code for flake8_integration.windowactivatable

+#-*- coding: utf-8 -*-
+
+"""Main module of the Plugin for gedit that allow flake8 integration
+
+:author: Sébastien CHAZALLET <s.chazallet@gmail.com>
+:organization: InsPyration EURL
+:copyright: Copyright © InsPyration EURL <www.inspyration.org>
+:license: GPL 3 <http://www.gnu.org/licenses/gpl.html>
+
+:version: 0.1
+"""
+
+
+from gettext import gettext as _
+
+from gi.repository import GObject, Gtk, Gedit, PeasGtk
+
+from integrated import check_code_and_get_formated_result as check_code
+from settings import SettingsManager
+from tree import GeditFlake8Tree
+from configuration import GeditFlake8ConfigWidget
+
+# Menu to insert in gedit's 'Tools' menu
+ui_str = """<ui>
+  <menubar name="MenuBar">
+    <menu name="ToolsMenu" action="Tools">
+      <placeholder name="ToolsOps_2">
+        <menuitem name="GeditFlake8" action="GeditFlake8"/>
+      </placeholder>
+    </menu>
+  </menubar>
+</ui>
+"""
+
+
+
[docs]class GeditFlake8WindowActivatable(GObject.Object, + Gedit.WindowActivatable, + PeasGtk.Configurable): + """Main module of the gedit flake8 plugin""" + + __gtype_name__ = "GeditFlake8WindowActivatable" + + window = GObject.property(type=Gedit.Window) + +
[docs] def __init__(self): + """Initialize plugin + + :type action: function + :param action: Called function that we intercept prints + + :rtype: None + """ + GObject.Object.__init__(self) + # Initialize settings + self._settings = SettingsManager() + self.flake8_tree = None +
+
[docs] def do_activate(self): + """Activate the plugin + + :type self: GeditFlake8WindowActivatable + :param self: Current plugin + + :rtype: None + """ + # Get the Gtk.UIManager + manager = self.window.get_ui_manager() + + # Create a new action group + self._action_group = Gtk.ActionGroup("GeditFlake8PluginActions") + self._action_group.add_actions([("GeditFlake8", + None, + _("Check Python source code"), + None, + _("Check Python source code"), + self.on_check_source_code)]) + + # Insert the action group + manager.insert_action_group(self._action_group, -1) + + # Merge the UI + self._ui_id = manager.add_ui_from_string(ui_str) + + # Create a tree + self.flake8_tree = GeditFlake8Tree(self.window) +
+
[docs] def do_deactivate(self): + """Deactivate the plugin + + :type self: GeditFlake8WindowActivatable + :param self: Current plugin + + :rtype: None + """ + # Remove the tree from the side panel + self.flake8_tree.remove() + + # Delete tree object + self.flake8_tree = None + + # Get the Gtk.UIManager + manager = self.window.get_ui_manager() + + # Remove the ui + manager.remove_ui(self._ui_id) + + # Remove the action group + manager.remove_action_group(self._action_group) + + # Delete the action group object + self._action_group = None + + # Make sure the manager updates + manager.ensure_update() +
+
[docs] def do_update_state(self): + """Allow to activate the plugin only if the document is python code + If the document is a new document, it hasto be saved or the language of + the document has to be set. + + :type self: GeditFlake8WindowActivatable + :param self: Current plugin + + :rtype: None + """ + state = False + doc = self.window.get_active_document() + if doc is not None: + language = doc.get_language() + if language is not None: + state = language.get_id() in ["python", "python3"] + self._action_group.set_sensitive(state) +
+
[docs] def do_create_configure_widget(self): + """Action when a user want to configure the plugin + + :type self: GeditFlake8WindowActivatable + :param self: Current plugin + + :rtype: GeditFlake8ConfigWidget + :return: a configuration widget + """ + return GeditFlake8ConfigWidget(self._settings) +
+
[docs] def on_check_source_code(self, action): + """The user ask to check code source : + 1\ check there is a doc and the doc is python code + 2\ use flake8 + 3\ put flake8 results into the tree and activate it + + :type self: GeditFlake8WindowActivatable + :param self: Current plugin + + :type action: Gtk.Action + :param action: Called function that we intercept prints + + :rtype: None + """ + + # Get the document content + doc = self.window.get_active_document() + if not doc: + return + + # check the language of current document is set + language = doc.get_language() + if language is None: + return + + # check the language of current document is python + if language.get_id() not in ["python", "python3"]: + return + + # Use flake8 to get warnings + warnings = check_code( + doc.get_text(doc.get_start_iter(), doc.get_end_iter(), False), + map(str.upper, self._settings.get_ignore_list()), + self._settings.get_complexity()) + + # Empty store + self.flake8_tree.update_model(warnings) + + # Activate tree + self.flake8_tree.activate()
+
+ +
+
+
+
+
+ + +
+
+
+
+ + + + \ No newline at end of file diff --git a/doc/build/html/_modules/index.html b/doc/build/html/_modules/index.html new file mode 100644 index 0000000..b3251d4 --- /dev/null +++ b/doc/build/html/_modules/index.html @@ -0,0 +1,95 @@ + + + + + + + + Overview: module code — gedit Flake8 integration 0.1 documentation + + + + + + + + + + + + + + +
+ +
+
+ + +
+
+
+
+ + + + \ No newline at end of file diff --git a/doc/build/html/_sources/flake8_integration.txt b/doc/build/html/_sources/flake8_integration.txt new file mode 100644 index 0000000..02418fa --- /dev/null +++ b/doc/build/html/_sources/flake8_integration.txt @@ -0,0 +1,60 @@ +Auto generated documentation +============================ + +Plugin +------ +.. automodule:: flake8_integration + :members: + :private-members: + :special-members: + +Integrated +---------- + +.. automodule:: flake8_integration.integrated + :members: + :private-members: + :special-members: + +Window activatable +------------------ + +.. automodule:: flake8_integration.windowactivatable + :members: + :private-members: + :special-members: + +Tree +---- + +.. automodule:: flake8_integration.tree + :members: + :private-members: + :special-members: + +Settings +-------- + +.. automodule:: flake8_integration.settings + :members: + :private-members: + :special-members: + +Configuration +------------- + +.. automodule:: flake8_integration.configuration + :members: + :private-members: + :special-members: + +.. autoclass:: GeditFlake8ConfigWidget + :members: + :private-members: + :special-members: + +Status +------ + +This plugin is under active development. + diff --git a/doc/build/html/_sources/index.txt b/doc/build/html/_sources/index.txt new file mode 100644 index 0000000..53e9347 --- /dev/null +++ b/doc/build/html/_sources/index.txt @@ -0,0 +1,23 @@ +.. gedit Flake8 integration documentation master file, created by + sphinx-quickstart on Mon Apr 8 11:46:38 2013. + You can adapt this file completely to your liking, but it should at least + contain the root `toctree` directive. + +Welcome to gedit Flake8 integration's documentation! +==================================================== + +Contents: + +.. toctree:: + :maxdepth: 2 + + flake8_integration + + +Indices and tables +================== + +* :ref:`genindex` +* :ref:`modindex` +* :ref:`search` + diff --git a/doc/build/html/_static/ajax-loader.gif b/doc/build/html/_static/ajax-loader.gif new file mode 100644 index 0000000000000000000000000000000000000000..61faf8cab23993bd3e1560bff0668bd628642330 GIT binary patch literal 673 zcmZ?wbhEHb6krfw_{6~Q|Nno%(3)e{?)x>&1u}A`t?OF7Z|1gRivOgXi&7IyQd1Pl zGfOfQ60;I3a`F>X^fL3(@);C=vM_KlFfb_o=k{|A33hf2a5d61U}gjg=>Rd%XaNQW zW@Cw{|b%Y*pl8F?4B9 zlo4Fz*0kZGJabY|>}Okf0}CCg{u4`zEPY^pV?j2@h+|igy0+Kz6p;@SpM4s6)XEMg z#3Y4GX>Hjlml5ftdH$4x0JGdn8~MX(U~_^d!Hi)=HU{V%g+mi8#UGbE-*ao8f#h+S z2a0-5+vc7MU$e-NhmBjLIC1v|)9+Im8x1yacJ7{^tLX(ZhYi^rpmXm0`@ku9b53aN zEXH@Y3JaztblgpxbJt{AtE1ad1Ca>{v$rwwvK(>{m~Gf_=-Ro7Fk{#;i~+{{>QtvI yb2P8Zac~?~=sRA>$6{!(^3;ZP0TPFR(G_-UDU(8Jl0?(IXu$~#4A!880|o%~Al1tN literal 0 HcmV?d00001 diff --git a/doc/build/html/_static/basic.css b/doc/build/html/_static/basic.css new file mode 100644 index 0000000..a04c8e1 --- /dev/null +++ b/doc/build/html/_static/basic.css @@ -0,0 +1,540 @@ +/* + * basic.css + * ~~~~~~~~~ + * + * Sphinx stylesheet -- basic theme. + * + * :copyright: Copyright 2007-2013 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ + +/* -- main layout ----------------------------------------------------------- */ + +div.clearer { + clear: both; +} + +/* -- relbar ---------------------------------------------------------------- */ + +div.related { + width: 100%; + font-size: 90%; +} + +div.related h3 { + display: none; +} + +div.related ul { + margin: 0; + padding: 0 0 0 10px; + list-style: none; +} + +div.related li { + display: inline; +} + +div.related li.right { + float: right; + margin-right: 5px; +} + +/* -- sidebar --------------------------------------------------------------- */ + +div.sphinxsidebarwrapper { + padding: 10px 5px 0 10px; +} + +div.sphinxsidebar { + float: left; + width: 230px; + margin-left: -100%; + font-size: 90%; +} + +div.sphinxsidebar ul { + list-style: none; +} + +div.sphinxsidebar ul ul, +div.sphinxsidebar ul.want-points { + margin-left: 20px; + list-style: square; +} + +div.sphinxsidebar ul ul { + margin-top: 0; + margin-bottom: 0; +} + +div.sphinxsidebar form { + margin-top: 10px; +} + +div.sphinxsidebar input { + border: 1px solid #98dbcc; + font-family: sans-serif; + font-size: 1em; +} + +div.sphinxsidebar #searchbox input[type="text"] { + width: 170px; +} + +div.sphinxsidebar #searchbox input[type="submit"] { + width: 30px; +} + +img { + border: 0; +} + +/* -- search page ----------------------------------------------------------- */ + +ul.search { + margin: 10px 0 0 20px; + padding: 0; +} + +ul.search li { + padding: 5px 0 5px 20px; + background-image: url(file.png); + background-repeat: no-repeat; + background-position: 0 7px; +} + +ul.search li a { + font-weight: bold; +} + +ul.search li div.context { + color: #888; + margin: 2px 0 0 30px; + text-align: left; +} + +ul.keywordmatches li.goodmatch a { + font-weight: bold; +} + +/* -- index page ------------------------------------------------------------ */ + +table.contentstable { + width: 90%; +} + +table.contentstable p.biglink { + line-height: 150%; +} + +a.biglink { + font-size: 1.3em; +} + +span.linkdescr { + font-style: italic; + padding-top: 5px; + font-size: 90%; +} + +/* -- general index --------------------------------------------------------- */ + +table.indextable { + width: 100%; +} + +table.indextable td { + text-align: left; + vertical-align: top; +} + +table.indextable dl, table.indextable dd { + margin-top: 0; + margin-bottom: 0; +} + +table.indextable tr.pcap { + height: 10px; +} + +table.indextable tr.cap { + margin-top: 10px; + background-color: #f2f2f2; +} + +img.toggler { + margin-right: 3px; + margin-top: 3px; + cursor: pointer; +} + +div.modindex-jumpbox { + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + margin: 1em 0 1em 0; + padding: 0.4em; +} + +div.genindex-jumpbox { + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + margin: 1em 0 1em 0; + padding: 0.4em; +} + +/* -- general body styles --------------------------------------------------- */ + +a.headerlink { + visibility: hidden; +} + +h1:hover > a.headerlink, +h2:hover > a.headerlink, +h3:hover > a.headerlink, +h4:hover > a.headerlink, +h5:hover > a.headerlink, +h6:hover > a.headerlink, +dt:hover > a.headerlink { + visibility: visible; +} + +div.body p.caption { + text-align: inherit; +} + +div.body td { + text-align: left; +} + +.field-list ul { + padding-left: 1em; +} + +.first { + margin-top: 0 !important; +} + +p.rubric { + margin-top: 30px; + font-weight: bold; +} + +img.align-left, .figure.align-left, object.align-left { + clear: left; + float: left; + margin-right: 1em; +} + +img.align-right, .figure.align-right, object.align-right { + clear: right; + float: right; + margin-left: 1em; +} + +img.align-center, .figure.align-center, object.align-center { + display: block; + margin-left: auto; + margin-right: auto; +} + +.align-left { + text-align: left; +} + +.align-center { + text-align: center; +} + +.align-right { + text-align: right; +} + +/* -- sidebars -------------------------------------------------------------- */ + +div.sidebar { + margin: 0 0 0.5em 1em; + border: 1px solid #ddb; + padding: 7px 7px 0 7px; + background-color: #ffe; + width: 40%; + float: right; +} + +p.sidebar-title { + font-weight: bold; +} + +/* -- topics ---------------------------------------------------------------- */ + +div.topic { + border: 1px solid #ccc; + padding: 7px 7px 0 7px; + margin: 10px 0 10px 0; +} + +p.topic-title { + font-size: 1.1em; + font-weight: bold; + margin-top: 10px; +} + +/* -- admonitions ----------------------------------------------------------- */ + +div.admonition { + margin-top: 10px; + margin-bottom: 10px; + padding: 7px; +} + +div.admonition dt { + font-weight: bold; +} + +div.admonition dl { + margin-bottom: 0; +} + +p.admonition-title { + margin: 0px 10px 5px 0px; + font-weight: bold; +} + +div.body p.centered { + text-align: center; + margin-top: 25px; +} + +/* -- tables ---------------------------------------------------------------- */ + +table.docutils { + border: 0; + border-collapse: collapse; +} + +table.docutils td, table.docutils th { + padding: 1px 8px 1px 5px; + border-top: 0; + border-left: 0; + border-right: 0; + border-bottom: 1px solid #aaa; +} + +table.field-list td, table.field-list th { + border: 0 !important; +} + +table.footnote td, table.footnote th { + border: 0 !important; +} + +th { + text-align: left; + padding-right: 5px; +} + +table.citation { + border-left: solid 1px gray; + margin-left: 1px; +} + +table.citation td { + border-bottom: none; +} + +/* -- other body styles ----------------------------------------------------- */ + +ol.arabic { + list-style: decimal; +} + +ol.loweralpha { + list-style: lower-alpha; +} + +ol.upperalpha { + list-style: upper-alpha; +} + +ol.lowerroman { + list-style: lower-roman; +} + +ol.upperroman { + list-style: upper-roman; +} + +dl { + margin-bottom: 15px; +} + +dd p { + margin-top: 0px; +} + +dd ul, dd table { + margin-bottom: 10px; +} + +dd { + margin-top: 3px; + margin-bottom: 10px; + margin-left: 30px; +} + +dt:target, .highlighted { + background-color: #fbe54e; +} + +dl.glossary dt { + font-weight: bold; + font-size: 1.1em; +} + +.field-list ul { + margin: 0; + padding-left: 1em; +} + +.field-list p { + margin: 0; +} + +.refcount { + color: #060; +} + +.optional { + font-size: 1.3em; +} + +.versionmodified { + font-style: italic; +} + +.system-message { + background-color: #fda; + padding: 5px; + border: 3px solid red; +} + +.footnote:target { + background-color: #ffa; +} + +.line-block { + display: block; + margin-top: 1em; + margin-bottom: 1em; +} + +.line-block .line-block { + margin-top: 0; + margin-bottom: 0; + margin-left: 1.5em; +} + +.guilabel, .menuselection { + font-family: sans-serif; +} + +.accelerator { + text-decoration: underline; +} + +.classifier { + font-style: oblique; +} + +abbr, acronym { + border-bottom: dotted 1px; + cursor: help; +} + +/* -- code displays --------------------------------------------------------- */ + +pre { + overflow: auto; + overflow-y: hidden; /* fixes display issues on Chrome browsers */ +} + +td.linenos pre { + padding: 5px 0px; + border: 0; + background-color: transparent; + color: #aaa; +} + +table.highlighttable { + margin-left: 0.5em; +} + +table.highlighttable td { + padding: 0 0.5em 0 0.5em; +} + +tt.descname { + background-color: transparent; + font-weight: bold; + font-size: 1.2em; +} + +tt.descclassname { + background-color: transparent; +} + +tt.xref, a tt { + background-color: transparent; + font-weight: bold; +} + +h1 tt, h2 tt, h3 tt, h4 tt, h5 tt, h6 tt { + background-color: transparent; +} + +.viewcode-link { + float: right; +} + +.viewcode-back { + float: right; + font-family: sans-serif; +} + +div.viewcode-block:target { + margin: -1px -10px; + padding: 0 10px; +} + +/* -- math display ---------------------------------------------------------- */ + +img.math { + vertical-align: middle; +} + +div.body div.math p { + text-align: center; +} + +span.eqno { + float: right; +} + +/* -- printout stylesheet --------------------------------------------------- */ + +@media print { + div.document, + div.documentwrapper, + div.bodywrapper { + margin: 0 !important; + width: 100%; + } + + div.sphinxsidebar, + div.related, + div.footer, + #top-link { + display: none; + } +} \ No newline at end of file diff --git a/doc/build/html/_static/comment-bright.png b/doc/build/html/_static/comment-bright.png new file mode 100644 index 0000000000000000000000000000000000000000..551517b8c83b76f734ff791f847829a760ad1903 GIT binary patch literal 3500 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 A2LJ#7 literal 0 HcmV?d00001 diff --git a/doc/build/html/_static/comment.png b/doc/build/html/_static/comment.png new file mode 100644 index 0000000000000000000000000000000000000000..92feb52b8824c6b0f59b658b1196c61de9162a95 GIT binary patch literal 3445 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 Xn!ZpXD%P(H00000NkvXXu0mjf= 0 && !jQuery(node.parentNode).hasClass(className)) { + var span = document.createElement("span"); + span.className = className; + span.appendChild(document.createTextNode(val.substr(pos, text.length))); + node.parentNode.insertBefore(span, node.parentNode.insertBefore( + document.createTextNode(val.substr(pos + text.length)), + node.nextSibling)); + node.nodeValue = val.substr(0, pos); + } + } + else if (!jQuery(node).is("button, select, textarea")) { + jQuery.each(node.childNodes, function() { + highlight(this); + }); + } + } + return this.each(function() { + highlight(this); + }); +}; + +/** + * Small JavaScript module for the documentation. + */ +var Documentation = { + + init : function() { + this.fixFirefoxAnchorBug(); + this.highlightSearchWords(); + this.initIndexTable(); + }, + + /** + * i18n support + */ + TRANSLATIONS : {}, + PLURAL_EXPR : function(n) { return n == 1 ? 0 : 1; }, + LOCALE : 'unknown', + + // gettext and ngettext don't access this so that the functions + // can safely bound to a different name (_ = Documentation.gettext) + gettext : function(string) { + var translated = Documentation.TRANSLATIONS[string]; + if (typeof translated == 'undefined') + return string; + return (typeof translated == 'string') ? translated : translated[0]; + }, + + ngettext : function(singular, plural, n) { + var translated = Documentation.TRANSLATIONS[singular]; + if (typeof translated == 'undefined') + return (n == 1) ? singular : plural; + return translated[Documentation.PLURALEXPR(n)]; + }, + + addTranslations : function(catalog) { + for (var key in catalog.messages) + this.TRANSLATIONS[key] = catalog.messages[key]; + this.PLURAL_EXPR = new Function('n', 'return +(' + catalog.plural_expr + ')'); + this.LOCALE = catalog.locale; + }, + + /** + * add context elements like header anchor links + */ + addContextElements : function() { + $('div[id] > :header:first').each(function() { + $('\u00B6'). + attr('href', '#' + this.id). + attr('title', _('Permalink to this headline')). + appendTo(this); + }); + $('dt[id]').each(function() { + $('\u00B6'). + attr('href', '#' + this.id). + attr('title', _('Permalink to this definition')). + appendTo(this); + }); + }, + + /** + * workaround a firefox stupidity + */ + fixFirefoxAnchorBug : function() { + if (document.location.hash && $.browser.mozilla) + window.setTimeout(function() { + document.location.href += ''; + }, 10); + }, + + /** + * highlight the search words provided in the url in the text + */ + highlightSearchWords : function() { + var params = $.getQueryParameters(); + var terms = (params.highlight) ? params.highlight[0].split(/\s+/) : []; + if (terms.length) { + var body = $('div.body'); + window.setTimeout(function() { + $.each(terms, function() { + body.highlightText(this.toLowerCase(), 'highlighted'); + }); + }, 10); + $('') + .appendTo($('#searchbox')); + } + }, + + /** + * init the domain index toggle buttons + */ + initIndexTable : function() { + var togglers = $('img.toggler').click(function() { + var src = $(this).attr('src'); + var idnum = $(this).attr('id').substr(7); + $('tr.cg-' + idnum).toggle(); + if (src.substr(-9) == 'minus.png') + $(this).attr('src', src.substr(0, src.length-9) + 'plus.png'); + else + $(this).attr('src', src.substr(0, src.length-8) + 'minus.png'); + }).css('display', ''); + if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) { + togglers.click(); + } + }, + + /** + * helper function to hide the search marks again + */ + hideSearchWords : function() { + $('#searchbox .highlight-link').fadeOut(300); + $('span.highlighted').removeClass('highlighted'); + }, + + /** + * make the url absolute + */ + makeURL : function(relativeURL) { + return DOCUMENTATION_OPTIONS.URL_ROOT + '/' + relativeURL; + }, + + /** + * get the current relative url + */ + getCurrentURL : function() { + var path = document.location.pathname; + var parts = path.split(/\//); + $.each(DOCUMENTATION_OPTIONS.URL_ROOT.split(/\//), function() { + if (this == '..') + parts.pop(); + }); + var url = parts.join('/'); + return path.substring(url.lastIndexOf('/') + 1, path.length - 1); + } +}; + +// quick alias for translations +_ = Documentation.gettext; + +$(document).ready(function() { + Documentation.init(); +}); diff --git a/doc/build/html/_static/down-pressed.png b/doc/build/html/_static/down-pressed.png new file mode 100644 index 0000000000000000000000000000000000000000..6f7ad782782e4f8e39b0c6e15c7344700cdd2527 GIT binary patch literal 368 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|*pj^6U4S$Y z{B+)352QE?JR*yM+OLB!qm#z$3ZNi+iKnkC`z>}Z23@f-Ava~9&<9T!#}JFtXD=!G zGdl{fK6ro2OGiOl+hKvH6i=D3%%Y^j`yIkRn!8O>@bG)IQR0{Kf+mxNd=_WScA8u_ z3;8(7x2){m9`nt+U(Nab&1G)!{`SPVpDX$w8McLTzAJ39wprG3p4XLq$06M`%}2Yk zRPPsbES*dnYm1wkGL;iioAUB*Or2kz6(-M_r_#Me-`{mj$Z%( literal 0 HcmV?d00001 diff --git a/doc/build/html/_static/down.png b/doc/build/html/_static/down.png new file mode 100644 index 0000000000000000000000000000000000000000..3003a88770de3977d47a2ba69893436a2860f9e7 GIT binary patch literal 363 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|*pj^6U4S$Y z{B+)352QE?JR*yM+OLB!qm#z$3ZNi+iKnkC`z>}xaV3tUZ$qnrLa#kt978NlpS`ru z&)HFc^}^>{UOEce+71h5nn>6&w6A!ieNbu1wh)UGh{8~et^#oZ1# z>T7oM=FZ~xXWnTo{qnXm$ZLOlqGswI_m2{XwVK)IJmBjW{J3-B3x@C=M{ShWt#fYS9M?R;8K$~YwlIqwf>VA7q=YKcwf2DS4Zj5inDKXXB1zl=(YO3ST6~rDq)&z z*o>z)=hxrfG-cDBW0G$!?6{M<$@{_4{m1o%Ub!naEtn|@^frU1tDnm{r-UW|!^@B8 literal 0 HcmV?d00001 diff --git a/doc/build/html/_static/file.png b/doc/build/html/_static/file.png new file mode 100644 index 0000000000000000000000000000000000000000..d18082e397e7e54f20721af768c4c2983258f1b4 GIT binary patch literal 392 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=G`DAk4@xYmNj^kiEpy*OmP$HyOL$D9)yc9|lc|nKf<9@eUiWd>3GuTC!a5vdfWYEazjncPj5ZQX%+1 zt8B*4=d)!cdDz4wr^#OMYfqGz$1LDFF>|#>*O?AGil(WEs?wLLy{Gj2J_@opDm%`dlax3yA*@*N$G&*ukFv>P8+2CBWO(qz zD0k1@kN>hhb1_6`&wrCswzINE(evt-5C1B^STi2@PmdKI;Vst0PQB6!2kdN literal 0 HcmV?d00001 diff --git a/doc/build/html/_static/jquery.js b/doc/build/html/_static/jquery.js new file mode 100644 index 0000000..198b3ff --- /dev/null +++ b/doc/build/html/_static/jquery.js @@ -0,0 +1,4 @@ +/*! jQuery v1.7.1 jquery.com | jquery.org/license */ +(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"":"")+""),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){if(c!=="border")for(;g=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c
a",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="
"+""+"
",a=c.createElement("div"),a.style.cssText=m+"width:0;height:0;position:static;top:0;margin-top:"+j+"px",r.insertBefore(a,r.firstChild),q=c.createElement("div"),a.appendChild(q),q.innerHTML="
t
",l=q.getElementsByTagName("td"),p=l[0].offsetHeight===0,l[0].style.display="",l[1].style.display="none",b.reliableHiddenOffsets=p&&l[0].offsetHeight===0,q.innerHTML="",q.style.width=q.style.paddingLeft="1px",f.boxModel=b.boxModel=q.offsetWidth===2,typeof q.style.zoom!="undefined"&&(q.style.display="inline",q.style.zoom=1,b.inlineBlockNeedsLayout=q.offsetWidth===2,q.style.display="",q.innerHTML="
",b.shrinkWrapBlocks=q.offsetWidth!==2),q.style.cssText=k+m,q.innerHTML=o,d=q.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,i={doesNotAddBorder:e.offsetTop!==5,doesAddBorderForTableAndCells:h.offsetTop===5},e.style.position="fixed",e.style.top="20px",i.fixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",i.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,i.doesNotIncludeMarginInBodyOffset=r.offsetTop!==j,r.removeChild(a),q=a=null,f.extend(b,i))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;h=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/\bhover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")}; +f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;le&&i.push({elem:this,matches:d.slice(e)});for(j=0;j0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="

";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h0)for(h=g;h=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/",""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div
","
"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function() +{for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1>");try{for(var c=0,d=this.length;c1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||!bc.test("<"+a.nodeName)?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");b===c?bh.appendChild(o):U(b).appendChild(o),o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]===""&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return br.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bq,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bq.test(g)?g.replace(bq,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,b){var c,d,e;b=b.replace(bs,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b)));return c}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bt.test(f)&&bu.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bD=/%20/g,bE=/\[\]$/,bF=/\r?\n/g,bG=/#.*$/,bH=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bI=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bJ=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bK=/^(?:GET|HEAD)$/,bL=/^\/\//,bM=/\?/,bN=/)<[^<]*)*<\/script>/gi,bO=/^(?:select|textarea)/i,bP=/\s+/,bQ=/([?&])_=[^&]*/,bR=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bS=f.fn.load,bT={},bU={},bV,bW,bX=["*/"]+["*"];try{bV=e.href}catch(bY){bV=c.createElement("a"),bV.href="",bV=bV.href}bW=bR.exec(bV.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bS)return bS.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
").append(c.replace(bN,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bO.test(this.nodeName)||bI.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bF,"\r\n")}}):{name:b.name,value:c.replace(bF,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b_(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b_(a,b);return a},ajaxSettings:{url:bV,isLocal:bJ.test(bW[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bZ(bT),ajaxTransport:bZ(bU),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cb(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cc(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bH.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bG,"").replace(bL,bW[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bP),d.crossDomain==null&&(r=bR.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bW[1]&&r[2]==bW[2]&&(r[3]||(r[1]==="http:"?80:443))==(bW[3]||(bW[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bT,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bK.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bM.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bQ,"$1_="+x);d.url=y+(y===d.url?(bM.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bX+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bU,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)ca(g,a[g],c,e);return d.join("&").replace(bD,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cd=f.now(),ce=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cd++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ce.test(b.url)||e&&ce.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ce,l),b.url===j&&(e&&(k=k.replace(ce,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cf=a.ActiveXObject?function(){for(var a in ch)ch[a](0,1)}:!1,cg=0,ch;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ci()||cj()}:ci,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cf&&delete ch[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cg,cf&&(ch||(ch={},f(a).unload(cf)),ch[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var ck={},cl,cm,cn=/^(?:toggle|show|hide)$/,co=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cp,cq=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cr;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,d,"padding")):this[d]():null},f.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,d,a?"margin":"border")):this[d]():null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNumeric(j)?j:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window); \ No newline at end of file diff --git a/doc/build/html/_static/minus.png b/doc/build/html/_static/minus.png new file mode 100644 index 0000000000000000000000000000000000000000..da1c5620d10c047525a467a425abe9ff5269cfc2 GIT binary patch literal 199 zcmeAS@N?(olHy`uVBq!ia0vp^+#t-s1SHkYJtzcHoCO|{#XvD(5N2eUHAey{$X?>< z>&kweokM_|(Po{+Q=kw>iEBiObAE1aYF-J$w=>iB1I2R$WLpMkF=>bh=@O1TaS?83{1OVknK< z>&kweokM`jkU7Va11Q8%;u=xnoS&PUnpeW`?aZ|OK(QcC7sn8Z%gHvy&v=;Q4jejg zV8NnAO`-4Z@2~&zopr02WF_WB>pF literal 0 HcmV?d00001 diff --git a/doc/build/html/_static/pygments.css b/doc/build/html/_static/pygments.css new file mode 100644 index 0000000..1a14f2a --- /dev/null +++ b/doc/build/html/_static/pygments.css @@ -0,0 +1,62 @@ +.highlight .hll { background-color: #ffffcc } +.highlight { background: #eeffcc; } +.highlight .c { color: #408090; font-style: italic } /* Comment */ +.highlight .err { border: 1px solid #FF0000 } /* Error */ +.highlight .k { color: #007020; font-weight: bold } /* Keyword */ +.highlight .o { color: #666666 } /* Operator */ +.highlight .cm { color: #408090; font-style: italic } /* Comment.Multiline */ +.highlight .cp { color: #007020 } /* Comment.Preproc */ +.highlight .c1 { color: #408090; font-style: italic } /* Comment.Single */ +.highlight .cs { color: #408090; background-color: #fff0f0 } /* Comment.Special */ +.highlight .gd { color: #A00000 } /* Generic.Deleted */ +.highlight .ge { font-style: italic } /* Generic.Emph */ +.highlight .gr { color: #FF0000 } /* Generic.Error */ +.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */ +.highlight .gi { color: #00A000 } /* Generic.Inserted */ +.highlight .go { color: #303030 } /* Generic.Output */ +.highlight .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */ +.highlight .gs { font-weight: bold } /* Generic.Strong */ +.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */ +.highlight .gt { color: #0040D0 } /* Generic.Traceback */ +.highlight .kc { color: #007020; font-weight: bold } /* Keyword.Constant */ +.highlight .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */ +.highlight .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */ +.highlight .kp { color: #007020 } /* Keyword.Pseudo */ +.highlight .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */ +.highlight .kt { color: #902000 } /* Keyword.Type */ +.highlight .m { color: #208050 } /* Literal.Number */ +.highlight .s { color: #4070a0 } /* Literal.String */ +.highlight .na { color: #4070a0 } /* Name.Attribute */ +.highlight .nb { color: #007020 } /* Name.Builtin */ +.highlight .nc { color: #0e84b5; font-weight: bold } /* Name.Class */ +.highlight .no { color: #60add5 } /* Name.Constant */ +.highlight .nd { color: #555555; font-weight: bold } /* Name.Decorator */ +.highlight .ni { color: #d55537; font-weight: bold } /* Name.Entity */ +.highlight .ne { color: #007020 } /* Name.Exception */ +.highlight .nf { color: #06287e } /* Name.Function */ +.highlight .nl { color: #002070; font-weight: bold } /* Name.Label */ +.highlight .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */ +.highlight .nt { color: #062873; font-weight: bold } /* Name.Tag */ +.highlight .nv { color: #bb60d5 } /* Name.Variable */ +.highlight .ow { color: #007020; font-weight: bold } /* Operator.Word */ +.highlight .w { color: #bbbbbb } /* Text.Whitespace */ +.highlight .mf { color: #208050 } /* Literal.Number.Float */ +.highlight .mh { color: #208050 } /* Literal.Number.Hex */ +.highlight .mi { color: #208050 } /* Literal.Number.Integer */ +.highlight .mo { color: #208050 } /* Literal.Number.Oct */ +.highlight .sb { color: #4070a0 } /* Literal.String.Backtick */ +.highlight .sc { color: #4070a0 } /* Literal.String.Char */ +.highlight .sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */ +.highlight .s2 { color: #4070a0 } /* Literal.String.Double */ +.highlight .se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */ +.highlight .sh { color: #4070a0 } /* Literal.String.Heredoc */ +.highlight .si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */ +.highlight .sx { color: #c65d09 } /* Literal.String.Other */ +.highlight .sr { color: #235388 } /* Literal.String.Regex */ +.highlight .s1 { color: #4070a0 } /* Literal.String.Single */ +.highlight .ss { color: #517918 } /* Literal.String.Symbol */ +.highlight .bp { color: #007020 } /* Name.Builtin.Pseudo */ +.highlight .vc { color: #bb60d5 } /* Name.Variable.Class */ +.highlight .vg { color: #bb60d5 } /* Name.Variable.Global */ +.highlight .vi { color: #bb60d5 } /* Name.Variable.Instance */ +.highlight .il { color: #208050 } /* Literal.Number.Integer.Long */ \ No newline at end of file diff --git a/doc/build/html/_static/searchtools.js b/doc/build/html/_static/searchtools.js new file mode 100644 index 0000000..56676b2 --- /dev/null +++ b/doc/build/html/_static/searchtools.js @@ -0,0 +1,622 @@ +/* + * searchtools.js_t + * ~~~~~~~~~~~~~~~~ + * + * Sphinx JavaScript utilties for the full-text search. + * + * :copyright: Copyright 2007-2013 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ + + +/** + * Porter Stemmer + */ +var Stemmer = function() { + + var step2list = { + ational: 'ate', + tional: 'tion', + enci: 'ence', + anci: 'ance', + izer: 'ize', + bli: 'ble', + alli: 'al', + entli: 'ent', + eli: 'e', + ousli: 'ous', + ization: 'ize', + ation: 'ate', + ator: 'ate', + alism: 'al', + iveness: 'ive', + fulness: 'ful', + ousness: 'ous', + aliti: 'al', + iviti: 'ive', + biliti: 'ble', + logi: 'log' + }; + + var step3list = { + icate: 'ic', + ative: '', + alize: 'al', + iciti: 'ic', + ical: 'ic', + ful: '', + ness: '' + }; + + var c = "[^aeiou]"; // consonant + var v = "[aeiouy]"; // vowel + var C = c + "[^aeiouy]*"; // consonant sequence + var V = v + "[aeiou]*"; // vowel sequence + + var mgr0 = "^(" + C + ")?" + V + C; // [C]VC... is m>0 + var meq1 = "^(" + C + ")?" + V + C + "(" + V + ")?$"; // [C]VC[V] is m=1 + var mgr1 = "^(" + C + ")?" + V + C + V + C; // [C]VCVC... is m>1 + var s_v = "^(" + C + ")?" + v; // vowel in stem + + this.stemWord = function (w) { + var stem; + var suffix; + var firstch; + var origword = w; + + if (w.length < 3) + return w; + + var re; + var re2; + var re3; + var re4; + + firstch = w.substr(0,1); + if (firstch == "y") + w = firstch.toUpperCase() + w.substr(1); + + // Step 1a + re = /^(.+?)(ss|i)es$/; + re2 = /^(.+?)([^s])s$/; + + if (re.test(w)) + w = w.replace(re,"$1$2"); + else if (re2.test(w)) + w = w.replace(re2,"$1$2"); + + // Step 1b + re = /^(.+?)eed$/; + re2 = /^(.+?)(ed|ing)$/; + if (re.test(w)) { + var fp = re.exec(w); + re = new RegExp(mgr0); + if (re.test(fp[1])) { + re = /.$/; + w = w.replace(re,""); + } + } + else if (re2.test(w)) { + var fp = re2.exec(w); + stem = fp[1]; + re2 = new RegExp(s_v); + if (re2.test(stem)) { + w = stem; + re2 = /(at|bl|iz)$/; + re3 = new RegExp("([^aeiouylsz])\\1$"); + re4 = new RegExp("^" + C + v + "[^aeiouwxy]$"); + if (re2.test(w)) + w = w + "e"; + else if (re3.test(w)) { + re = /.$/; + w = w.replace(re,""); + } + else if (re4.test(w)) + w = w + "e"; + } + } + + // Step 1c + re = /^(.+?)y$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + re = new RegExp(s_v); + if (re.test(stem)) + w = stem + "i"; + } + + // Step 2 + re = /^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + suffix = fp[2]; + re = new RegExp(mgr0); + if (re.test(stem)) + w = stem + step2list[suffix]; + } + + // Step 3 + re = /^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + suffix = fp[2]; + re = new RegExp(mgr0); + if (re.test(stem)) + w = stem + step3list[suffix]; + } + + // Step 4 + re = /^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/; + re2 = /^(.+?)(s|t)(ion)$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + re = new RegExp(mgr1); + if (re.test(stem)) + w = stem; + } + else if (re2.test(w)) { + var fp = re2.exec(w); + stem = fp[1] + fp[2]; + re2 = new RegExp(mgr1); + if (re2.test(stem)) + w = stem; + } + + // Step 5 + re = /^(.+?)e$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + re = new RegExp(mgr1); + re2 = new RegExp(meq1); + re3 = new RegExp("^" + C + v + "[^aeiouwxy]$"); + if (re.test(stem) || (re2.test(stem) && !(re3.test(stem)))) + w = stem; + } + re = /ll$/; + re2 = new RegExp(mgr1); + if (re.test(w) && re2.test(w)) { + re = /.$/; + w = w.replace(re,""); + } + + // and turn initial Y back to y + if (firstch == "y") + w = firstch.toLowerCase() + w.substr(1); + return w; + } +} + + + +/** + * Simple result scoring code. + */ +var Scorer = { + // Implement the following function to further tweak the score for each result + // The function takes a result array [filename, title, anchor, descr, score] + // and returns the new score. + /* + score: function(result) { + return result[4]; + }, + */ + + // query matches the full name of an object + objNameMatch: 11, + // or matches in the last dotted part of the object name + objPartialMatch: 6, + // Additive scores depending on the priority of the object + objPrio: {0: 15, // used to be importantResults + 1: 5, // used to be objectResults + 2: -5}, // used to be unimportantResults + // Used when the priority is not in the mapping. + objPrioDefault: 0, + + // query found in title + title: 15, + // query found in terms + term: 5 +}; + + +/** + * Search Module + */ +var Search = { + + _index : null, + _queued_query : null, + _pulse_status : -1, + + init : function() { + var params = $.getQueryParameters(); + if (params.q) { + var query = params.q[0]; + $('input[name="q"]')[0].value = query; + this.performSearch(query); + } + }, + + loadIndex : function(url) { + $.ajax({type: "GET", url: url, data: null, + dataType: "script", cache: true, + complete: function(jqxhr, textstatus) { + if (textstatus != "success") { + document.getElementById("searchindexloader").src = url; + } + }}); + }, + + setIndex : function(index) { + var q; + this._index = index; + if ((q = this._queued_query) !== null) { + this._queued_query = null; + Search.query(q); + } + }, + + hasIndex : function() { + return this._index !== null; + }, + + deferQuery : function(query) { + this._queued_query = query; + }, + + stopPulse : function() { + this._pulse_status = 0; + }, + + startPulse : function() { + if (this._pulse_status >= 0) + return; + function pulse() { + var i; + Search._pulse_status = (Search._pulse_status + 1) % 4; + var dotString = ''; + for (i = 0; i < Search._pulse_status; i++) + dotString += '.'; + Search.dots.text(dotString); + if (Search._pulse_status > -1) + window.setTimeout(pulse, 500); + } + pulse(); + }, + + /** + * perform a search for something (or wait until index is loaded) + */ + performSearch : function(query) { + // create the required interface elements + this.out = $('#search-results'); + this.title = $('

' + _('Searching') + '

').appendTo(this.out); + this.dots = $('').appendTo(this.title); + this.status = $('

').appendTo(this.out); + this.output = $('
'); + } + // Prettify the comment rating. + comment.pretty_rating = comment.rating + ' point' + + (comment.rating == 1 ? '' : 's'); + // Make a class (for displaying not yet moderated comments differently) + comment.css_class = comment.displayed ? '' : ' moderate'; + // Create a div for this comment. + var context = $.extend({}, opts, comment); + var div = $(renderTemplate(commentTemplate, context)); + + // If the user has voted on this comment, highlight the correct arrow. + if (comment.vote) { + var direction = (comment.vote == 1) ? 'u' : 'd'; + div.find('#' + direction + 'v' + comment.id).hide(); + div.find('#' + direction + 'u' + comment.id).show(); + } + + if (opts.moderator || comment.text != '[deleted]') { + div.find('a.reply').show(); + if (comment.proposal_diff) + div.find('#sp' + comment.id).show(); + if (opts.moderator && !comment.displayed) + div.find('#cm' + comment.id).show(); + if (opts.moderator || (opts.username == comment.username)) + div.find('#dc' + comment.id).show(); + } + return div; + } + + /** + * A simple template renderer. Placeholders such as <%id%> are replaced + * by context['id'] with items being escaped. Placeholders such as <#id#> + * are not escaped. + */ + function renderTemplate(template, context) { + var esc = $(document.createElement('div')); + + function handle(ph, escape) { + var cur = context; + $.each(ph.split('.'), function() { + cur = cur[this]; + }); + return escape ? esc.text(cur || "").html() : cur; + } + + return template.replace(/<([%#])([\w\.]*)\1>/g, function() { + return handle(arguments[2], arguments[1] == '%' ? true : false); + }); + } + + /** Flash an error message briefly. */ + function showError(message) { + $(document.createElement('div')).attr({'class': 'popup-error'}) + .append($(document.createElement('div')) + .attr({'class': 'error-message'}).text(message)) + .appendTo('body') + .fadeIn("slow") + .delay(2000) + .fadeOut("slow"); + } + + /** Add a link the user uses to open the comments popup. */ + $.fn.comment = function() { + return this.each(function() { + var id = $(this).attr('id').substring(1); + var count = COMMENT_METADATA[id]; + var title = count + ' comment' + (count == 1 ? '' : 's'); + var image = count > 0 ? opts.commentBrightImage : opts.commentImage; + var addcls = count == 0 ? ' nocomment' : ''; + $(this) + .append( + $(document.createElement('a')).attr({ + href: '#', + 'class': 'sphinx-comment-open' + addcls, + id: 'ao' + id + }) + .append($(document.createElement('img')).attr({ + src: image, + alt: 'comment', + title: title + })) + .click(function(event) { + event.preventDefault(); + show($(this).attr('id').substring(2)); + }) + ) + .append( + $(document.createElement('a')).attr({ + href: '#', + 'class': 'sphinx-comment-close hidden', + id: 'ah' + id + }) + .append($(document.createElement('img')).attr({ + src: opts.closeCommentImage, + alt: 'close', + title: 'close' + })) + .click(function(event) { + event.preventDefault(); + hide($(this).attr('id').substring(2)); + }) + ); + }); + }; + + var opts = { + processVoteURL: '/_process_vote', + addCommentURL: '/_add_comment', + getCommentsURL: '/_get_comments', + acceptCommentURL: '/_accept_comment', + deleteCommentURL: '/_delete_comment', + commentImage: '/static/_static/comment.png', + closeCommentImage: '/static/_static/comment-close.png', + loadingImage: '/static/_static/ajax-loader.gif', + commentBrightImage: '/static/_static/comment-bright.png', + upArrow: '/static/_static/up.png', + downArrow: '/static/_static/down.png', + upArrowPressed: '/static/_static/up-pressed.png', + downArrowPressed: '/static/_static/down-pressed.png', + voting: false, + moderator: false + }; + + if (typeof COMMENT_OPTIONS != "undefined") { + opts = jQuery.extend(opts, COMMENT_OPTIONS); + } + + var popupTemplate = '\ +
\ +

\ + Sort by:\ + best rated\ + newest\ + oldest\ +

\ +
Comments
\ +
\ + loading comments...
\ +
    \ +
    \ +

    Add a comment\ + (markup):

    \ +
    \ + reStructured text markup: *emph*, **strong**, \ + ``code``, \ + code blocks: :: and an indented block after blank line
    \ +
    \ + \ +

    \ + \ + Propose a change ▹\ + \ + \ + Propose a change ▿\ + \ +

    \ + \ + \ + \ + \ + \ +
    \ +
    '; + + var commentTemplate = '\ +
    \ +
    \ +
    \ + \ + \ + \ + \ + \ + \ +
    \ +
    \ + \ + \ + \ + \ + \ + \ +
    \ +
    \ +
    \ +

    \ + <%username%>\ + <%pretty_rating%>\ + <%time.delta%>\ +

    \ +
    <#text#>
    \ +

    \ + \ + reply ▿\ + proposal ▹\ + proposal ▿\ + \ + \ +

    \ +
    \
    +<#proposal_diff#>\
    +        
    \ +
      \ +
      \ +
      \ +
      \ + '; + + var replyTemplate = '\ +
    • \ +
      \ +
      \ + \ + \ + \ + \ + \ + \ +
      \ +
    • '; + + $(document).ready(function() { + init(); + }); +})(jQuery); + +$(document).ready(function() { + // add comment anchors for all paragraphs that are commentable + $('.sphinx-has-comment').comment(); + + // highlight search words in search results + $("div.context").each(function() { + var params = $.getQueryParameters(); + var terms = (params.q) ? params.q[0].split(/\s+/) : []; + var result = $(this); + $.each(terms, function() { + result.highlightText(this.toLowerCase(), 'highlighted'); + }); + }); + + // directly open comment window if requested + var anchor = document.location.hash; + if (anchor.substring(0, 9) == '#comment-') { + $('#ao' + anchor.substring(9)).click(); + document.location.hash = '#s' + anchor.substring(9); + } +}); diff --git a/doc/build/html/flake8_integration.html b/doc/build/html/flake8_integration.html new file mode 100644 index 0000000..02570ff --- /dev/null +++ b/doc/build/html/flake8_integration.html @@ -0,0 +1,774 @@ + + + + + + + + Auto generated documentation — gedit Flake8 integration 0.1 documentation + + + + + + + + + + + + + + + +
      +
      +
      +
      + +
      +

      Auto generated documentation¶

      +
      +

      Plugin¶

      +

      Plugin for gedit that allow flake8 integration

      +
      +++ + + + + + + + + + + + +
      author:Sébastien CHAZALLET <s.chazallet@gmail.com>
      organization:InsPyration EURL
      copyright:Copyright © InsPyration EURL <www.inspyration.org>
      license:GPL 3 <http://www.gnu.org/licenses/gpl.html>
      version:0.1
      + +
      +

      Integrated¶

      +

      Module used to manage the results of flake8 :

      +

      > 1. get them instead of print them ; +> 2. format them ;

      +

      This module works with Python2 and Python3

      + +++ + + + + + + + + + + + +
      author:Sébastien CHAZALLET <s.chazallet@gmail.com>
      organization:InsPyration EURL
      copyright:Copyright © InsPyration EURL <www.inspyration.org>
      license:GPL 3 <http://www.gnu.org/licenses/gpl.html>
      version:0.1
      +
      +
      +flake8_integration.integrated._format_flake8_results(warnings)[source]¶
      +

      Function used to extract useful informations from flake8 results

      + +++ + + + + + + + +
      Parameters:warnings (str) – Warnings generated by flake8
      Return type:list
      Returns:list of (code:str, line:int, col:int, description:str)
      +
      >>> result = _format_flake8_results(
      +...     '''stdin:1:10: E901 SyntaxError: unexpected EOF while parsing
      +...     stdin:2:1: E901 TokenError: EOF in multi-line statement''')
      +>>> for r in result:
      +...     print r
      +...
      +(' e901', 1, 10, 'SyntaxError: unexpected EOF while parsing')
      +(' e901', 2, 1, 'TokenError: EOF in multi-line statement')
      +
      +
      +
      + +
      +
      +flake8_integration.integrated._intercept_printed(action, *args, **kwargs)[source]¶
      +

      Function used to redirect printed to returned value

      + +++ + + + + + + + +
      Parameters:action (function) – Called function that we intercept prints
      Return type:str
      Returns:all that was printed by the call of action
      +
      >>> def do():
      +...     print('Hello World')
      +...
      +>>> result = _intercept_printed(do)
      +>>> print(result)
      +Hello World
      +
      +
      +
      + +
      +
      +flake8_integration.integrated.check_code_and_get_formated_result(code, ignore=(), complexity=-1)[source]¶
      +

      Function used to return the printed result of flake8 check_code function

      +
      >>> result = check_code_with_flake8("a = 42")
      +>>> print(result)
      +
      +>>> result = check_code_with_flake8("a = f(42")
      +>>> print(result)
      +stdin:1:10: E901 SyntaxError: unexpected EOF while parsing
      +stdin:2:1: E901 TokenError: EOF in multi-line statement
      +
      +
      +
      + +
      +
      +

      Window activatable¶

      +

      Main module of the Plugin for gedit that allow flake8 integration

      + +++ + + + + + + + + + + + +
      author:Sébastien CHAZALLET <s.chazallet@gmail.com>
      organization:InsPyration EURL
      copyright:Copyright © InsPyration EURL <www.inspyration.org>
      license:GPL 3 <http://www.gnu.org/licenses/gpl.html>
      version:0.1
      +
      +
      +class flake8_integration.windowactivatable.GeditFlake8WindowActivatable[source]¶
      +

      Main module of the gedit flake8 plugin

      +
      +
      +__init__()[source]¶
      +

      Initialize plugin

      + +++ + + + + + +
      Parameters:action (function) – Called function that we intercept prints
      Return type:None
      +
      + +
      +
      +do_activate()[source]¶
      +

      Activate the plugin

      + +++ + + + + + +
      Parameters:self (GeditFlake8WindowActivatable) – Current plugin
      Return type:None
      +
      + +
      +
      +do_create_configure_widget()[source]¶
      +

      Action when a user want to configure the plugin

      + +++ + + + + + + + +
      Parameters:self (GeditFlake8WindowActivatable) – Current plugin
      Return type:GeditFlake8ConfigWidget
      Returns:a configuration widget
      +
      + +
      +
      +do_deactivate()[source]¶
      +

      Deactivate the plugin

      + +++ + + + + + +
      Parameters:self (GeditFlake8WindowActivatable) – Current plugin
      Return type:None
      +
      + +
      +
      +do_update_state()[source]¶
      +

      Allow to activate the plugin only if the document is python code +If the document is a new document, it hasto be saved or the language of +the document has to be set.

      + +++ + + + + + +
      Parameters:self (GeditFlake8WindowActivatable) – Current plugin
      Return type:None
      +
      + +
      +
      +on_check_source_code(action)[source]¶
      +

      The user ask to check code source : +1check there is a doc and the doc is python code +2use flake8 +3put flake8 results into the tree and activate it

      + +++ + + + + + +
      Parameters:
        +
      • self (GeditFlake8WindowActivatable) – Current plugin
      • +
      • action (Gtk.Action) – Called function that we intercept prints
      • +
      +
      Return type:

      None

      +
      +
      + +
      + +
      +
      +

      Tree¶

      +

      Module managing the tree and all stuff around it

      + +++ + + + + + + + + + + + +
      author:Sébastien CHAZALLET <s.chazallet@gmail.com>
      organization:InsPyration EURL
      copyright:Copyright © InsPyration EURL <www.inspyration.org>
      license:GPL 3 <http://www.gnu.org/licenses/gpl.html>
      version:0.1
      +
      +
      +class flake8_integration.tree.GeditFlake8Tree(window)[source]¶
      +

      Tree inside gedit side panel containing all flake8 warnings

      +
      +
      +__init__(window)[source]¶
      +

      Configure tree columns, tree selection and add it to side panel

      + +++ + + + + + +
      Parameters:
        +
      • self (GeditFlake8Tree) – Current tree
      • +
      • window (Gedit.Window) – GEdit window object
      • +
      +
      Return type:

      None

      +
      +
      + +
      +
      +activate()[source]¶
      +

      show the tree in the side panel

      + +++ + + + + + +
      Parameters:self (GeditFlake8Tree) – Current tree
      Return type:None
      +
      + +
      +
      +on_tree_selection(selection)[source]¶
      +

      When a tree line is selected, go to the file linked line

      + +++ + + + + + +
      Parameters:
        +
      • self (GeditFlake8Tree) – Current tree
      • +
      • selection (Gtk.TreeSelection) – Current selection
      • +
      +
      Return type:

      None

      +
      +
      + +
      +
      +remove()[source]¶
      +

      remove the tree from the side panel

      + +++ + + + + + +
      Parameters:self (GeditFlake8Tree) – Current tree
      Return type:None
      +
      + +
      +
      +update_model(datas)[source]¶
      +

      Update the tree with new datas

      + +++ + + + + + +
      Parameters:
        +
      • self (GeditFlake8Tree) – Current tree
      • +
      • datas (list) – list of ready to use (str, int, int, str) tuples
      • +
      +
      Return type:

      None

      +
      +
      + +
      + +
      +
      +

      Settings¶

      +

      Module used to define how to manage settings and their persistence

      + +++ + + + + + + + + + + + +
      author:Sébastien CHAZALLET <s.chazallet@gmail.com>
      organization:InsPyration EURL
      copyright:Copyright © InsPyration EURL <www.inspyration.org>
      license:GPL 3 <http://www.gnu.org/licenses/gpl.html>
      version:0.1
      +
      +
      +class flake8_integration.settings.SettingsManager[source]¶
      +

      Allow to manage local settings and it persistent storage

      +
      +
      +__init__()[source]¶
      +

      Initialize Settings Manager

      + +++ + + + + + +
      Parameters:self (SettingsManager) – Current manager
      Return type:None
      +
      + +
      +
      +__weakref__¶
      +

      list of weak references to the object (if defined)

      +
      + +
      +
      +get_complexity()[source]¶
      +

      Get the user defined complexity parameter

      + +++ + + + + + + + +
      Parameters:self (SettingsManager) – Current manager
      Return type:int
      Returns:complexity
      +
      + +
      +
      +get_complexity_key()[source]¶
      +

      Allow to share information about key used to store complexity

      + +++ + + + + + + + +
      Parameters:self (SettingsManager) – Current manager
      Return type:str
      Returns:name of the complexity key
      +
      + +
      +
      +get_ignore_items()[source]¶
      +

      Allow to share information about keys used to store ignore list

      + +++ + + + + + + + +
      Parameters:self (SettingsManager) – Current manager
      Return type:list of tuple of str
      Returns:list of (ignore key, ignore label)
      +
      + +
      +
      +get_ignore_keys()[source]¶
      +

      Allow to share information about keys used to store ignore list

      + +++ + + + + + + + +
      Parameters:self (SettingsManager) – Current manager
      Return type:list of str
      Returns:list of ignore keys
      +
      + +
      +
      +get_ignore_list()[source]¶
      +

      Get the user defined warning keys to ignore

      + +++ + + + + + + + +
      Parameters:self (SettingsManager) – Current manager
      Return type:list of str
      Returns:list of warning keys
      +
      + +
      +
      +is_in_ignore_list(key)[source]¶
      +

      Answer to “Is tag in ignore list ?” question

      + +++ + + + + + + + +
      Parameters:
        +
      • self (SettingsManager) – Current manager
      • +
      • key (str) – flake8 key as defined in FLAKE8_IGNORED_KEYS
      • +
      +
      Return type:

      bool

      +
      Returns:

      True if the key is in ignore list, False otherwise

      +
      +
      + +
      +
      +pull_settings()[source]¶
      +

      Pull operation update local settings from persistent storage

      + +++ + + + + + +
      Parameters:self (SettingsManager) – Current manager
      Return type:None
      +
      + +
      +
      +push_settings()[source]¶
      +

      Push operation allow persistent storage update from local settings

      + +++ + + + + + +
      Parameters:self (SettingsManager) – Current manager
      Return type:None
      +
      + +
      +
      +update_setting(values={})[source]¶
      +

      Updating settings allow to update local and persistent settings

      + +++ + + + + + +
      Parameters:
        +
      • self (SettingsManager) – Current manager
      • +
      • values (dict) – values to store persistently
      • +
      +
      Return type:

      None

      +
      +
      + +
      + +
      +
      +

      Configuration¶

      +

      Module used to configure plugin from an easy-to-use widget

      + +++ + + + + + + + + + + + +
      author:Sébastien CHAZALLET <s.chazallet@gmail.com>
      organization:InsPyration EURL
      copyright:Copyright © InsPyration EURL <www.inspyration.org>
      license:GPL 3 <http://www.gnu.org/licenses/gpl.html>
      version:0.1
      +
      +
      +class flake8_integration.configuration.GeditFlake8ConfigWidget(settings)[source]¶
      +
      +
      +__init__(settings)[source]¶
      +

      Initialize the configuration widget from SettingsManager properties

      + +++ + + + + + +
      Parameters:
        +
      • self (GeditFlake8ConfigWidget) – Current widget
      • +
      • settings (SettingsManager) – Object used to define all configurable properties
      • +
      +
      Return type:

      None

      +
      +
      + +
      +
      +on_configure_destroy(widget)[source]¶
      +

      Called when the widget is destroyed

      + +++ + + + + + +
      Parameters:
        +
      • self (GeditFlake8ConfigWidget) – Current widget
      • +
      • widget (GeditFlake8ConfigWidget) – Current widget
      • +
      +
      Return type:

      None

      +
      +
      + +
      + +
      +
      +

      Status¶

      +

      This plugin is under active development.

      +
      + + + + + + +
      +
      +

      Table Of Contents

      + + +

      Previous topic

      +

      Welcome to gedit Flake8 integration’s documentation!

      +

      This Page

      + + + +
      +
      +
      + + + + + \ No newline at end of file diff --git a/doc/build/html/genindex.html b/doc/build/html/genindex.html new file mode 100644 index 0000000..74258a8 --- /dev/null +++ b/doc/build/html/genindex.html @@ -0,0 +1,347 @@ + + + + + + + + + Index — gedit Flake8 integration 0.1 documentation + + + + + + + + + + + + + + +
      +
      +
      +
      + + +

      Index

      + +
      + _ + | A + | C + | D + | F + | G + | I + | O + | P + | R + | S + | U + +
      +

      _

      + + + +
      + +
      __init__() (flake8_integration.configuration.GeditFlake8ConfigWidget method) +
      + +
      + +
      (flake8_integration.settings.SettingsManager method) +
      + + +
      (flake8_integration.tree.GeditFlake8Tree method) +
      + + +
      (flake8_integration.windowactivatable.GeditFlake8WindowActivatable method) +
      + +
      + +
      __weakref__ (flake8_integration.settings.SettingsManager attribute) +
      + +
      + +
      _format_flake8_results() (in module flake8_integration.integrated) +
      + + +
      _intercept_printed() (in module flake8_integration.integrated) +
      + +
      + +

      A

      + + +
      + +
      activate() (flake8_integration.tree.GeditFlake8Tree method) +
      + +
      + +

      C

      + + +
      + +
      check_code_and_get_formated_result() (in module flake8_integration.integrated) +
      + +
      + +

      D

      + + + +
      + +
      do_activate() (flake8_integration.windowactivatable.GeditFlake8WindowActivatable method) +
      + + +
      do_create_configure_widget() (flake8_integration.windowactivatable.GeditFlake8WindowActivatable method) +
      + +
      + +
      do_deactivate() (flake8_integration.windowactivatable.GeditFlake8WindowActivatable method) +
      + + +
      do_update_state() (flake8_integration.windowactivatable.GeditFlake8WindowActivatable method) +
      + +
      + +

      F

      + + + +
      + +
      flake8_integration (module) +
      + + +
      flake8_integration.configuration (module) +
      + + +
      flake8_integration.integrated (module) +
      + +
      + +
      flake8_integration.settings (module) +
      + + +
      flake8_integration.tree (module) +
      + + +
      flake8_integration.windowactivatable (module) +
      + +
      + +

      G

      + + + +
      + +
      GeditFlake8ConfigWidget (class in flake8_integration.configuration) +
      + + +
      GeditFlake8Tree (class in flake8_integration.tree) +
      + + +
      GeditFlake8WindowActivatable (class in flake8_integration.windowactivatable) +
      + + +
      get_complexity() (flake8_integration.settings.SettingsManager method) +
      + +
      + +
      get_complexity_key() (flake8_integration.settings.SettingsManager method) +
      + + +
      get_ignore_items() (flake8_integration.settings.SettingsManager method) +
      + + +
      get_ignore_keys() (flake8_integration.settings.SettingsManager method) +
      + + +
      get_ignore_list() (flake8_integration.settings.SettingsManager method) +
      + +
      + +

      I

      + + +
      + +
      is_in_ignore_list() (flake8_integration.settings.SettingsManager method) +
      + +
      + +

      O

      + + + +
      + +
      on_check_source_code() (flake8_integration.windowactivatable.GeditFlake8WindowActivatable method) +
      + + +
      on_configure_destroy() (flake8_integration.configuration.GeditFlake8ConfigWidget method) +
      + +
      + +
      on_tree_selection() (flake8_integration.tree.GeditFlake8Tree method) +
      + +
      + +

      P

      + + + +
      + +
      pull_settings() (flake8_integration.settings.SettingsManager method) +
      + +
      + +
      push_settings() (flake8_integration.settings.SettingsManager method) +
      + +
      + +

      R

      + + +
      + +
      remove() (flake8_integration.tree.GeditFlake8Tree method) +
      + +
      + +

      S

      + + +
      + +
      SettingsManager (class in flake8_integration.settings) +
      + +
      + +

      U

      + + + +
      + +
      update_model() (flake8_integration.tree.GeditFlake8Tree method) +
      + +
      + +
      update_setting() (flake8_integration.settings.SettingsManager method) +
      + +
      + + + +
      +
      +
      +
      +
      + + + + + +
      +
      +
      +
      + + + + \ No newline at end of file diff --git a/doc/build/html/index.html b/doc/build/html/index.html new file mode 100644 index 0000000..49a1a6f --- /dev/null +++ b/doc/build/html/index.html @@ -0,0 +1,138 @@ + + + + + + + + Welcome to gedit Flake8 integration’s documentation! — gedit Flake8 integration 0.1 documentation + + + + + + + + + + + + + + + +
      +
      +
      +
      + +
      +

      Welcome to gedit Flake8 integration’s documentation!¶

      +

      Contents:

      + +
      +
      +

      Indices and tables¶

      + +
      + + +
      +
      +
      +
      +
      +

      Table Of Contents

      + + +

      Next topic

      +

      Auto generated documentation

      +

      This Page

      + + + +
      +
      +
      +
      + + + + \ No newline at end of file diff --git a/doc/build/html/objects.inv b/doc/build/html/objects.inv new file mode 100644 index 0000000000000000000000000000000000000000..f143d47236a6b067b10053a61b5b37e817f9d3f0 GIT binary patch literal 677 zcmV;W0$TkeAX9K?X>NERX>N99Zgg*Qc_4OWa&u{KZXhxWBOp+6Z)#;@bUGksWn^h| zAVzFqYh^efX>N37XL4b5X>V={BOq2~a&u{KZaN?^E-?xtAXI2&AaZ4GVQFq;WpW^I zW*~HEX>%ZEX>4U6X>%ZBZ*6dLWpi_7WFU2OX>MmAdTeQ8E(&zd|Paw~?s0%vKH?e z#ZLGcq$X@FBWZN)kVxv*`71s2@eZG=4csIw0uCRm!5|%Nj)nVM`F}r+M+nw2!x~TO^RJHWooiN0Ta~&WP&%T~#}yyIauz z!kR9u{*FS@w+Z2Nw%WQU5nZYG{n@8NrOQ=tf18N1IXeiIKa-hf=UM z=vR0L50L~=gbu50l!U!2qGTLI;P-r9%nok)LE)>U3!E^CW&f1qQr9e$;7Vml@XdB` zgKD_2h5WOKhXBsVP8OS(Q;f*U<4Bk(UwzF9`#uH=`Jc{olX@34amAb~9;X~dY14ai z^gZ4D;CQ=6;dv);MwelobRL&$^4W4-Lh!F?55A-p=?)3kUU%cL_8op87;IRJv`)P7 z50Z!9MLCuuE3caC5`uQ!+?d0X{Usnra8{&@qi2{ofoTCDnc~ohVxAWZjEfd~^O9o0 L)s+7YU~dRF_>4Ri literal 0 HcmV?d00001 diff --git a/doc/build/html/py-modindex.html b/doc/build/html/py-modindex.html new file mode 100644 index 0000000..47f803c --- /dev/null +++ b/doc/build/html/py-modindex.html @@ -0,0 +1,135 @@ + + + + + + + + Python Module Index — gedit Flake8 integration 0.1 documentation + + + + + + + + + + + + + + + + + +
      +
      +
      +
      + + +

      Python Module Index

      + +
      + f +
      + + + + + + + + + + + + + + + + + + + + + + +
       
      + f
      + flake8_integration +
          + flake8_integration.configuration +
          + flake8_integration.integrated +
          + flake8_integration.settings +
          + flake8_integration.tree +
          + flake8_integration.windowactivatable +
      + + +
      +
      +
      +
      +
      + + +
      +
      +
      +
      + + + + \ No newline at end of file diff --git a/doc/build/html/search.html b/doc/build/html/search.html new file mode 100644 index 0000000..eb9fae8 --- /dev/null +++ b/doc/build/html/search.html @@ -0,0 +1,106 @@ + + + + + + + + Search — gedit Flake8 integration 0.1 documentation + + + + + + + + + + + + + + + + + + + + +
      +
      +
      +
      + +

      Search

      +
      + +

      + Please activate JavaScript to enable the search + functionality. +

      +
      +

      + From here you can search these documents. Enter your search + words into the box below and click "search". Note that the search + function will automatically search for all of the words. Pages + containing fewer words won't appear in the result list. +

      +
      + + + +
      + +
      + +
      + +
      +
      +
      +
      +
      +
      +
      +
      +
      + + + + \ No newline at end of file diff --git a/doc/build/html/searchindex.js b/doc/build/html/searchindex.js new file mode 100644 index 0000000..0b79aab --- /dev/null +++ b/doc/build/html/searchindex.js @@ -0,0 +1 @@ +Search.setIndex({envversion:42,terms:{all:0,code:0,show:0,syntaxerror:0,settingsmanag:0,"3put":0,"__weakref__":0,languag:0,paramet:0,redirect:0,content:1,onli:0,copyright:0,how:0,gtk:0,activ:0,add:0,complex:0,dict:0,persist:0,main:0,local:0,deactiv:0,them:0,sourc:0,"return":0,around:0,format:0,fals:0,none:0,initi:0,on_configure_destroi:0,world:0,flake8_integr:0,python3:0,python2:0,name:0,organ:0,geditflake8configwidget:0,geditflake8windowactivat:0,list:0,get_ignore_list:0,stuff:0,contain:0,"_intercept_print":0,eurl:0,manag:0,www:0,work:0,do_update_st:0,blanklin:0,result:0,arg:0,extract:0,gmail:0,index:1,get_ignore_item:0,get_ignore_kei:0,kei:0,tokenerror:0,label:0,current:0,version:0,on_check_source_cod:0,print:0,"new":0,refer:0,widget:0,object:0,update_set:0,insid:0,weak:0,intercept:0,ask:0,org:0,do_deactiv:0,geditflake8tre:0,valu:0,panel:0,update_model:0,about:0,easi:0,column:0,"s\u00e9bastien":0,page:1,chazallet:0,action:0,treeselect:0,com:0,col:0,user:0,oper:0,modul:[0,1],storag:0,select:0,gpl:0,e901:0,from:0,do_create_configure_widget:0,licens:0,question:0,"2use":0,"int":0,call:0,statement:0,check_cod:0,inspyr:0,type:0,store:0,"function":0,unexpect:0,tupl:0,under:0,search:1,warn:0,pars:0,pull_set:0,line:0,"true":0,check_code_with_flake8:0,eof:0,pull:0,multi:0,save:0,gnu:0,remov:0,properti:0,defin:0,"while":0,kwarg:0,str:0,doc:0,otherwis:0,def:0,get_complexity_kei:0,readi:0,do_activ:0,side:0,gedit:0,tag:0,file:0,check:0,"__init__":0,develop:0,want:0,author:0,destroi:0,self:0,get:0,when:0,check_code_and_get_formated_result:0,python:0,html:0,bool:0,answer:0,instead:0,get_complex:0,updat:0,http:0,thi:0,is_in_ignore_list:0,windowactivat:0,flake8:0,share:0,"_format_flake8_result":0,data:0,"class":0,"1check":0,push_set:0,flake8_ignored_kei:0,stdin:0,descript:0,on_tree_select:0,inform:0,ignor:0,allow:0,push:0,link:0,hello:0,hasto:0},objtypes:{"0":"py:module","1":"py:method","2":"py:function","3":"py:attribute","4":"py:class"},objnames:{"0":["py","module","Python module"],"1":["py","method","Python method"],"2":["py","function","Python function"],"3":["py","attribute","Python attribute"],"4":["py","class","Python class"]},filenames:["flake8_integration","index"],titles:["Auto generated documentation","Welcome to gedit Flake8 integration’s documentation!"],objects:{"":{flake8_integration:[0,0,1,""]},"flake8_integration.settings.SettingsManager":{get_ignore_keys:[0,1,1,""],get_ignore_items:[0,1,1,""],push_settings:[0,1,1,""],is_in_ignore_list:[0,1,1,""],update_setting:[0,1,1,""],get_ignore_list:[0,1,1,""],pull_settings:[0,1,1,""],get_complexity_key:[0,1,1,""],get_complexity:[0,1,1,""],"__weakref__":[0,3,1,""],"__init__":[0,1,1,""]},"flake8_integration.settings":{SettingsManager:[0,4,1,""]},"flake8_integration.configuration":{GeditFlake8ConfigWidget:[0,4,1,""]},"flake8_integration.windowactivatable.GeditFlake8WindowActivatable":{do_update_state:[0,1,1,""],on_check_source_code:[0,1,1,""],do_activate:[0,1,1,""],do_create_configure_widget:[0,1,1,""],do_deactivate:[0,1,1,""],"__init__":[0,1,1,""]},"flake8_integration.windowactivatable":{GeditFlake8WindowActivatable:[0,4,1,""]},"flake8_integration.tree":{GeditFlake8Tree:[0,4,1,""]},flake8_integration:{configuration:[0,0,1,""],tree:[0,0,1,""],integrated:[0,0,1,""],windowactivatable:[0,0,1,""],settings:[0,0,1,""]},"flake8_integration.integrated":{"_format_flake8_results":[0,2,1,""],"_intercept_printed":[0,2,1,""],check_code_and_get_formated_result:[0,2,1,""]},"flake8_integration.tree.GeditFlake8Tree":{update_model:[0,1,1,""],activate:[0,1,1,""],on_tree_selection:[0,1,1,""],remove:[0,1,1,""],"__init__":[0,1,1,""]},"flake8_integration.configuration.GeditFlake8ConfigWidget":{on_configure_destroy:[0,1,1,""],"__init__":[0,1,1,""]}},titleterms:{statu:0,set:0,welcom:1,plugin:0,auto:0,gener:0,configur:0,tree:0,gedit:1,window:0,integr:[0,1],indic:1,tabl:1,document:[0,1],activat:0,flake8:1}}) \ No newline at end of file diff --git a/doc/make.bat b/doc/make.bat new file mode 100644 index 0000000..5357979 --- /dev/null +++ b/doc/make.bat @@ -0,0 +1,242 @@ +@ECHO OFF + +REM Command file for Sphinx documentation + +if "%SPHINXBUILD%" == "" ( + set SPHINXBUILD=sphinx-build +) +set BUILDDIR=build +set ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% source +set I18NSPHINXOPTS=%SPHINXOPTS% source +if NOT "%PAPER%" == "" ( + set ALLSPHINXOPTS=-D latex_paper_size=%PAPER% %ALLSPHINXOPTS% + set I18NSPHINXOPTS=-D latex_paper_size=%PAPER% %I18NSPHINXOPTS% +) + +if "%1" == "" goto help + +if "%1" == "help" ( + :help + echo.Please use `make ^` where ^ is one of + echo. html to make standalone HTML files + echo. dirhtml to make HTML files named index.html in directories + echo. singlehtml to make a single large HTML file + echo. pickle to make pickle files + echo. json to make JSON files + echo. htmlhelp to make HTML files and a HTML help project + echo. qthelp to make HTML files and a qthelp project + echo. devhelp to make HTML files and a Devhelp project + echo. epub to make an epub + echo. latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter + echo. text to make text files + echo. man to make manual pages + echo. texinfo to make Texinfo files + echo. gettext to make PO message catalogs + echo. changes to make an overview over all changed/added/deprecated items + echo. xml to make Docutils-native XML files + echo. pseudoxml to make pseudoxml-XML files for display purposes + echo. linkcheck to check all external links for integrity + echo. doctest to run all doctests embedded in the documentation if enabled + goto end +) + +if "%1" == "clean" ( + for /d %%i in (%BUILDDIR%\*) do rmdir /q /s %%i + del /q /s %BUILDDIR%\* + goto end +) + + +%SPHINXBUILD% 2> nul +if errorlevel 9009 ( + echo. + echo.The 'sphinx-build' command was not found. Make sure you have Sphinx + echo.installed, then set the SPHINXBUILD environment variable to point + echo.to the full path of the 'sphinx-build' executable. Alternatively you + echo.may add the Sphinx directory to PATH. + echo. + echo.If you don't have Sphinx installed, grab it from + echo.http://sphinx-doc.org/ + exit /b 1 +) + +if "%1" == "html" ( + %SPHINXBUILD% -b html %ALLSPHINXOPTS% %BUILDDIR%/html + if errorlevel 1 exit /b 1 + echo. + echo.Build finished. The HTML pages are in %BUILDDIR%/html. + goto end +) + +if "%1" == "dirhtml" ( + %SPHINXBUILD% -b dirhtml %ALLSPHINXOPTS% %BUILDDIR%/dirhtml + if errorlevel 1 exit /b 1 + echo. + echo.Build finished. The HTML pages are in %BUILDDIR%/dirhtml. + goto end +) + +if "%1" == "singlehtml" ( + %SPHINXBUILD% -b singlehtml %ALLSPHINXOPTS% %BUILDDIR%/singlehtml + if errorlevel 1 exit /b 1 + echo. + echo.Build finished. The HTML pages are in %BUILDDIR%/singlehtml. + goto end +) + +if "%1" == "pickle" ( + %SPHINXBUILD% -b pickle %ALLSPHINXOPTS% %BUILDDIR%/pickle + if errorlevel 1 exit /b 1 + echo. + echo.Build finished; now you can process the pickle files. + goto end +) + +if "%1" == "json" ( + %SPHINXBUILD% -b json %ALLSPHINXOPTS% %BUILDDIR%/json + if errorlevel 1 exit /b 1 + echo. + echo.Build finished; now you can process the JSON files. + goto end +) + +if "%1" == "htmlhelp" ( + %SPHINXBUILD% -b htmlhelp %ALLSPHINXOPTS% %BUILDDIR%/htmlhelp + if errorlevel 1 exit /b 1 + echo. + echo.Build finished; now you can run HTML Help Workshop with the ^ +.hhp project file in %BUILDDIR%/htmlhelp. + goto end +) + +if "%1" == "qthelp" ( + %SPHINXBUILD% -b qthelp %ALLSPHINXOPTS% %BUILDDIR%/qthelp + if errorlevel 1 exit /b 1 + echo. + echo.Build finished; now you can run "qcollectiongenerator" with the ^ +.qhcp project file in %BUILDDIR%/qthelp, like this: + echo.^> qcollectiongenerator %BUILDDIR%\qthelp\geditFlake8integration.qhcp + echo.To view the help file: + echo.^> assistant -collectionFile %BUILDDIR%\qthelp\geditFlake8integration.ghc + goto end +) + +if "%1" == "devhelp" ( + %SPHINXBUILD% -b devhelp %ALLSPHINXOPTS% %BUILDDIR%/devhelp + if errorlevel 1 exit /b 1 + echo. + echo.Build finished. + goto end +) + +if "%1" == "epub" ( + %SPHINXBUILD% -b epub %ALLSPHINXOPTS% %BUILDDIR%/epub + if errorlevel 1 exit /b 1 + echo. + echo.Build finished. The epub file is in %BUILDDIR%/epub. + goto end +) + +if "%1" == "latex" ( + %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex + if errorlevel 1 exit /b 1 + echo. + echo.Build finished; the LaTeX files are in %BUILDDIR%/latex. + goto end +) + +if "%1" == "latexpdf" ( + %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex + cd %BUILDDIR%/latex + make all-pdf + cd %BUILDDIR%/.. + echo. + echo.Build finished; the PDF files are in %BUILDDIR%/latex. + goto end +) + +if "%1" == "latexpdfja" ( + %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex + cd %BUILDDIR%/latex + make all-pdf-ja + cd %BUILDDIR%/.. + echo. + echo.Build finished; the PDF files are in %BUILDDIR%/latex. + goto end +) + +if "%1" == "text" ( + %SPHINXBUILD% -b text %ALLSPHINXOPTS% %BUILDDIR%/text + if errorlevel 1 exit /b 1 + echo. + echo.Build finished. The text files are in %BUILDDIR%/text. + goto end +) + +if "%1" == "man" ( + %SPHINXBUILD% -b man %ALLSPHINXOPTS% %BUILDDIR%/man + if errorlevel 1 exit /b 1 + echo. + echo.Build finished. The manual pages are in %BUILDDIR%/man. + goto end +) + +if "%1" == "texinfo" ( + %SPHINXBUILD% -b texinfo %ALLSPHINXOPTS% %BUILDDIR%/texinfo + if errorlevel 1 exit /b 1 + echo. + echo.Build finished. The Texinfo files are in %BUILDDIR%/texinfo. + goto end +) + +if "%1" == "gettext" ( + %SPHINXBUILD% -b gettext %I18NSPHINXOPTS% %BUILDDIR%/locale + if errorlevel 1 exit /b 1 + echo. + echo.Build finished. The message catalogs are in %BUILDDIR%/locale. + goto end +) + +if "%1" == "changes" ( + %SPHINXBUILD% -b changes %ALLSPHINXOPTS% %BUILDDIR%/changes + if errorlevel 1 exit /b 1 + echo. + echo.The overview file is in %BUILDDIR%/changes. + goto end +) + +if "%1" == "linkcheck" ( + %SPHINXBUILD% -b linkcheck %ALLSPHINXOPTS% %BUILDDIR%/linkcheck + if errorlevel 1 exit /b 1 + echo. + echo.Link check complete; look for any errors in the above output ^ +or in %BUILDDIR%/linkcheck/output.txt. + goto end +) + +if "%1" == "doctest" ( + %SPHINXBUILD% -b doctest %ALLSPHINXOPTS% %BUILDDIR%/doctest + if errorlevel 1 exit /b 1 + echo. + echo.Testing of doctests in the sources finished, look at the ^ +results in %BUILDDIR%/doctest/output.txt. + goto end +) + +if "%1" == "xml" ( + %SPHINXBUILD% -b xml %ALLSPHINXOPTS% %BUILDDIR%/xml + if errorlevel 1 exit /b 1 + echo. + echo.Build finished. The XML files are in %BUILDDIR%/xml. + goto end +) + +if "%1" == "pseudoxml" ( + %SPHINXBUILD% -b pseudoxml %ALLSPHINXOPTS% %BUILDDIR%/pseudoxml + if errorlevel 1 exit /b 1 + echo. + echo.Build finished. The pseudo-XML files are in %BUILDDIR%/pseudoxml. + goto end +) + +:end diff --git a/doc/source/conf.py b/doc/source/conf.py new file mode 100644 index 0000000..5767377 --- /dev/null +++ b/doc/source/conf.py @@ -0,0 +1,310 @@ +# -*- coding: utf-8 -*- +# +# gedit Flake8 integration documentation build configuration file, created by +# sphinx-quickstart on Mon Apr 8 11:46:38 2013. +# +# This file is execfile()d with the current directory set to its containing dir. +# +# Note that not all possible configuration values are present in this +# autogenerated file. +# +# All configuration values have a default; values that are commented out +# serve to show the default. + +import sys, os + +# If extensions (or modules to document with autodoc) are in another directory, +# add these directories to sys.path here. If the directory is relative to the +# documentation root, use os.path.abspath to make it absolute, like shown here. +sys.path.insert(0, os.path.abspath(os.path.join('..', '..'))) + +# -- General configuration ----------------------------------------------------- + +# If your documentation needs a minimal Sphinx version, state it here. +#needs_sphinx = '1.0' + +# Add any Sphinx extension module names here, as strings. They can be extensions +# coming with Sphinx (named 'sphinx.ext.*') or your custom ones. +extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx', 'sphinx.ext.todo', 'sphinx.ext.coverage', 'sphinx.ext.pngmath', 'sphinx.ext.mathjax', 'sphinx.ext.viewcode'] + +# Add any paths that contain templates here, relative to this directory. +templates_path = ['_templates'] + +# The suffix of source filenames. +source_suffix = '.rst' + +# The encoding of source files. +#source_encoding = 'utf-8-sig' + +# The master toctree document. +master_doc = 'index' + +# General information about the project. +project = u'gedit Flake8 integration' +copyright = u'2013, Sébastien CHAZALLET' + +# The version info for the project you're documenting, acts as replacement for +# |version| and |release|, also used in various other places throughout the +# built documents. +# +# The short X.Y version. +version = '0.1' +# The full version, including alpha/beta/rc tags. +release = '0.1' + +# The language for content autogenerated by Sphinx. Refer to documentation +# for a list of supported languages. +#language = None + +# There are two options for replacing |today|: either, you set today to some +# non-false value, then it is used: +#today = '' +# Else, today_fmt is used as the format for a strftime call. +#today_fmt = '%B %d, %Y' + +# List of patterns, relative to source directory, that match files and +# directories to ignore when looking for source files. +exclude_patterns = [] + +# The reST default role (used for this markup: `text`) to use for all documents. +#default_role = None + +# If true, '()' will be appended to :func: etc. cross-reference text. +#add_function_parentheses = True + +# If true, the current module name will be prepended to all description +# unit titles (such as .. function::). +#add_module_names = True + +# If true, sectionauthor and moduleauthor directives will be shown in the +# output. They are ignored by default. +#show_authors = False + +# The name of the Pygments (syntax highlighting) style to use. +pygments_style = 'sphinx' + +# A list of ignored prefixes for module index sorting. +#modindex_common_prefix = [] + +# If true, keep warnings as "system message" paragraphs in the built documents. +#keep_warnings = False + + +# -- Options for HTML output --------------------------------------------------- + +# The theme to use for HTML and HTML Help pages. See the documentation for +# a list of builtin themes. +html_theme = 'default' + +# Theme options are theme-specific and customize the look and feel of a theme +# further. For a list of options available for each theme, see the +# documentation. +#html_theme_options = {} + +# Add any paths that contain custom themes here, relative to this directory. +#html_theme_path = [] + +# The name for this set of Sphinx documents. If None, it defaults to +# " v documentation". +#html_title = None + +# A shorter title for the navigation bar. Default is the same as html_title. +#html_short_title = None + +# The name of an image file (relative to this directory) to place at the top +# of the sidebar. +#html_logo = None + +# The name of an image file (within the static path) to use as favicon of the +# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 +# pixels large. +#html_favicon = None + +# Add any paths that contain custom static files (such as style sheets) here, +# relative to this directory. They are copied after the builtin static files, +# so a file named "default.css" will overwrite the builtin "default.css". +html_static_path = ['_static'] + +# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, +# using the given strftime format. +#html_last_updated_fmt = '%b %d, %Y' + +# If true, SmartyPants will be used to convert quotes and dashes to +# typographically correct entities. +#html_use_smartypants = True + +# Custom sidebar templates, maps document names to template names. +#html_sidebars = {} + +# Additional templates that should be rendered to pages, maps page names to +# template names. +#html_additional_pages = {} + +# If false, no module index is generated. +#html_domain_indices = True + +# If false, no index is generated. +#html_use_index = True + +# If true, the index is split into individual pages for each letter. +#html_split_index = False + +# If true, links to the reST sources are added to the pages. +#html_show_sourcelink = True + +# If true, "Created using Sphinx" is shown in the HTML footer. Default is True. +#html_show_sphinx = True + +# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. +#html_show_copyright = True + +# If true, an OpenSearch description file will be output, and all pages will +# contain a tag referring to it. The value of this option must be the +# base URL from which the finished HTML is served. +#html_use_opensearch = '' + +# This is the file name suffix for HTML files (e.g. ".xhtml"). +#html_file_suffix = None + +# Output file base name for HTML help builder. +htmlhelp_basename = 'geditFlake8integrationdoc' + + +# -- Options for LaTeX output -------------------------------------------------- + +latex_elements = { +# The paper size ('letterpaper' or 'a4paper'). +#'papersize': 'letterpaper', + +# The font size ('10pt', '11pt' or '12pt'). +#'pointsize': '10pt', + +# Additional stuff for the LaTeX preamble. +#'preamble': '', +} + +# Grouping the document tree into LaTeX files. List of tuples +# (source start file, target name, title, author, documentclass [howto/manual]). +latex_documents = [ + ('index', 'geditFlake8integration.tex', u'gedit Flake8 integration Documentation', + u'Sébastien CHAZALLET', 'manual'), +] + +# The name of an image file (relative to this directory) to place at the top of +# the title page. +#latex_logo = None + +# For "manual" documents, if this is true, then toplevel headings are parts, +# not chapters. +#latex_use_parts = False + +# If true, show page references after internal links. +#latex_show_pagerefs = False + +# If true, show URL addresses after external links. +#latex_show_urls = False + +# Documents to append as an appendix to all manuals. +#latex_appendices = [] + +# If false, no module index is generated. +#latex_domain_indices = True + + +# -- Options for manual page output -------------------------------------------- + +# One entry per manual page. List of tuples +# (source start file, name, description, authors, manual section). +man_pages = [ + ('index', 'geditflake8integration', u'gedit Flake8 integration Documentation', + [u'Sébastien CHAZALLET'], 1) +] + +# If true, show URL addresses after external links. +#man_show_urls = False + + +# -- Options for Texinfo output ------------------------------------------------ + +# Grouping the document tree into Texinfo files. List of tuples +# (source start file, target name, title, author, +# dir menu entry, description, category) +texinfo_documents = [ + ('index', 'geditFlake8integration', u'gedit Flake8 integration Documentation', + u'Sébastien CHAZALLET', 'geditFlake8integration', 'One line description of project.', + 'Miscellaneous'), +] + +# Documents to append as an appendix to all manuals. +#texinfo_appendices = [] + +# If false, no module index is generated. +#texinfo_domain_indices = True + +# How to display URL addresses: 'footnote', 'no', or 'inline'. +#texinfo_show_urls = 'footnote' + +# If true, do not generate a @detailmenu in the "Top" node's menu. +#texinfo_no_detailmenu = False + + +# -- Options for Epub output --------------------------------------------------- + +# Bibliographic Dublin Core info. +epub_title = u'gedit Flake8 integration' +epub_author = u'Sébastien CHAZALLET' +epub_publisher = u'Sébastien CHAZALLET' +epub_copyright = u'2013, Sébastien CHAZALLET' + +# The language of the text. It defaults to the language option +# or en if the language is not set. +#epub_language = '' + +# The scheme of the identifier. Typical schemes are ISBN or URL. +#epub_scheme = '' + +# The unique identifier of the text. This can be a ISBN number +# or the project homepage. +#epub_identifier = '' + +# A unique identification for the text. +#epub_uid = '' + +# A tuple containing the cover image and cover page html template filenames. +#epub_cover = () + +# A sequence of (type, uri, title) tuples for the guide element of content.opf. +#epub_guide = () + +# HTML files that should be inserted before the pages created by sphinx. +# The format is a list of tuples containing the path and title. +#epub_pre_files = [] + +# HTML files shat should be inserted after the pages created by sphinx. +# The format is a list of tuples containing the path and title. +#epub_post_files = [] + +# A list of files that should not be packed into the epub file. +#epub_exclude_files = [] + +# The depth of the table of contents in toc.ncx. +#epub_tocdepth = 3 + +# Allow duplicate toc entries. +#epub_tocdup = True + +# Fix unsupported image types using the PIL. +#epub_fix_images = False + +# Scale large images. +#epub_max_image_width = 0 + +# If 'no', URL addresses will not be shown. +#epub_show_urls = 'inline' + +# If false, no index is generated. +#epub_use_index = True + + +# Example configuration for intersphinx: refer to the Python standard library. +intersphinx_mapping = {'http://docs.python.org/': None} diff --git a/doc/source/flake8_integration.rst b/doc/source/flake8_integration.rst new file mode 100644 index 0000000..02418fa --- /dev/null +++ b/doc/source/flake8_integration.rst @@ -0,0 +1,60 @@ +Auto generated documentation +============================ + +Plugin +------ +.. automodule:: flake8_integration + :members: + :private-members: + :special-members: + +Integrated +---------- + +.. automodule:: flake8_integration.integrated + :members: + :private-members: + :special-members: + +Window activatable +------------------ + +.. automodule:: flake8_integration.windowactivatable + :members: + :private-members: + :special-members: + +Tree +---- + +.. automodule:: flake8_integration.tree + :members: + :private-members: + :special-members: + +Settings +-------- + +.. automodule:: flake8_integration.settings + :members: + :private-members: + :special-members: + +Configuration +------------- + +.. automodule:: flake8_integration.configuration + :members: + :private-members: + :special-members: + +.. autoclass:: GeditFlake8ConfigWidget + :members: + :private-members: + :special-members: + +Status +------ + +This plugin is under active development. + diff --git a/doc/source/index.rst b/doc/source/index.rst new file mode 100644 index 0000000..53e9347 --- /dev/null +++ b/doc/source/index.rst @@ -0,0 +1,23 @@ +.. gedit Flake8 integration documentation master file, created by + sphinx-quickstart on Mon Apr 8 11:46:38 2013. + You can adapt this file completely to your liking, but it should at least + contain the root `toctree` directive. + +Welcome to gedit Flake8 integration's documentation! +==================================================== + +Contents: + +.. toctree:: + :maxdepth: 2 + + flake8_integration + + +Indices and tables +================== + +* :ref:`genindex` +* :ref:`modindex` +* :ref:`search` + diff --git a/flake8_integration.plugin b/flake8_integration.plugin new file mode 100644 index 0000000..cb0d9d6 --- /dev/null +++ b/flake8_integration.plugin @@ -0,0 +1,9 @@ +[Plugin] +Loader=python +Module=flake8_integration +IAge=3 +Name=Flake8 for gedit +Description=Check your python source code with Flake8 +Authors=Sébastien CHAZALLET +Copyright=Copyright © 2013 CHAZALLET Sébastien +Website=http://inspyration.org \ No newline at end of file diff --git a/flake8_integration/__init__.py b/flake8_integration/__init__.py new file mode 100644 index 0000000..840ec99 --- /dev/null +++ b/flake8_integration/__init__.py @@ -0,0 +1,12 @@ +#-*- coding: utf-8 -*- +"""Plugin for gedit that allow flake8 integration + +:author: Sébastien CHAZALLET +:organization: InsPyration EURL +:copyright: Copyright © InsPyration EURL +:license: GPL 3 + +:version: 0.1 +""" + +from windowactivatable import GeditFlake8WindowActivatable diff --git a/flake8_integration/__init__.pyc b/flake8_integration/__init__.pyc new file mode 100644 index 0000000000000000000000000000000000000000..3d0f0bb4960af73aa5d3d4071e95154244789312 GIT binary patch literal 535 zcmZXR!D<^Z5QgP-X~NPTdJR3y(Wg~QFGUy=6P%=Ag6kv{d=au%*%i@B%W9m(d6}N` z8p$K&0g~B`LmMK{uaWrl!^}T?{G9&1U;ox@w-P!JX~zSSoUs+@faM8u16Cz$m9RlR zWapy~9rJ0x*urfJ>)|RiP?+2zV5tz4bD@PRr>@OUupUj(D73++sZbj%LnGk);cl%W zTI1p9bh?_(=d%kK$4r;%mcAQ2EGlJPrb9JJMQ94;?QL%&;Fph!?TaJKE|>FE=umGP zTa+l^=(U9VyLTjv+qTWDkA(MT899@`v)cG*1e`49@B_vrVl6oD;KFY@i0_cdi`r!+ zR&GMw+?Xa(Ujn{m-&6ZUYeYj~_?6_Oo5yiKgFn{ip`B{9Hwx9-nX}Qb!}ds|%!8H^ zzfj%wochNt>5+}zN}SQ1m!UE|>XNsixsJ8chW7!;ni8Q%B9D#cFA>Q9BH)s47NyMU VE$)-kxC;5knMq1@?DGGZJOi~vqZI%E literal 0 HcmV?d00001 diff --git a/flake8_integration/config.pyc b/flake8_integration/config.pyc new file mode 100644 index 0000000000000000000000000000000000000000..b53b03b0042c5a756937ab5b3398b6381e708a61 GIT binary patch literal 3018 zcmcguU2oG?7=9h6frb{!S2qS176K`|AYtNWimHkd7(*(BrEF}~kmcH^&Pg5H_?)y2 zYOlKM-RxKJH#TWMX1DtR+w;D5S~@z33%1BUIUn!$$8+rdIp4hb`{p+xRX-R1_wkw@ zhKOhbqeD@R5{E_(ZPdu&wM&UhqdINWv96P<({P5ia46XlJKiaeWnVU}*`cw8tiPsXuMy{#e}c|q!_z)bGg><$RMT^+^BHk;jGYzJA< z_11rTyBQd(RqFM=UfEb#U48VzTQco%5WESJMA`fCD9}ke%tp)2ZdSxWs^0`wXKB}a zlA7m}LKfbmZ~LpwZkXkhLdOH!^?K8(_v_pDD7~fK-QBiM4akMR4atz7=uo9bb-l;W zSG{}Q(!koh+vzZIoQ|2OQ<0cXoG0yp9VN@~W=9o9OuF0tqN)GFuY~}S7)o>j0 zz}n8@=V`xI$#Y6YI6fg6 zYd(M-HClSD>1F8yTik#u=U}F?aDV0>j4r$HLTs_^n6%TSnMKM-(0TV!lUwYwdt42mt_6924elWH+ zOGOy8_(5p(j`*!QbA$^{{QaY^<$gO=mT{G75ZXY`ioX6Y5jV6cgBa}17+ z@HvE&7WPO6xxqSvY@|9S9CUWGVw+1rbz&}hpKl#pJEmibu(KtwipW?Mmk8e}4Q=O> zJ|~W?H@8^!{7rYZKI`6gZ#Wm6YtCZrqI=0%#Cpz|b8ce2=nA^BmF!0kuZb}LOt{mh z09!)qAudbo048MuNGzecqGSxChm4FaBOFkY4+NBPAjp9QfJWfc0qm`}Tvqr8Yvv0v z@^%NfEEzW{q|nBzLa(C#0TxQF9}G29@_z-J)A~N-=3u`$=<9gRZ4Bid_3FCZH3%W% zSEHePo!}n(rADv$`vinkUbfu&T*PI!NE|KSlkL0GeA_baeEb44tavHXq2*#;{vIpC zdS_{^#kD8xfYR*GO&58VOQZC!@eb3l-Tc`gfKh@0x9K>K0;~KAX<8hf{tf2g&MHGK z-F@6eaGaREvZT8+;2~7NvP1&yxNl WD +:organization: InsPyration EURL +:copyright: Copyright © InsPyration EURL +:license: GPL 3 + +:version: 0.1 +""" + +from gettext import gettext as _ + +from gi.repository import Gtk + + +STUFF = 1 + + +class GeditFlake8ConfigWidget(Gtk.Box): + + def __init__(self, settings): + """Initialize the configuration widget from SettingsManager properties + + :type self: GeditFlake8ConfigWidget + :param self: Current widget + + :type settings: SettingsManager + :param settings: Object used to define all configurable properties + + :rtype: None + """ + + # the current widget is a box + Gtk.Box.__init__(self, orientation=Gtk.Orientation.VERTICAL, spacing=6) + + # reference to settings + self.settings = settings + + # store useful entries into a dictionary + # in order to get their values later + self.entries = {} + + # Add a label on the top ot widget + self.pack_start(Gtk.Label(_("Add to ignore list")), True, True, 0) + + # create one checkbox for each warning that can be ignored + for key, option in self.settings.get_ignore_items(): + button = Gtk.CheckButton(option) + button.set_active(self.settings.is_in_ignore_list(key)) + self.pack_start(button, True, True, 0) + # add the check button to entries + self.entries[key] = button + + # create an Hbox to get the label and the entry on the same line + hbox = Gtk.Box(spacing=3) + self.pack_start(hbox, True, True, 0) + + # label for complexity entry + hbox.pack_start(Gtk.Label(_("Complexity")), True, True, 0) + + # complexity entry is an widget allowing us to be sure to have an int + complexity_entry = Gtk.SpinButton() + complexity_entry.set_adjustment(Gtk.Adjustment( + self.settings.get_complexity(), -1, 21, 1, 1, 1)) + hbox.pack_start(complexity_entry, True, True, 0) + # add the widget to entries + self.entries[self.settings.get_complexity_key()] = complexity_entry + + # add an event to get back values and use them + self.connect("destroy", self.on_configure_destroy) + + def on_configure_destroy(self, widget): + """Called when the widget is destroyed + + :type self: GeditFlake8ConfigWidget + :param self: Current widget + + :type widget: GeditFlake8ConfigWidget + :param widget: Current widget + + :rtype: None + """ + + # extract complexity form element and get complexity value + complexity = int( + self.entries.pop(self.settings.get_complexity_key()).get_text()) + + # extract all other values + values = {k: v.get_active() for k, v in self.entries.items()} + + # add back complexity value + values[self.settings.get_complexity_key()] = complexity + + # update settings + self.settings.update_setting(values) diff --git a/flake8_integration/configuration.pyc b/flake8_integration/configuration.pyc new file mode 100644 index 0000000000000000000000000000000000000000..ba6630cc3014d675f2a06f7f72bb7b04367e281d GIT binary patch literal 3076 zcmcguOK;mo5FU!QY%6x+yxgYAfd~>nJw!^8OCcCW9Ocmj&ZCmkpl$<#CfCx+6v=Q` zwiVdDxaVH_EAltmbN@)M{Q>PaL&}aD7wDm>K#uk?v-AFz?jH-aAAZ~XI;8UF;{PsQ z^B5!|+5mMZs!;6E(4mbAIXrhMc4;_88&jC$Z^dr$B(YG5j6wOe# zKFddb>JU9mqfxB9kx`LnQ!h-DE!`XC%FE(WPbc11o({br@l;^Ow`_U~jNYz}ddk*n ztzcyPY2Na>zrNcHjMXaf+Fz}1tgfv+SofAqBkTungE&_9Zf_XqxDlqqm0By!dqJY# z23Ds@%X^%d7vo$e-h-E&wOT7ovvIC_ecSTdlcD#^yAL?M<=x%ghE5FFMZSTPaek~r zl^E6X9=%xe?s&_6YqM6f$;`cE#7xbS#WZ_a-00h3yaI1_RBpti+l?=3`cM4o2oTvB z5cq4=o-GzQCy(s5mfcTyq9Sb{#=*AwvMm98B@sGGA~W8@Yd!-}NFq`~oD!rD+2esr zoo>B??T`tpnx7zUi3Sc0Dzq>8=c!ABDJ}%${?Ms7`ws8<)1*lTRi=X(k(?zv zM<|O!haX$x2la7?V%h5p-!u)*aDm)^{ffS?&;cG-MCWOr&!>Ya+DADpOt{a|ex*Fm zDHLJ*#L1ZR2JEQN@*7RB3Ln_wDpWZK)1`&`(|;3$G4I8&B3=ar$3;G1nH{)9(HS}RG97Za&7*x5I4_?g zFOL&#br9>f%CmiS)ILQy7kyH+P!|QHlb(4RBtcK*UY4hs%F!~WR`beV%Z@YUc}B%s zDBja+>XPwh(WSJ%JrF)jU$@ewV<@;jG^Y?7w&2Jub z)*rW5*M!rQVG=80GI)*Xhr!#vu|aO_G=$cIO%+>KRt=4) zZ1+{TeQ#uKn#f_$;s>GCJIbDij5e@uBE`N7Q#aE|DRUM~A`=Zp#tvbZaI79rnS)gW zXv;8J4(rJ!e_M^kF@Sx7B-=}1NfQW_*zcEdtaD7oFD}UrXV7vyS)NmtW(?sn+$_A} z81y$0ZjQmR5k7}-T*n#-F;6gR_S2ziny}y8P4jIo1=Z|v(ffS$;O;R^lZVYMfmKAt zs$K!}&55A}=x5^&=Z|sN+yJ44>+amtoO{!~=A3h`I7^lD?geKF^Lc09xsLggDmW!s5I9k3g8@Htgw}tL}v^q1a ze>u{j<cq#^!jm6$<9s?kCgdn4tK6X`xCt4IW4%(4fl$B(G~kjNKJyF0;F_iCd=5X~0fr-1t<2piGr`E^`%xOg77VF#4#e`c-P4U+WvS6N q&Bw(Z!ARa+fBEoXhs8R4=EpT#LbqH5YlUIe%z{)aiiz{Etpu(B literal 0 HcmV?d00001 diff --git a/flake8_integration/integrated.py b/flake8_integration/integrated.py new file mode 100644 index 0000000..178bccb --- /dev/null +++ b/flake8_integration/integrated.py @@ -0,0 +1,102 @@ +#-*- coding: utf8 -*- + +"""Module used to manage the results of flake8 : + +> 1. get them instead of print them ; +> 2. format them ; + +This module works with Python2 and Python3 + +:author: Sébastien CHAZALLET +:organization: InsPyration EURL +:copyright: Copyright © InsPyration EURL +:license: GPL 3 + +:version: 0.1 +""" + + +import sys +if sys.version_info.major == 2: + from io import BytesIO as IO +else: + from io import StringIO as IO + +from flake8.main import check_code + + +def _intercept_printed(action, *args, **kwargs): + """Function used to redirect printed to returned value + + :type action: function + :param action: Called function that we intercept prints + + :rtype: str + :return: all that was printed by the call of action + + >>> def do(): + ... print('Hello World') + ... + >>> result = _intercept_printed(do) + >>> print(result) + Hello World + + """ + with IO() as buff: + out, sys.stdout = sys.stdout, buff + action(*args, **kwargs) + sys.stdout = out + buff.seek(0) + return buff.read() + + +def _format_flake8_results(warnings): + """Function used to extract useful informations from flake8 results + + :type warnings: str + :param warnings: Warnings generated by flake8 + + :rtype: list + :return: list of (code:str, line:int, col:int, description:str) + + >>> result = _format_flake8_results( + ... '''stdin:1:10: E901 SyntaxError: unexpected EOF while parsing + ... stdin:2:1: E901 TokenError: EOF in multi-line statement''') + >>> for r in result: + ... print r + ... + (' e901', 1, 10, 'SyntaxError: unexpected EOF while parsing') + (' e901', 2, 1, 'TokenError: EOF in multi-line statement') + """ + result = [] + for warning in warnings.splitlines(): + cols = warning.split(':') + result.append((cols[3][:5].lower(), + int(cols[1]), + int(cols[2]), + cols[3][6:] + ':' + ':'.join(cols[4:]))) + return result + + +def check_code_and_get_formated_result(code, ignore=(), complexity=-1): + """Function used to return the printed result of flake8 check_code function + + >>> result = check_code_with_flake8("a = 42") + >>> print(result) + + >>> result = check_code_with_flake8("a = f(42") + >>> print(result) + stdin:1:10: E901 SyntaxError: unexpected EOF while parsing + stdin:2:1: E901 TokenError: EOF in multi-line statement + + """ + return _format_flake8_results( + _intercept_printed( + check_code, + **{"code": code, "ignore": ignore, "complexity": complexity})) + + +if __name__ == '__main__': + import doctest + doctest.testmod() + diff --git a/flake8_integration/integrated.pyc b/flake8_integration/integrated.pyc new file mode 100644 index 0000000000000000000000000000000000000000..79e5272b2e2b5fd5eb154c2a00e1f551e544c787 GIT binary patch literal 3392 zcmcImTXPge6zAVFiL%9@(Y^zKeFmu0$_ z%|dvB2Vc}*;De9+4XyGI`2+Mjr)PJ$l~RgHy3>8;^y$;5zwex`{xMf;{Jwi96y;A9 z|1YEIU(iKD?4Wl`VzKJHet!7EQB= z3`~jSh)8F|&Wv!PY4HS>Ya%+rgQFtCACzXqlZx1x6>3gIHMalraQ9Lp6{w2Gw3Wg28bTS?PVvQWC07%lUbY$d_I`b2uQ+KOCk z$hI=1k;*vJMgD zJILY(fr<0XlQ%PcdrgWXZn>8(4HsnDlTw?)TC>}G5@yP^fgZWHJ78Fc^bvry{#Z*ZD=RWm zEg9wRd5=vs8V&N@E_UlTRFdR!J1>%`etxLH|7odZiu_#qBS(GagNocJxB8^VGS_Nb z=`(iO+Va))E4RK}zjHH4r>|qw?BuCx>af#fwswP1HQTsy<9Cx@yA5_U zbrCjgYT$#nEm@ir1RATT(H)q1*m^lGXCT#-gv493&Piv^nL%S68xcmzlzp(6P)cmaCA8z~kb25wIy%}QijfEi~e*@QR^jF*#1o(xr| z#90_Qg|;`zy3^t;bWgQF2GHW(NwE#vTQ2cZ@8B9B1b?uE|Y)LWxuwAMk@n(txD*c@~#<8`7m-uLF~D<}G@Q3!Ys2 zbYW3$4KfoPtQ7?%^j@Y8x=0#e`P#-c+3&ql3 zQJ&%t=r9N!;FhY)z=1K};IJ%6)B5@fW=oqm;688e)}?~W^$T(le+w66{k5Ghw;fwp zVk7m}_1k)lTrGqb6USpBeN1z%6)~|nCUUqmGE@?DH;E0MUmH^9Dd&Zt+f`Y_!X)pj zf+>y*=RB~N$C*op3;}wGGG1rn#1*NO^9rCub7J7`jb?|p;e!84V0}aiw51c2q_~iQGs|y+x zFD?>g_8w;T@e^oVg-2ED6;v5(`Si#sDdV0CP$NEEIyXk>%N60p3h-Qg`8&HU_a7|( zM`HdLwqUa)3FC&Su^QS?74z$Z(9_BOUU@_p=~XzRz1?L%b^u wk7?%e}#^%iQQAxS!dokSvgTTQJpzGbLRN`tTXHU1?6OfI{*Lx literal 0 HcmV?d00001 diff --git a/flake8_integration/org.gnome.gedit.plugins.flake8_integration.gschema.xml b/flake8_integration/org.gnome.gedit.plugins.flake8_integration.gschema.xml new file mode 100644 index 0000000..56d966f --- /dev/null +++ b/flake8_integration/org.gnome.gedit.plugins.flake8_integration.gschema.xml @@ -0,0 +1,35 @@ + + + + + false + identation contains tabs + Add "W191: identation contains tabs" to ignore list ? + + + false + trailling whitespace + Add "W291: trailling whitespace" to ignore list ? + + + false + no new line at end of file + Add "W292: no new line at end of file" to ignore list ? + + + false + blank line contains whitespace + Add "W293: blank line contains whitespace" to ignore list ? + + + false + blank line at end of file + Add "W391: blank line at end of file" to ignore list ? + + + -1 + complexity (mccabe) + any value > 0 enables complexity checking with mccabe + + + diff --git a/flake8_integration/settings.py b/flake8_integration/settings.py new file mode 100644 index 0000000..1a398d4 --- /dev/null +++ b/flake8_integration/settings.py @@ -0,0 +1,170 @@ +#-*- coding: utf-8 -*- + +"""Module used to define how to manage settings and their persistence + +:author: Sébastien CHAZALLET +:organization: InsPyration EURL +:copyright: Copyright © InsPyration EURL +:license: GPL 3 + +:version: 0.1 +""" + +from gettext import gettext as _ + +from gi.repository import Gio + +FLAKE8_KEY_BASE = 'org.gnome.gedit.plugins.flake8_integration' + +FLAKE8_KEY_W191 = "w191" +FLAKE8_KEY_W291 = "w291" +FLAKE8_KEY_W292 = "w292" +FLAKE8_KEY_W293 = "w293" +FLAKE8_KEY_W391 = "w391" + +FLAKE8_IGNORED_KEYS = (FLAKE8_KEY_W191, FLAKE8_KEY_W291, FLAKE8_KEY_W292, + FLAKE8_KEY_W293, FLAKE8_KEY_W391) + +CONFIG_OPTIONS = {FLAKE8_KEY_W191: _("w191: identation contains tabs"), + FLAKE8_KEY_W291: _("w291: trailling whitespace"), + FLAKE8_KEY_W292: _("w292: no new line at end of file"), + FLAKE8_KEY_W293: _("w293: blank line contains whitespace"), + FLAKE8_KEY_W391: _("w391: blank line at end of file")} + +FLAKE8_KEY_COMPLEXITY = "complexity" + + +class SettingsManager(object): + """Allow to manage local settings and it persistent storage""" + + def __init__(self): + """Initialize Settings Manager + + :type self: SettingsManager + :param self: Current manager + + :rtype: None + """ + + #_settings allow persistent storage of configuration + self._settings = Gio.Settings.new(FLAKE8_KEY_BASE) + #settings contains configuration usable in the plugin + self.settings = {} + # pull local settings from persistent storage + self.pull_settings() + + def pull_settings(self): + """Pull operation update local settings from persistent storage + + :type self: SettingsManager + :param self: Current manager + + :rtype: None + """ + + # pull ignore list + for tag in FLAKE8_IGNORED_KEYS: + self.settings[tag] = self._settings.get_boolean(tag) + # pull complexity + self.settings[FLAKE8_KEY_COMPLEXITY] = self._settings.get_int( + FLAKE8_KEY_COMPLEXITY) + + def push_settings(self): + """Push operation allow persistent storage update from local settings + + :type self: SettingsManager + :param self: Current manager + + :rtype: None + """ + + # push ignore list + for tag in FLAKE8_IGNORED_KEYS: + self._settings.set_boolean(tag, self.settings[tag]) + # push complexity + self._settings.set_int(FLAKE8_KEY_COMPLEXITY, + self.settings[FLAKE8_KEY_COMPLEXITY]) + + def update_setting(self, values={}): + """Updating settings allow to update local and persistent settings + + :type self: SettingsManager + :param self: Current manager + :type values: dict + :param values: values to store persistently + + :rtype: None + """ + # update local settings + self.settings.update(values) + # push local settings to persistent storage + self.push_settings() + + def get_ignore_keys(self): + """Allow to share information about keys used to store ignore list + + :type self: SettingsManager + :param self: Current manager + + :rtype: list of str + :return: list of ignore keys + """ + return FLAKE8_IGNORED_KEYS + + def get_ignore_items(self): + """Allow to share information about keys used to store ignore list + + :type self: SettingsManager + :param self: Current manager + + :rtype: list of tuple of str + :return: list of (ignore key, ignore label) + """ + return CONFIG_OPTIONS.items() + + def get_complexity_key(self): + """Allow to share information about key used to store complexity + + :type self: SettingsManager + :param self: Current manager + + :rtype: str + :return: name of the complexity key + """ + return FLAKE8_KEY_COMPLEXITY + + def is_in_ignore_list(self, key): + """Answer to "Is tag in ignore list ?" question + + :type self: SettingsManager + :param self: Current manager + :type key: str + :param key: flake8 key as defined in FLAKE8_IGNORED_KEYS + + :rtype: bool + :return: True if the key is in ignore list, False otherwise + """ + return self.settings[key] + + def get_ignore_list(self): + """Get the user defined warning keys to ignore + + :type self: SettingsManager + :param self: Current manager + + :rtype: list of str + :return: list of warning keys + """ + return [tag for tag, value in self.settings.items() + if tag in FLAKE8_IGNORED_KEYS and value is True] + + def get_complexity(self): + """Get the user defined complexity parameter + + :type self: SettingsManager + :param self: Current manager + + :rtype: int + :return: complexity + """ + return self.settings[FLAKE8_KEY_COMPLEXITY] diff --git a/flake8_integration/settings.pyc b/flake8_integration/settings.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a61c06853c3d1096ae82949bb13f1ccac07e3749 GIT binary patch literal 5985 zcmdT|-EJGl6+R>-ilii4Nt>c+^D{7-mI(~9wt&DP1UHH-D?(&RSvhb_G+nH?Lvp3% zF1<4hEyKQY3iJi~0KF*?wCF>mKpvn#AEQ^j>Q(!lndL4;sc0|66eYpo{G6RRJKy=v zIWwiduh#zX?eV7_Nr8ol3MA^$qHSIJ)^d5yZz?G^fp=q1tP_I2`KrK9@y_Ueke9nqto}Ed0{B^hrNLpgpE!-xLa$*NzaRdXPyq?s3mqI zb$FJThS>hh*{iiW@$f7OdVSpzTa&8z=IaZRVq-iWH-bn(+&tgF%$Pq6Ix$qt2=C%;zT|gfm44p1RSW)!PaPXYdI?1jTOprn z+fhQtP7tg2@Q>LrYdnyRp7aCV7>1)BRBCiX?^ND#gGkGs)lM%!e0=MJTefmLuiT#W ztlP@^2e;H)sc=gKzKpcppH7S#W*6E!R_aGAf@xYpC)nK(P>FFr&{7S(j#R=9-)@O0 z7Lgna2uR^+A%SMx72P0|>L*rcy(NxAFFLg{*)mhJz0HD9?402F$#e}efOr_nr-44x z*U>ymP3VEKs3hZ75n~_Wr%q8wa0|wY5>{VelWmunXIxoef^lV$0`PBvz5??=u0_)c zew9rH6k9SCu&iP#HKrRsxXiTT$_hD0^<`f44vNh%JZJ1--0{NmCLieB-nCFVPQZ!| z+XVmk6}IqGH&JM!lLDO-Ntc+8&xzaxR+uY`T%MGfhwLzp>ineoHHzIR(18~Q&!m`a zlt_1~Ruk!`rO$>^K(nw5rk&rk-KY}k@!!N`Q& zI{wKNY8$m?AKYoGPQN*hlT%~4O~WLYnZ#6Ts-)ArNT=px!N%~+DByx@fp%S>BN4BKJa8{5%dZysPf*RTLHSXEF^ zZME=bv0BJr=BRC8-bLkU-NGzpVP;ef#;?Cb7@x)2jsj#engjhuOnEp`{VAXk-rz>E zu$Z|Cky?O({Ja@_*Kj+pKyv*-V3%dbF#AXvU9! z>4hVyTEY)HI`hFT>%J#r_MbB`4mxs5!|-fMwadLZyKPHa=DK}b=ZC1~xN07;i_8UG zW~g0wg74?(QS5 z9nH48b+CVbcgH6L#P?cKNi{g9FQ~j=je(Zipuc1AGL&%3Ys{HPF9x-b>jyWBP4M&3i38 zm0ke&tmh?};gpVP(BbSb!>BcJeh-roe07&E3(UlUntAb?;=UIuU=E379H{&lV!6e6 z!Bm_op$P@&;v+dL3KX)QiI-&0{Tp;zx-A9kDA8a+2h!PAPV7wA_-da^c&Z{J{^9jVPO;Q}VfHh=6T5hpEpWmrv|TFlhu z|BqtXv|btLb@o0c(Qr63Ghxl#U$7C>dE?Acz~qp|g_?w8E>O;dI|lN%Sl=cb)i>&G3}bvV?SgPh4sogZ`a4KDbe$q`)K;Nl%F zeu^Tu8&kWwy91|!*?AfD0~F;#xmaD}@5=S+viYu7SN7{h-*+M4;770-yox!*^nykr zhp`HfsGpfj6o;e2?4`*gzV~A@ow`VQ#8-e9`)*&-w|=1yS8?`S_a-Ja;G3jAK0c8h oZQf~aJ7z%Mu&~}W_h}4OxwwXJxriOKUmVI;ife^c^TkN%U+E+d?EnA( literal 0 HcmV?d00001 diff --git a/flake8_integration/tree.py b/flake8_integration/tree.py new file mode 100644 index 0000000..438ebfb --- /dev/null +++ b/flake8_integration/tree.py @@ -0,0 +1,139 @@ +#-*- coding: utf-8 -*- + +"""Module managing the tree and all stuff around it + +:author: Sébastien CHAZALLET +:organization: InsPyration EURL +:copyright: Copyright © InsPyration EURL +:license: GPL 3 + +:version: 0.1 +""" + + +from gettext import gettext as _ + +from gi.repository import Gtk + +SP_COL_TITLES = (_("Code"), _("L"), _("C"), _("Errors / Warnings")) +SP_COL_TYPES = (str, int, int, str) + +PYTHON_ICON = 'gnome-mime-text-x-python' + + +class GeditFlake8Tree(Gtk.TreeView): + """Tree inside gedit side panel containing all flake8 warnings""" + + def __init__(self, window): + """Configure tree columns, tree selection and add it to side panel + + :type self: GeditFlake8Tree + :param self: Current tree + :type window: Gedit.Window + :param window: GEdit window object + + :rtype: None + """ + + # use a list store to manage warnings + Gtk.TreeView.__init__(self, Gtk.ListStore(*SP_COL_TYPES)) + + # compose window + self.window = window + + # create columns + for index, title in enumerate(SP_COL_TITLES): + self.append_column(Gtk.TreeViewColumn( + _(title), + Gtk.CellRendererText(), + text=index)) + + # Allow to do something when a tree line is selected + self.get_selection().connect("changed", self.on_tree_selection) + + # create an icon for the side panel + image = Gtk.Image() + image.set_from_icon_name(PYTHON_ICON, Gtk.IconSize.MENU) + + # get the side panel (created by GEdit) + sp = self.window.get_side_panel() + + # Add the tree in the side panel + sp.add_item( + self, + 'flake8_results', + _("Flake8 results"), + image + ) + + # set the side panel invisible + sp.set_property("visible", False) + + def remove(self): + """remove the tree from the side panel + + :type self: GeditFlake8Tree + :param self: Current tree + + :rtype: None + """ + + # get the side panel (created by GEdit) + sp = self.window.get_side_panel() + sp.remove_item(self) + + def activate(self): + """show the tree in the side panel + + :type self: GeditFlake8Tree + :param self: Current tree + + :rtype: None + """ + + sp = self.window.get_side_panel() + sp.set_property("visible", True) + sp.activate_item(self) + + def on_tree_selection(self, selection): + """When a tree line is selected, go to the file linked line + + :type self: GeditFlake8Tree + :param self: Current tree + :type selection: Gtk.TreeSelection + :param selection: Current selection + + :rtype: None + """ + + doc = self.window.get_active_document() + if not doc: + return + + # get the tree line selected and put the cursor to the file linked line + model, treeiter = selection.get_selected() + doc.goto_line(model[treeiter][1] - 1) + + # scroll the view to the cursor + self.window.get_active_view().scroll_to_cursor() + + def update_model(self, datas): + """Update the tree with new datas + + :type self: GeditFlake8Tree + :param self: Current tree + :type datas: list + :param datas: list of ready to use (str, int, int, str) tuples + + :rtype: None + """ + + # get the model (Gtk.ListStore) + model = self.get_model() + + # Empty model + model.clear() + + # Fill model with new values + for data in datas: + model.append(data) diff --git a/flake8_integration/tree.pyc b/flake8_integration/tree.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e3f43be801b0bfe088cc5b253ec28088c0bd74f5 GIT binary patch literal 4135 zcmcgvUvncz5ueq{vL)MR=MFA0A;p9$3X!^#LU9?l_1OLAX5-I) zKmBzmW}g-OeuT&T0Zk;t30g-)6_Ge1b;LEzh}K2Fxk2XKbAFVgE(o0dHST$$@MVE;@5$V^QzDR-ySX)DeQ#Cd%SnxQ|5LzNlTk^p$l9XQZj+!|o;u8ML>=s@=Q&DU`NrE%= z;SrpEgBVi%D?H|xXcQ2G7@`Fh9E#+LOX#6am0&}i6~YU3YJ?Z+tO~E+tj(2>dI_(^ zk&;8&RdTloGL^^><^(a>%po7JL2^1fMp%IoQbaE4lEQzWu|kX;F|LTKvhNCb=1)Kw z(0t|4tiK{I_JpmGF9Fw&Kl{1(T}6C>uS>7TYpkO#Y(reRBta_I38pyZRRx+HOgf)` zAdX3VgWilc>EtxL$2-xIEqd`qRa^n?+rqxVdhUzygVGjAtcdY zV-ueys@J4c@Hny7&?7YdCRS5R1K$Vqtnb@81_!aReVc1#iK6<4e)q+JfAs2buMZ#z zQQFRuDx0JV6rk+plH~r;0YqsgC<>KDeiv>^i0oUmZPv(ewAa zFM53TeZ1|*uNC|G)4kqHHk7wUruv+oEEq(QA6u2OTS$4K^FkqHmiGN5NQ~lSXGH`p zk0Qb^0STOm#B6Lq%hZe6P)cl5G|>uf%v1E*BM?^GgroK}*Jq{(Le*x*@QY+JM3FFU zqr>(r{&8m2uq5I(IiyuwdUVjY@t7Z?5gXrk>+X)T;neZmb9dYg=b^jh)*Kgqb!W92 z5-i9RdYE4%I+Wx1I-IxQgE`j_C4e9LO*a0Ikkl&8&ykh$%0+JH(SqTYQ2yiyAVT!KMbVn+KvCn`hqlZZ+Q|GH&G86#wxFzBNu1$gV5ri7 z+f?*O4s)tplum;fS3?M#sfd2mou$z{qKi^kR!@{Md)6YJ?#~PA0z@|zaV|SAi#II2 zWZ!KF>BYn}Op_%$KERN;mLsJ6C=XFmGRqvhpnnuRg4Qs%xldl;o7>W|b1Gz1Mog&l zB=I2@PPEB&iA73xR&Zk`G7R^RJY*(Lag|J%;)y;%@%pZ5!FvL0vrNLo_9Pu5qVg{FM~!T)a&j{PAZG`1%Iu;U(YNoX_78#|uWLyWz_s zLV_(QVjA0#%+yq3IxtI7x*J}Yp@@}t090eY4w|J`G9TcE5=55-@`+KhX{>&PtFfIm z82&`sNs*{!OK-&!Q(_4Yps0)_WptRRKrL zP}+5Y-3+mj*w}Cz?xxeE!R-D;*Av{o8kq4(9RCqwNH<@flEU}7q?tx|tn-^Aa;9{=O&?b7ymghv@%-qzxlRz+@N+#N6ZqUlje va;hPs{EHZSbhGomM-83Uqn-XIXJF6nmcD#K7ozek?sjFn@}6_QQgi +:organization: InsPyration EURL +:copyright: Copyright © InsPyration EURL +:license: GPL 3 + +:version: 0.1 +""" + + +from gettext import gettext as _ + +from gi.repository import GObject, Gtk, Gedit, PeasGtk + +from integrated import check_code_and_get_formated_result as check_code +from settings import SettingsManager +from tree import GeditFlake8Tree +from configuration import GeditFlake8ConfigWidget + +# Menu to insert in gedit's 'Tools' menu +ui_str = """ + + + + + + + + +""" + + +class GeditFlake8WindowActivatable(GObject.Object, + Gedit.WindowActivatable, + PeasGtk.Configurable): + """Main module of the gedit flake8 plugin""" + + __gtype_name__ = "GeditFlake8WindowActivatable" + + window = GObject.property(type=Gedit.Window) + + def __init__(self): + """Initialize plugin + + :type action: function + :param action: Called function that we intercept prints + + :rtype: None + """ + GObject.Object.__init__(self) + # Initialize settings + self._settings = SettingsManager() + self.flake8_tree = None + + def do_activate(self): + """Activate the plugin + + :type self: GeditFlake8WindowActivatable + :param self: Current plugin + + :rtype: None + """ + # Get the Gtk.UIManager + manager = self.window.get_ui_manager() + + # Create a new action group + self._action_group = Gtk.ActionGroup("GeditFlake8PluginActions") + self._action_group.add_actions([("GeditFlake8", + None, + _("Check Python source code"), + None, + _("Check Python source code"), + self.on_check_source_code)]) + + # Insert the action group + manager.insert_action_group(self._action_group, -1) + + # Merge the UI + self._ui_id = manager.add_ui_from_string(ui_str) + + # Create a tree + self.flake8_tree = GeditFlake8Tree(self.window) + + def do_deactivate(self): + """Deactivate the plugin + + :type self: GeditFlake8WindowActivatable + :param self: Current plugin + + :rtype: None + """ + # Remove the tree from the side panel + self.flake8_tree.remove() + + # Delete tree object + self.flake8_tree = None + + # Get the Gtk.UIManager + manager = self.window.get_ui_manager() + + # Remove the ui + manager.remove_ui(self._ui_id) + + # Remove the action group + manager.remove_action_group(self._action_group) + + # Delete the action group object + self._action_group = None + + # Make sure the manager updates + manager.ensure_update() + + def do_update_state(self): + """Allow to activate the plugin only if the document is python code + If the document is a new document, it hasto be saved or the language of + the document has to be set. + + :type self: GeditFlake8WindowActivatable + :param self: Current plugin + + :rtype: None + """ + state = False + doc = self.window.get_active_document() + if doc is not None: + language = doc.get_language() + if language is not None: + state = language.get_id() in ["python", "python3"] + self._action_group.set_sensitive(state) + + def do_create_configure_widget(self): + """Action when a user want to configure the plugin + + :type self: GeditFlake8WindowActivatable + :param self: Current plugin + + :rtype: GeditFlake8ConfigWidget + :return: a configuration widget + """ + return GeditFlake8ConfigWidget(self._settings) + + def on_check_source_code(self, action): + """The user ask to check code source : + 1\ check there is a doc and the doc is python code + 2\ use flake8 + 3\ put flake8 results into the tree and activate it + + :type self: GeditFlake8WindowActivatable + :param self: Current plugin + + :type action: Gtk.Action + :param action: Called function that we intercept prints + + :rtype: None + """ + + # Get the document content + doc = self.window.get_active_document() + if not doc: + return + + # check the language of current document is set + language = doc.get_language() + if language is None: + return + + # check the language of current document is python + if language.get_id() not in ["python", "python3"]: + return + + # Use flake8 to get warnings + warnings = check_code( + doc.get_text(doc.get_start_iter(), doc.get_end_iter(), False), + map(str.upper, self._settings.get_ignore_list()), + self._settings.get_complexity()) + + # Empty store + self.flake8_tree.update_model(warnings) + + # Activate tree + self.flake8_tree.activate() diff --git a/flake8_integration/windowactivatable.pyc b/flake8_integration/windowactivatable.pyc new file mode 100644 index 0000000000000000000000000000000000000000..bb93558b5351f99ed3112bdbf3e6b89fe2ebe50f GIT binary patch literal 5652 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