From 80bb020a5b3cd30a092bbe7711c62f54f547d6f8 Mon Sep 17 00:00:00 2001 From: Hemu Date: Tue, 6 Feb 2024 17:09:30 -0800 Subject: [PATCH] Updated documentation --- .DS_Store | Bin 10244 -> 10244 bytes docs/code_of_conduct.rst | 4 + docs/conf.py | 58 +- docs/contributing.rst | 5 +- docs/html/.buildinfo | 2 +- docs/html/.doctrees/autoapi/index.doctree | Bin 4232 -> 4104 bytes .../autoapi/shasta/actor/index.doctree | Bin 0 -> 26199 bytes .../shasta/base_experiment/index.doctree | Bin 0 -> 24138 bytes .../autoapi/shasta/core/index.doctree | Bin 0 -> 32412 bytes .../.doctrees/autoapi/shasta/index.doctree | Bin 0 -> 4235 bytes .../autoapi/shasta/map/index.doctree | Bin 0 -> 53063 bytes .../preprocessing/bake_texture/index.doctree | Bin 0 -> 12289 bytes .../shasta/preprocessing/index.doctree | Bin 0 -> 3759 bytes .../preprocessing/preprocess/index.doctree | Bin 0 -> 14258 bytes .../shasta/preprocessing/utils/index.doctree | Bin 0 -> 12290 bytes .../shasta/primitives/formation/index.doctree | Bin 0 -> 22239 bytes .../autoapi/shasta/primitives/index.doctree | Bin 0 -> 39594 bytes .../primitives/path_planning/index.doctree | Bin 0 -> 21388 bytes .../autoapi/shasta/utils/index.doctree | Bin 0 -> 10795 bytes .../autoapi/shasta/visualize/index.doctree | Bin 0 -> 7843 bytes .../autoapi/shasta/world/index.doctree | Bin 0 -> 21191 bytes docs/html/.doctrees/code_of_conduct.doctree | Bin 0 -> 548085 bytes docs/html/.doctrees/contributing.doctree | Bin 19522 -> 570290 bytes docs/html/.doctrees/environment.pickle | Bin 336083 -> 746289 bytes docs/html/.doctrees/history.doctree | Bin 2943 -> 3033 bytes docs/html/.doctrees/index.doctree | Bin 4464 -> 4568 bytes docs/html/.doctrees/installation.doctree | Bin 7254 -> 6099 bytes docs/html/.doctrees/readme.doctree | Bin 6625 -> 602970 bytes docs/html/.doctrees/usage.doctree | Bin 2650 -> 2707 bytes docs/html/_modules/index.html | 460 ++--- docs/html/_modules/shasta/actor.html | 343 ++++ .../html/_modules/shasta/base_experiment.html | 334 ++++ docs/html/_modules/shasta/core.html | 478 +++++ docs/html/_modules/shasta/env.html | 341 ++++ docs/html/_modules/shasta/map.html | 529 ++++++ .../shasta/preprocessing/bake_texture.html | 344 ++++ .../shasta/preprocessing/preprocess.html | 335 ++++ .../_modules/shasta/preprocessing/utils.html | 314 ++++ .../_modules/shasta/primitives/formation.html | 396 +++++ .../shasta/primitives/path_planning.html | 378 ++++ docs/html/_modules/shasta/utils.html | 286 +++ docs/html/_modules/shasta/visualize.html | 283 +++ docs/html/_modules/shasta/world.html | 352 ++++ docs/html/_sources/autoapi/index.rst.txt | 7 +- .../autoapi/shasta/actor/index.rst.txt | 87 + .../shasta/base_experiment/index.rst.txt | 78 + .../autoapi/shasta/core/index.rst.txt | 121 ++ .../_sources/autoapi/shasta/index.rst.txt | 32 + .../_sources/autoapi/shasta/map/index.rst.txt | 181 ++ .../preprocessing/bake_texture/index.rst.txt | 54 + .../shasta/preprocessing/index.rst.txt | 17 + .../preprocessing/preprocess/index.rst.txt | 46 + .../shasta/preprocessing/utils/index.rst.txt | 32 + .../shasta/primitives/formation/index.rst.txt | 63 + .../autoapi/shasta/primitives/index.rst.txt | 120 ++ .../primitives/path_planning/index.rst.txt | 65 + .../autoapi/shasta/utils/index.rst.txt | 34 + .../autoapi/shasta/visualize/index.rst.txt | 27 + .../autoapi/shasta/world/index.rst.txt | 59 + docs/html/_sources/code_of_conduct.rst.txt | 4 + docs/html/_sources/contributing.rst.txt | 5 +- docs/html/_sources/index.rst.txt | 2 +- docs/html/_sources/installation.rst.txt | 9 - docs/html/_sources/readme.rst.txt | 5 +- docs/html/_static/basic.css | 167 +- docs/html/_static/debug.css | 69 + docs/html/_static/doctools.js | 378 ++-- docs/html/_static/documentation_options.js | 6 +- docs/html/_static/graphviz.css | 2 +- docs/html/_static/language_data.js | 106 +- docs/html/_static/pygments.css | 322 +++- docs/html/_static/scripts/furo-extensions.js | 0 docs/html/_static/scripts/furo.js | 3 + docs/html/_static/scripts/furo.js.LICENSE.txt | 7 + docs/html/_static/scripts/furo.js.map | 1 + docs/html/_static/searchtools.js | 812 +++++---- docs/html/_static/skeleton.css | 296 ++++ docs/html/_static/sphinx_highlight.js | 144 ++ docs/html/_static/styles/furo-extensions.css | 2 + .../_static/styles/furo-extensions.css.map | 1 + docs/html/_static/styles/furo.css | 2 + docs/html/_static/styles/furo.css.map | 1 + docs/html/autoapi/index.html | 532 +++--- docs/html/autoapi/shasta/actor/index.html | 420 +++++ .../autoapi/shasta/base_experiment/index.html | 399 +++++ docs/html/autoapi/shasta/core/index.html | 485 +++++ docs/html/autoapi/shasta/index.html | 335 ++++ docs/html/autoapi/shasta/map/index.html | 593 +++++++ .../preprocessing/bake_texture/index.html | 372 ++++ .../autoapi/shasta/preprocessing/index.html | 311 ++++ .../preprocessing/preprocess/index.html | 366 ++++ .../shasta/preprocessing/utils/index.html | 346 ++++ .../shasta/primitives/formation/index.html | 374 ++++ .../html/autoapi/shasta/primitives/index.html | 455 +++++ .../primitives/path_planning/index.html | 389 ++++ docs/html/autoapi/shasta/utils/index.html | 343 ++++ docs/html/autoapi/shasta/visualize/index.html | 333 ++++ docs/html/autoapi/shasta/world/index.html | 371 ++++ docs/html/code_of_conduct.html | 436 +++++ docs/html/contributing.html | 656 +++---- docs/html/genindex.html | 1566 +++++++---------- docs/html/history.html | 474 ++--- docs/html/index.html | 473 ++--- docs/html/installation.html | 500 +++--- docs/html/objects.inv | Bin 2806 -> 1575 bytes docs/html/py-modindex.html | 767 ++++---- docs/html/readme.html | 565 +++--- docs/html/search.html | 442 ++--- docs/html/searchindex.js | 2 +- docs/html/usage.html | 439 ++--- docs/index.rst | 2 +- docs/installation.rst | 9 - docs/readme.rst | 5 +- 113 files changed, 17019 insertions(+), 4350 deletions(-) create mode 100644 docs/code_of_conduct.rst create mode 100644 docs/html/.doctrees/autoapi/shasta/actor/index.doctree create mode 100644 docs/html/.doctrees/autoapi/shasta/base_experiment/index.doctree create mode 100644 docs/html/.doctrees/autoapi/shasta/core/index.doctree create mode 100644 docs/html/.doctrees/autoapi/shasta/index.doctree create mode 100644 docs/html/.doctrees/autoapi/shasta/map/index.doctree create mode 100644 docs/html/.doctrees/autoapi/shasta/preprocessing/bake_texture/index.doctree create mode 100644 docs/html/.doctrees/autoapi/shasta/preprocessing/index.doctree create mode 100644 docs/html/.doctrees/autoapi/shasta/preprocessing/preprocess/index.doctree create mode 100644 docs/html/.doctrees/autoapi/shasta/preprocessing/utils/index.doctree create mode 100644 docs/html/.doctrees/autoapi/shasta/primitives/formation/index.doctree create mode 100644 docs/html/.doctrees/autoapi/shasta/primitives/index.doctree create mode 100644 docs/html/.doctrees/autoapi/shasta/primitives/path_planning/index.doctree create mode 100644 docs/html/.doctrees/autoapi/shasta/utils/index.doctree create mode 100644 docs/html/.doctrees/autoapi/shasta/visualize/index.doctree create mode 100644 docs/html/.doctrees/autoapi/shasta/world/index.doctree create mode 100644 docs/html/.doctrees/code_of_conduct.doctree create mode 100644 docs/html/_modules/shasta/actor.html create mode 100644 docs/html/_modules/shasta/base_experiment.html create mode 100644 docs/html/_modules/shasta/core.html create mode 100644 docs/html/_modules/shasta/env.html create mode 100644 docs/html/_modules/shasta/map.html create mode 100644 docs/html/_modules/shasta/preprocessing/bake_texture.html create mode 100644 docs/html/_modules/shasta/preprocessing/preprocess.html create mode 100644 docs/html/_modules/shasta/preprocessing/utils.html create mode 100644 docs/html/_modules/shasta/primitives/formation.html create mode 100644 docs/html/_modules/shasta/primitives/path_planning.html create mode 100644 docs/html/_modules/shasta/utils.html create mode 100644 docs/html/_modules/shasta/visualize.html create mode 100644 docs/html/_modules/shasta/world.html create mode 100644 docs/html/_sources/autoapi/shasta/actor/index.rst.txt create mode 100644 docs/html/_sources/autoapi/shasta/base_experiment/index.rst.txt create mode 100644 docs/html/_sources/autoapi/shasta/core/index.rst.txt create mode 100644 docs/html/_sources/autoapi/shasta/index.rst.txt create mode 100644 docs/html/_sources/autoapi/shasta/map/index.rst.txt create mode 100644 docs/html/_sources/autoapi/shasta/preprocessing/bake_texture/index.rst.txt create mode 100644 docs/html/_sources/autoapi/shasta/preprocessing/index.rst.txt create mode 100644 docs/html/_sources/autoapi/shasta/preprocessing/preprocess/index.rst.txt create mode 100644 docs/html/_sources/autoapi/shasta/preprocessing/utils/index.rst.txt create mode 100644 docs/html/_sources/autoapi/shasta/primitives/formation/index.rst.txt create mode 100644 docs/html/_sources/autoapi/shasta/primitives/index.rst.txt create mode 100644 docs/html/_sources/autoapi/shasta/primitives/path_planning/index.rst.txt create mode 100644 docs/html/_sources/autoapi/shasta/utils/index.rst.txt create mode 100644 docs/html/_sources/autoapi/shasta/visualize/index.rst.txt create mode 100644 docs/html/_sources/autoapi/shasta/world/index.rst.txt create mode 100644 docs/html/_sources/code_of_conduct.rst.txt create mode 100644 docs/html/_static/debug.css create mode 100644 docs/html/_static/scripts/furo-extensions.js create mode 100644 docs/html/_static/scripts/furo.js create mode 100644 docs/html/_static/scripts/furo.js.LICENSE.txt create mode 100644 docs/html/_static/scripts/furo.js.map create mode 100644 docs/html/_static/skeleton.css create mode 100644 docs/html/_static/sphinx_highlight.js create mode 100644 docs/html/_static/styles/furo-extensions.css create mode 100644 docs/html/_static/styles/furo-extensions.css.map create mode 100644 docs/html/_static/styles/furo.css create mode 100644 docs/html/_static/styles/furo.css.map create mode 100644 docs/html/autoapi/shasta/actor/index.html create mode 100644 docs/html/autoapi/shasta/base_experiment/index.html create mode 100644 docs/html/autoapi/shasta/core/index.html create mode 100644 docs/html/autoapi/shasta/index.html create mode 100644 docs/html/autoapi/shasta/map/index.html create mode 100644 docs/html/autoapi/shasta/preprocessing/bake_texture/index.html create mode 100644 docs/html/autoapi/shasta/preprocessing/index.html create mode 100644 docs/html/autoapi/shasta/preprocessing/preprocess/index.html create mode 100644 docs/html/autoapi/shasta/preprocessing/utils/index.html create mode 100644 docs/html/autoapi/shasta/primitives/formation/index.html create mode 100644 docs/html/autoapi/shasta/primitives/index.html create mode 100644 docs/html/autoapi/shasta/primitives/path_planning/index.html create mode 100644 docs/html/autoapi/shasta/utils/index.html create mode 100644 docs/html/autoapi/shasta/visualize/index.html create mode 100644 docs/html/autoapi/shasta/world/index.html create mode 100644 docs/html/code_of_conduct.html diff --git a/.DS_Store b/.DS_Store index 5e11757966e578eb60b893173e7877b380fc5241..808661c22357978a40b8f21edbbf7e514212f4c0 100644 GIT binary patch delta 1129 zcmZn(XbG6$LAU^hRb)?^+5iFjt^LsuCX7+4te7}6Os8A@{VU0jlK@{@pK9J`+E zKG44Ns3WR;3SRkw48!2${M-Vd9tLLBgvreUj_kpTS-XMeO#Ub!Jo%mg4-#Lko{b@q zp%@5L8A=$6bJ7u-*@U-D1Db&%kL*pc=Z|X2oy7roqkM~RrR)*pE0dk~&%pVgbDL>^*bG+@}gOqP+6h3O?@ z`sCGeGVBN6zXj*Tb8@okP&OnB6$4W~C@YpQBq9d}(<_C^Lh_bOEYXvF<)zp)ncji5 d=gCXM*%Rbt85K4rim_~FSNO%Ud5b7BGXR`ODtQ0^ delta 1516 zcmaJ>Sx*yD6h0S9%gz)E*adAQpb3qkMS_^9P)L*zXa!Un)H-d4cEWV-WM*j$UXKER0S-VEcu?cGyE`P{5ZNm%`Tp$p&E*%Jf9oST^-|0|7{+ml zU;v%z(5^F`rj@HUacb#>_LZs9-ZQ1T|3-5eIaq>eP=N!5tU+zjTw4oy9)jPldv30A zcvp)z)MSd)c7u=RnxnZ4APg*dW5DT&0{AIk14Mw;zFF@WTRkr4p>}P?=1rtF2{BfP zW+OBD9-Z0*P@VqPo{lU^j$r22h{Lo#duu!C^<<2)bBhe9jlfO}%A$ZpnkJMv6q6W~ z(4-<|QuSIZuw5&$Ub^INX?Ho@?t_H-Zgf|BV%t-9Pmj?D0q4Z4$=RyDg07W$@4~{; z7Uh)pIL=buNw232qZc%%)nP9qsgy|~=}Mi@lq#gEM2KoXtTUFj7MHW7t@(<}Nr-yf zE@!K!O}lSvP2>Rb;fYL?C>fFjUQwHyKQIi+%QqAlO@&3pC8cHM6^yyE%4{)LS6A26 zR`0S}?Lnq0#D>SBG9DKrU0A@fR~Y9;qB0*Dl-MvYMu$~yN*&}cazQ3h`H$@Y7dfBZ z8k&}fktMs4@^@V3I5FkWH#(|t>Tr;$P{J}61V2`ImB(U0rwyD{VtBGg<>Ec!C=N1} z6FfKRlcrP+BIT2l3rK+!N!@?R3B}WAM?o6&*5i&sG<$mpx&0#8j*wA*H z%ssQcZeK>Gv(!j>B1Yx{9e1q$FeqQsPTAY@D(1CWyUi4S^Q&Q+z?bdzhKx+%1q7C! WmC9dWkmlGx(&YSUNcLOu^Zx+Pl#UVr diff --git a/docs/code_of_conduct.rst b/docs/code_of_conduct.rst new file mode 100644 index 0000000..63606e6 --- /dev/null +++ b/docs/code_of_conduct.rst @@ -0,0 +1,4 @@ +Code of Conduct +=============== +.. include:: ../CODE_OF_CONDUCT.md + :parser: myst_parser.sphinx_ diff --git a/docs/conf.py b/docs/conf.py index bfd540c..843af38 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -1,6 +1,6 @@ #!/usr/bin/env python # -# shasta documentation build configuration file, created by +# SHaSTA documentation build configuration file, created by # sphinx-quickstart on Fri Jun 9 13:47:02 2017. # # This file is execfile()d with the current directory set to its @@ -20,9 +20,8 @@ import os import sys -sys.path.insert(0, os.path.abspath('..')) +sys.path.insert(0, os.path.abspath("..")) -import shasta # noqa # -- General configuration --------------------------------------------- @@ -33,33 +32,34 @@ # 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.napoleon', - 'sphinx.ext.viewcode', - 'sphinx.ext.autodoc', - 'autoapi.extension', - 'sphinx.ext.inheritance_diagram', - 'sphinx.ext.githubpages', + "sphinx.ext.napoleon", + "sphinx.ext.viewcode", + "sphinx.ext.autodoc", + "autoapi.extension", + "sphinx.ext.inheritance_diagram", + "sphinx.ext.githubpages", "sphinx.ext.graphviz", + "myst_parser", ] # AutoAPI setting -autoapi_type = 'python' -autoapi_dirs = ['../shasta'] +autoapi_type = "python" +autoapi_dirs = ["../shasta"] # Add any paths that contain templates here, relative to this directory. -templates_path = ['_templates'] +templates_path = ["_templates"] # The suffix(es) of source filenames. # You can specify multiple suffix as a list of string: # -# source_suffix = ['.rst', '.md'] -source_suffix = '.rst' +source_suffix = [".rst", ".md"] +# source_suffix = ".rst" # The master toctree document. -master_doc = 'index' +master_doc = "index" # General information about the project. -project = 'shasta' +project = "SHaSTA" copyright = "2020, Hemanth Manjunatha" author = "Hemanth Manjunatha" @@ -68,9 +68,9 @@ # the built documents. # # The short X.Y version. -version = '0.1.0' +version = "0.1.0" # The full version, including alpha/beta/rc tags. -release = '0.1.0' +release = "0.1.0" # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. @@ -81,7 +81,7 @@ # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. # This patterns also effect to html_static_path and html_extra_path -exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store'] +exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"] # If true, the current module name will be prepended to all description # unit titles (such as .. function::). @@ -102,7 +102,7 @@ # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. # -html_theme = "sphinx_rtd_theme" +html_theme = "furo" # 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 @@ -114,12 +114,12 @@ # 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'] -html_style = 'css/custom.css' +# html_style = 'css/custom.css' # -- Options for HTMLHelp output --------------------------------------- # Output file base name for HTML help builder. -htmlhelp_basename = 'shastadoc' +htmlhelp_basename = "SHaSTAdoc" # -- Options for LaTeX output ------------------------------------------ @@ -142,14 +142,14 @@ # (source start file, target name, title, author, documentclass # [howto, manual, or own class]). latex_documents = [ - (master_doc, 'shasta.tex', 'shasta Documentation', 'Hemanth Manjunatha', 'manual'), + (master_doc, "SHaSTA.tex", "SHaSTA Documentation", "Hemanth Manjunatha", "manual"), ] # -- Options for manual page output ------------------------------------ # One entry per manual page. List of tuples # (source start file, name, description, authors, manual section). -man_pages = [(master_doc, 'shasta', 'shasta Documentation', [author], 1)] +man_pages = [(master_doc, "SHaSTA", "SHaSTA Documentation", [author], 1)] # -- Options for Texinfo output ---------------------------------------- @@ -159,12 +159,12 @@ texinfo_documents = [ ( master_doc, - 'shasta', - 'shasta Documentation', + "SHaSTA", + "SHaSTA Documentation", author, - 'shasta', - 'One line description of project.', - 'Miscellaneous', + "SHaSTA", + "One line description of project.", + "Miscellaneous", ), ] diff --git a/docs/contributing.rst b/docs/contributing.rst index e582053..66c365e 100644 --- a/docs/contributing.rst +++ b/docs/contributing.rst @@ -1 +1,4 @@ -.. include:: ../CONTRIBUTING.rst +Contributing +=========== +.. include:: ../CONTRIBUTING.md + :parser: myst_parser.sphinx_ diff --git a/docs/html/.buildinfo b/docs/html/.buildinfo index 3646b93..7d46604 100644 --- a/docs/html/.buildinfo +++ b/docs/html/.buildinfo @@ -1,4 +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: 0f3f600e895ccc60e1d591663fb015d5 +config: 9679b8f1632111510dea9e63e8ea6a5a tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/docs/html/.doctrees/autoapi/index.doctree b/docs/html/.doctrees/autoapi/index.doctree index 355b5c0e4bc6d6dbdb2bf37ba0ec51aca5dd7250..7b582f8eb04e3ea65572caf078f3e879d55a0554 100644 GIT binary patch delta 1211 zcmah}&1(}u6lb&fpl#B$P--RpidAcElc-qg7fPw1BsHxdC_)U=WRkaSvb)`#)%H+Z zMN0~Mu*?Wml>P;ZP$>i~UVAANym|KQ(VO5*zFUhP_Av9_`~80J_ugzFSm<}HxL*JE zue)}R*=`*fSS1YF?WSZ}OIdkwTK_ih=>{2kY?a2OdveH{p_|fish1X|&)xt;pcIWm zFa6@U5e~rR+C|)&LD09v&Ok81Y*|U4X9xxo3{LTHkbgsTK)&c1hB4qc^pV_itr3rx z<68N_x&*Ue7(&nkBhVXj@^UY9(;fNx{VLtze4a9Cdw4^Jf=!lSak~RqL_@j~F#(wb zMHDrS7uYI8wpUS8IV+7bO0JX(vxxq1&fXn{M1|4K;T|@2C+KWH(Ne^~IP}Cox{eLr zZLQO?;s<4=!cL)_Zn`$20a!iSvBNEhmS1pymBw@k4?SbTVi!E8FWr5<0ML4z7TrtZ z0eDxxIV`$Sq3u*r9y7bu)Im`fLKTA;o%dYjQ+ms}Dc$l+EmuwcE3-D4x`2R~HbXn^z(c9qVRT zUnHQZVa>?W@7`O%)74-a5kw4>n!`p|!6YLxBK&F7OTIDs#`nI{r{qzVQ)noys99z^ zIpZ9oqpjhNb`z(FqNzy}=Q5m~->=b`)>l*eum`&kg(7TQc9U2cvZ(WiBDQdU4R#Aq zELac}$35=u1pgyM`Oxbl!Ab6~D489lM?vw`5OPf*h$7@`|d}thZIxQz=zbv6@QN6hozAk;|1q zS;fxbl#<4(uGJDZR|qETva0+0A#G+4jz~b&(m9*csX6D&Fa>$gVHzy35vk8Bvl(Py zV8eg-Lwsq)pi$55Pz3Ikl@VUtt@Q%B>5AuAXVnHr$UBaJA^<{Ay6Jh5aEx58y35_z zv-F_4!i^z^rL*DRVKk96Db&F!UYvWSlIoF{*>njWYTCEplY+x zvO=Qt_Fo-|M^o~M!8^L*9pFJ)b-27^UMB(chObpFB~E-5OPS+Q^qMGZn<|4(;>e$g zpZ_C125FRGBa-0w-_SL2@Zvu3a5dt@l@)<6H-#ak2-i9L2#kuZPs`>A1|C~**Rqfx zpSWoCRC{AnDuinbWqLvB=TvS-`_e?X4oKHtGkHPAm~Kw+gwMncWLR`CaILMQ0>ZkUvtla3 zSplM}fj;`ZAwquyUee`Ylx_x>#&%#EwqO`GVBIE%goAj_;Mo=_*-60G0&FbU5Ej4N zT$>^2=io(Hhc7k>W_2BFIz}ljg4i;7iN0@)NsDy1@tf2{Umw1D)Sp3V-BiTfv4kUS F>@U;s%wGTi diff --git a/docs/html/.doctrees/autoapi/shasta/actor/index.doctree b/docs/html/.doctrees/autoapi/shasta/actor/index.doctree new file mode 100644 index 0000000000000000000000000000000000000000..d4a96d998fa276875bd8b9ff2dffb96dcad308b8 GIT binary patch literal 26199 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 NyR?CXG}`mi{|_*gy72%2 literal 0 HcmV?d00001 diff --git a/docs/html/.doctrees/autoapi/shasta/base_experiment/index.doctree b/docs/html/.doctrees/autoapi/shasta/base_experiment/index.doctree new file mode 100644 index 0000000000000000000000000000000000000000..a62ef8213808d2a9e78a1bfc6c62839f9600d5e3 GIT binary patch literal 24138 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 aa=dyoZje>15wcA-2+k$)QG5~C7XA;``*{HX literal 0 HcmV?d00001 diff --git a/docs/html/.doctrees/autoapi/shasta/core/index.doctree b/docs/html/.doctrees/autoapi/shasta/core/index.doctree new file mode 100644 index 0000000000000000000000000000000000000000..9f448a52d9dd366d1a7b5cf2432d3097c6f9fbfc GIT binary patch literal 32412 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 literal 0 HcmV?d00001 diff --git a/docs/html/.doctrees/autoapi/shasta/index.doctree b/docs/html/.doctrees/autoapi/shasta/index.doctree new file mode 100644 index 0000000000000000000000000000000000000000..78b7e2b7b172dbb13a3043a01c8b889fc82dd1a4 GIT binary patch literal 4235 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 OLkRP>nA7wZ=l(zZ*@Z^{ literal 0 HcmV?d00001 diff --git a/docs/html/.doctrees/autoapi/shasta/preprocessing/bake_texture/index.doctree b/docs/html/.doctrees/autoapi/shasta/preprocessing/bake_texture/index.doctree new file mode 100644 index 0000000000000000000000000000000000000000..4099596233fe1a20d9888bf04719c066798dce98 GIT binary patch literal 12289 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 K6FR$%C%*wu!^!dh literal 0 HcmV?d00001 diff --git a/docs/html/.doctrees/autoapi/shasta/preprocessing/preprocess/index.doctree b/docs/html/.doctrees/autoapi/shasta/preprocessing/preprocess/index.doctree new file mode 100644 index 0000000000000000000000000000000000000000..f24a3d5e75add4161dfbbb621605b5fd34c92cc8 GIT binary patch literal 14258 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 literal 0 HcmV?d00001 diff --git a/docs/html/.doctrees/autoapi/shasta/preprocessing/utils/index.doctree b/docs/html/.doctrees/autoapi/shasta/preprocessing/utils/index.doctree new file mode 100644 index 0000000000000000000000000000000000000000..bf5babef2a9bbf15c4bc7e487010613931ddab41 GIT binary patch literal 12290 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 QO*Y6R3+qKbLbSZ_f2Ev&k^lez literal 0 HcmV?d00001 diff --git a/docs/html/.doctrees/autoapi/shasta/primitives/index.doctree b/docs/html/.doctrees/autoapi/shasta/primitives/index.doctree new file mode 100644 index 0000000000000000000000000000000000000000..d9f0c7c19856a2b852aa6204120c937f32977a51 GIT binary patch literal 39594 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 literal 0 HcmV?d00001 diff --git a/docs/html/.doctrees/autoapi/shasta/primitives/path_planning/index.doctree b/docs/html/.doctrees/autoapi/shasta/primitives/path_planning/index.doctree new file mode 100644 index 0000000000000000000000000000000000000000..a27490b99c5abc1be42624500789dc749d46ec8f GIT binary patch literal 21388 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⪚^?!B zwSQGqeV$jfU&Np6TC3SFDP?R_+7>a}CGRPsE)2waQpcIpDA95D=an&~AW!$zZ$AaY zid$4`7J?Lfv3J`p)_O}W_87V?)J)-iauB$&`=7Blwm@J>3Yy;)CdH&6g~k`0lmeNu zbZRdSGPT(3c!3&iktC`bO?*m{a0P1h^IL}JGDJ?S%}b@uZ*iKGi#x0&PUc_lUoT#9 zgtIG5=8+N-FR7G6-cYBs#ty&d7yyOP=!F^-U9>i#! z@jTZf%kdGMN>~mZezwimEMG&EMI%3ttf(!c-aGHs@M~HtCNy}m4-&IhBItspGJ2U^ zRWNRht-^09>i%;e)JfI-@0`ZvY_oNiWxI@ZoHA3q-}VpCc`3twpN~v-YTj(4FB!W* zV<#^Q?_D@XoO1+?s#N#ZImezrR~g1RhJsSYxseZC z#5nXN$2jlaK892LE7k|$6_ol(SUgh{>z1dB+j@;>Uon?z?< zH`yNfD9%c4vT4VaaVTFF5i6f12q_vYgC21t=`un9Z-?ig0 zeg!t1vG(ACfkV z`iF|47cw#HH6P|x`IoHcT=_tvL{v*>^SK0sfj$1efu>c0G3yMM(d^IiMp@W*fjR|{ zC&hr9Kc`TCW&2RSe5IhCNZCmeBokp7i$C*^m_k~R&f|OApU1cPJmAXPpPXfIyA+4a z#PHeB9r5^hN(cUa<-lyn?LEWrFVtklmgC~=spU|3O!dnR9Zv>3t_=3S)q~+M#;}gH4iY|E<}JnG_6BI?!Bf918KiH3=AHLI=}?@V z^bYJr;S%IB4RMneiFqxglW(GeI3g_fVB2b&u9y>;zG`!2#lFgMV9w;2!OfW6aoG~H ziwd@9eZ4noP(sc{ElNSWcMuTcJ>?l{bY=IH_XvVy;t)-&UcR_ID&@b666ox zAcFB@@T9Ea4f1)^OiESNog3>fiH06+)*J`}(!j5yQGr*NidBN=gA`e>uIfuE@SUvZ zI;-TKI3y8rz{;ztJC8v_67NUfr8|!VBN@+b4?+sIv;}qEbxPX~@l&?W_gOBs#mbwp zAM1lSQXg_x^0T~Z^BeUgV*>0u2}qXr78|89Mc*b znzYL_Vbx^=Yl=B5g>jL6`#+eT%8BJ1p>Xwoah&vUH5IFURdaPklx_b=wxepGBu7u7 zQPpPWaya@b^j*r)0vlOnv-4PT#+)8g2Ati_)Fi%h5rFK7V=*Vi27X$Qj=s2^(QkVb z5qq*fV!>t^QPIO?1)`#$&SL6*8+dW02+VifUw-^xQ29~WW$b@@bPK&o{~MW)c}G{y z7>=Wrck!xMBwG1_fjCV@PoAVkRhF)DLg7J@g>`voiyx#BM_r-cY3Ct7K!A2P#JQa^ z8)w6(13M%l>5$S$?{S;yqeqpojvkE{*rZabtne2Gnt4REXY60eH3HM0=D~yRjUihYkx?Mw#aMh z)*&Z^L8zY7O|Nemp3Bfl@vx<8=`~K1N?dR zLXr@U+3Z*~VYC*y^6e+!&EVhdC+TT;6hBWTPrrz#P5T4<_i6eiMt>9h^KUcO>4=n3 z?wvm|kau2ociF!A@dPfpzkgUclFQze-rLg~5SDr~806~SSlmdFm^T3bs@-Tmt`1mo zTkob^qb#G_7P{y;2rsYe(Rg`&Q8i-LAt|rxy)_w+M*{AEuPAd9VKhO%h)g8!shnC& zx+wDG4-}UufF^U-U?<#oTxgah0?5u$`cDgb{So?4uYL#`F3!a;AEUF_dzwPp<2^kH zEN{nq`aZNPIryH?GWMNjUA^ggAxWWJL%Rc-{TfO1LeFW{)pJ`0E#nTPqyyvSB%RDO zP!zNjl5Uk|#wFbvJ#k6Lp9Yb1*+JFiLX(!T#&_-{thm#fZB`So%KN+7>j+#Ze=q^{ z*#uPn)CW{t$(9k*big#n5oZSiSuK)Ti2%Jhfjix5eix)zQM#FyscYh>E#e2g0Y3a%n|e!b9*2FD<&A5$K&RUM9sbI9Kmn!0Uv34ZSwr_R{T7$~Z+|ac=2V zc3|0c1Dtg-l;Q`5*j`HW<%FI3I?g?HB9u%)J6T;M$m!6@DIc9(CrXgXg_qRnoMWBe zB}d2#W61_Gd(RTv;~6}%)izd*HZl*e2~$TDOui1Y{l>ZlEa7r{=%=N_Eu#^xpuZ_f zLj^3+5q?AOpk$o%r9sn)F0v_p?7wa}xaW&nIIt83%X7ES@msTpvmfgQ9s8=|%uTCp zAn_7yQ!HGlWz%jL;PQad%P{XHV%O)s~!l1%K@>xfFDrB%^m7+nwJ2(j!)!Ii@LrMw%j_>IiS`) zqzQ9<+=irc?6M{2k|si%7GfHlIj8F_%cp!kn23aOG+qkk{cH~=a7KmPa<($@(LE+PwNSsgG?1B_#b)Zq6haKVN+eBOE)(S ztimQo7;?;Y!S8^bmIZr@83bK_abW?)NK3bYJDkqE>#ZzA>>$Z@HQ4o=Vd0Z;HFeGS!J?FBsmuWdzH73@rEsGw8H2*fU}Z z)5MjaCden&8?ek#h}svBWoeVA|KmCRq#W1;_qa{VSq2Zpg5dy(3O{V*>hY9L7)%$d zk&@_Lh`=+r{m{Y^-T(-uVNi;>gH6=BP)8m(t6j$xGUNxLqofzvewk|!%-UWS0&SB{ zMyygYJ~k%A3Dz%I5n)mbiz7f@D#}C08D~F$0&4}hHvzVRbC+`Vu>+Y>x+BGl(c5zJ zLaFsAvmdIDQlWUpA#>8ApQN7`=;spse3X7Zf}fC$Q(Zc?#FGQ^+MB%QCa;B^&pVLJ zk9U9+a_7lEBGcxjSsvtZm^Buim@EZKMOhT7%&5w;OQW;Qrj zrq7cI*pwl`z83LVo31(96cx8AYHpK-XOjgOvb`#|@#*hH7C^oz_VH+ z>S5V}J39?zQ_EDnI#-y~9?w)8k4NSGAIS92W38l+4(9ukUv{twh`gp7l2}4MC*-+l zgEPPb(66JXW%(r#_u1$imM@YaKoEcpd`Md{U?TZ4#gj=f=ebGCX|}@_1dh8xa%!SQ O!dc2OvKGR|{Qm(HZfvCh literal 0 HcmV?d00001 diff --git a/docs/html/.doctrees/autoapi/shasta/utils/index.doctree b/docs/html/.doctrees/autoapi/shasta/utils/index.doctree new file mode 100644 index 0000000000000000000000000000000000000000..764d1d00dae5efd56cc243db6be1afc63704b811 GIT binary patch literal 10795 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 literal 0 HcmV?d00001 diff --git a/docs/html/.doctrees/autoapi/shasta/visualize/index.doctree b/docs/html/.doctrees/autoapi/shasta/visualize/index.doctree new file mode 100644 index 0000000000000000000000000000000000000000..af9d26b04b57dc84f383fcd371f7f19b42642aaa GIT binary patch literal 7843 zcmd5>Z-^vE72mtvnc11!zxOXO|L8B5nMWtNpGfY*^I0k zagandOXUn8Z0>qa#QgNtR4x&?aJ_gV+uw+pE!@B_w(}aV^Tw-bn>S@mxWZ$VC3)Xw zxW73JoXzc+Td}Y6@u$uO3=pMx^`!*)$98`K+vGOmE3K&-Gclm2@rHvV@4-ZXzHo63(pa z#3YD@?OAb*NpLFX6shufxSz^;xW5htQzmP^HB=Z)mxW2>oQmBw1hnDN7 z{DN#?B=$q7bCxKRCopDvq37DJNDtKV4J-2Tv#GU{KxtcY9s|WCeiK4rMSUg?6K%pT z@-zIr{Bq~Tm_>1iv!Ue+-ubK_@B4N>96r@edOgbvHkgxio(Y1!$BfTJ?k?+Gd-{c^ zKYi`evz-@|RT!~Ioc)Zu^`zSY*Kub$(;HC?owlzYgBVw*iIIq12G9b3n9uU_{0cT5 zPr9(YnwDPf2)QL6t&j%nC~|Wn2rV~C<-HIw^q0Tp?U*4LbZmn+x5`1+$aUw`ao z{+$xPUxj$GM2sb}3}ziE%gIC>NjHzHVI4)Np-GNxRL@=Df3tZrA?I@!tmx$Zs!rIEL5wu;Yox8e zXSwdZX__G5ccHF#aOy7$+t5++H~CoJJ3R~-Qviy*mtjom32j?^Xf7{xU5fm|!&PkYU1 zyS}08k%>xWEuHRUqvc9QWLB=s$T{3ACX;d-_0OmrPA4T*$o@DNh+7~pQh#8JcueHyOU2; zZ!jM-wdKbX7pPR$aMN*}bnr4rt0Xeg{5Qs_)e1^|EV{Shq6o7}Ws8gpsScOq z(L^finuL^pC~Nwb#p`mumw291u|B_LioiBuAynLdsOG+g+nt)#Cc98^oHYs@gXf4! zeXThSJH0|f+;o(EE+{*K71DiSLU?WdU(N|X$IkORAf) z)pMEWm}A~ll%h4Ydm9_#Y(H%?Z2uzDQ2LX_35it&(~ zwaheB17TZh{F2&4p|dh>_8C8M%5hPK)kL(8W`+veN(oou~m zI6{Ist&<&BEAL$9B+u%gkhk2XxMSXn^kXr6Bkln9m zn8(zNdBYXl%zMi?E8CDYo44db#KIsFrpI=fhf9iVamy=)HMz?6Tu4cv!j5yGnyfjj zoAhzq5;c0MxemO{8e*m?BHTWRo%EJma{Vw7Ci78l0Scu?B6{l=*Hta^!04jMq9}+= zZuySK(D49&viAXqiw!rCI=!u4@WE~^v2PT5({6T6fsk$X$V7kqclZhVkoa09KQMnN&Hb=ZdrR3y0u-NfiS$ zOxPT#`~+TmiXlvNmHY{ogG()k{SWa(@Z8FIxfHU{gisi~&{hJ&J530C2kqn*@?I`P z7;knun2tBXeZd2NBZ&H)RGuM7MF1d8fsF6L*XY8_!u4|(9)~=aqMkj5o@Pq)59jFN zrWTp(4vRKiCVJ`&IDChTp@+koxQoM!R4Z{_J_wr}nuU8744`vN7IJ`yw(kpT&*W~O zd-#X_&e4rNl?yRCuflvSfnUcE)G0OAL(>avD--R5Hb*sSL-E?*AY~;&?A}3x^gz9t zsfVyE4jjOG0^9X_uz@@nFANz2ML_vP3AzJ zu>rMX;^D>hOg!(Ql|Zjkx8!Q}KnG*>dODyT$XVv^()*U2*Wm>I3sXcsbKx8U4P<)h zQHHY$qF`DAkA5&4hn}r&rt;*-ES1-48rXWpfL^QUu?*l1n$*ABgD#wWVA97c^zkx% zT%(WY@sY?T!BU=8?`;bDKtUcTsDp$*g7-0n08cpEsuistri##>y+D>NwCy6J<{1fZ zJu$LmdW$mi?{IKdGRz^dstlNP6=l4u$l|fO+Nn!_A{VRnq!?VpOPX>%vSB?#VIzmr zlB~{XIK1h>{)Sz=WQ>5G9-Aznn8+c-9yXBpp8q}{B5Z3&GZ@^6qiuAIusqlB=vzsY#W(AQA{hVI^p`ZmpEj_eY|+e OmP6q;i&Xkzy73=xoOwt9 literal 0 HcmV?d00001 diff --git a/docs/html/.doctrees/autoapi/shasta/world/index.doctree b/docs/html/.doctrees/autoapi/shasta/world/index.doctree new file mode 100644 index 0000000000000000000000000000000000000000..a9c01da86861014b42876f8f23af038d790bf22d GIT binary patch literal 21191 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 HW$}Lj@-nMV literal 0 HcmV?d00001 diff --git a/docs/html/.doctrees/code_of_conduct.doctree b/docs/html/.doctrees/code_of_conduct.doctree new file mode 100644 index 0000000000000000000000000000000000000000..7a4b4bfba973a177566d61a15364d73c468b23bf GIT binary patch literal 548085 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ℜ8CQX@y@-F?uZnh?=QNF9pptWyE$G z;F0n};&pV^N;AmJl3Gg>moD6-_T{Wp5bs$vhH$fG#v>w7_)l8DcN_a>};l{OAgAjez&QT9J4PK zSv5iqo!zL)B=iT@7LESkJ1;>}y_#`BMj9sd%Zn!U&Ly4d)^jM>S?_k|x^wl9z2L0=hZ9Bi(c8!$nc&%5*8SVAxx?BINUT~?e zqWR3BeKRt;^}msd^?$&hH+^R2D*1-jUS4jYiwI-XpP>&w zW7N;M;ZOmPkT~o>JWMS1Zbb&2spww68V0~Tp87Fu-`}J`%SMX zz&aj^qb6^!8i08-=cs!gtm`pzDH29K&Qy=NI32^;K6rj;kL8 zj|=$P1N4R-8uQ`=Dry9xL)0B=bL2(>96~|`;(Q86h#JmXfGJP?KtwF);$j!NMyRuM zAr7!nMC+T;dB$>7FGmFoWJi4gRo$yNUeO%cLXhsia|=I@CaJ{ zC@2?b+O-?gw6$gI97n1^31m%hSBNt_zJO4{>H_z_h^6U>o!q6u3=GT<8x^ms1K(k| zGJ@xL zu^!3^58bV&bhoaX;Gt_zPOQjFEyBF!g0OtK211`eFW_4XEK%Ltz+TgfJtWL9&N~Iy zs=*P<4NmS*A09RxNP!}WO_?S3I!0he>EN5L;+Eemya!*irT3&k{2Ew)8!<%-P4#l> zx0p1u_P}vOw}jCXjH_vM2B8spV8!n*!72-~DVG6~C3r5hdl0aL7B;FmiXH~nG? zrW>M{nf@($`j1!)+ql|S0uI;9SsN>%KfnGL1;FLJ=GdsJfdeXs2>i3 zfFOmgU|HRZDstyUBOD;rp>RjqazIM)aW8LhUI6N_0#ugcwjyZ9(gV2-To~upWbOeF=tVA{XP_A*VsD0*5-@VWFjr z#U1R`qmJK}f_9QRW|k1-*l^r#LDLQNMJsRD3;M>bEvTusg#~@=M603#oZx)N(Bsti zA+|UTPCL1J7YUx@V7P(vBj_u(M-_(~P!HJNNfwCg0Nny%Q;6N6Plk5sj_*YK-kQB< z(>2R1u_rx3w@B$4eJ#?9^dh}$Yl~#6xkc*T+uC(=h^!fO*6a7Z3F;{**kNRmN- zsz77YT0s04d9!$tN+hj~vYHkY0#AWj6Ap(o`31AJvdIp&>fm|p+mmOozHmCH;rTpW zeG}bXT}ybT+7{q>*K~IdZqx)J!c<*`!GNcSGs4Kmh1_iKy0Y2ct7rS7tsCUtDICE<8ovN#0HFZUM;qAXRq6uyyhI1iVPfuHL*@$o z(eZ8vRmnBc723T&k?QxeU;CCV_v~%|`%;ijZvV^@`?oN5x2)-=`XUO0dRY%{ZCOpV zEiCJkXSkLWsCgR#*`tQl!yOj<_Fzy$Me7`Vrs2XzksGQv1p5H>fa(>I$nnSna2{Ho z@&LZhDSqz`Wi&u+SenI&$?9Hm>Vbfvx)>!o_J&TMV5Of|Pyy?d*F z3S>SheHa$txVLLSv^h=z#4DDR0!V9HtODoMrV`Ar0uKETH2`iN85!1YdiRqAdOO&76c*2Cg^CZ5^_V2TXOfCS=XO?t?HhkR`CO z%5n`-Hjhs^eNgy8l^Gqtm8u>Aq; z@>kLAjWj6T#@;}+H@xxoxOhEoAk!EEECfzMfNzW26OmYhNnK@2co_AT4X^5I@N2}V z+kre>#*?O!7ny>~7cVud(AzK9F4d$oegQ-8(!-5SD`g;fiMqe122AO1u~7$j*2N{? z0$h%i;sS?Y2K3~);+SGksukIP>=E~$3}d5NRU{{2nz>RfiExHhIPUV|F#=zMC%?C` z+@_h@S&(>0@nf6rnamQCI||h8k7s(Pmu34yx^tt2b^9m{-oExxA+?WOwK|!k*V7r)b(6Qr ze|JhpZBR#Lt@xNE#SSz#8>BGG$D~xl*BL@yFFE8V11<;$7&S;}NhxFnBeg{o@xG*rT2r}YeiAS~wLO7hmnHjf; z=$hJc< z_15Y(S~Z1bc1mP>)j^NSZxJZ9oe;TeUTCH_Af*Si|6Wugt3hAVRlCNfa4y3teet@7OnSigbW3@EV}apqpzrQxnR%o5qO4hi{I zMFgXf7Q#wUwImptJ}5hbri=sbcE;&p=9^MbO=4zd32K8O$M4)s-8!fHbBMVCIXRhH z>W$3EXWjxyb*vda|hzFIDAQeY`wc%7T#&!nbU4-Yz{vbCF%gEgEpo#7h& zNUG5d;Z|Qjk1*9btwCqTB)spzD}{}R?WRF#UszQV+cQgyZVkF_{^{2G!eul6Ua0eF zqK@5r#F}w)n+CNVm>!hP#yLcp167iA4mSAmRw${KDAQ@_kFZyeJ&7wYhwhTmsyEym zrJ@9ilP53x%F1M#WtL$!h*|>{DVN2>#n;twgi1xAOq=jvqDb9f-=LLvUZt9em7hx? zP#i0Fd2lcY8T-wx#h<2{>I)aoXk0WS5nOzDdl2_9(lpx}BQr}pvQule{h>U(%~f|R zl%8o{yTz=K+bynI{YPVx3>}eDl8hnLPDt2@a}2=m>T&INrP+r6lbg+*-@WzY?m3NY zcj&rFdF9pFJY(FGC2-l)>Mr2+9`8Lj7jRHDaxT?dhzJbL-~c6H6-zdA(+#Ia9^Z6n zimw5Y&T!y3m}<1I?RP;##EeO{-yv>4N0j=QvWMoTrQSO(v&1eRXl`2RvJUw+kXFpJ zdMxzCuY+BK*Yxmu$F18CR6#Syp(;#3!M)TUxs zqWgt@_HwHx?}K@r(L&PG6DzecmAQ~-3$81vEFBKDg@oySv6^|d1| z>K$Q5VuYh{%kgEAQ^I*Rc6b}ZG}wD%WR^JXE!(#7Yx~1FwPP5%{jr?cVI1H7h>q>R zF4_JlZcOYmw<>h+P=`iZh`uMeJ6hlk{*z20;&v&6ld z1Jq49-GW2l4a5jD=LcbK8JMALZul2))B9 zdN*vu^`~0q2uMz=t!@3jwjrDh=(>FfC(yH%soevj<3UdfJh&!@yS~UMg@Jx#h6MQ{ zN+H<*z)G2u#9-`ftR!QR^;vxJz$C|jSHAbMr^ zv;Fa$*GlQ{?n7L~8pNuha1`$ayalt$ue`Bsb zlJguMNc_u9oXm^~kg}v%z|${c&~M#=<%K~+G=W19Z3kITp0icHKdye1d4_s<3W{;! zctt|P;Z&o2k;#T$9Wy2&llL9TZ5jODrZa8zrjVH>9@(h{-2PB-rrSXjaQi1cZ@0xa z5Od5T_1Z#DW~fSHJUT7oXk~O#{D6@+H5!&FW#aFXDO8K&?-rPQIn`8OSi7XL){I23 z_LZWPwj?c6wCg!-4`)oHz0o(b#El8Sxm8aW?`ze~Bwwsy)P+{d1W~L1RE!@moK%V* z7{crLfmff`)$WFyVX9K~_2sd>;if9NP9?LPDC<0H3R|j^Vab5%9BTdjD7TRYdDpmp za07CXIXT9DbCCPCt)Yh;8Y7JxZ?s^GdssY|Y0F5dxLRJK&QBi9;9}0;a>d4IJEnuL z&CY}fx4Z<(k4U@>_CjgyFk;U_j|YoQ@r=!~g_0*mT5ZH^Q$gGct@gqJUH`!00|#Ls zRSin5`4aS0bYm)noyEq(cK@vn_dRS6mEWF%U))0ImaG|?HObC&i}TJ@*uc79RMmD^_9arjR3GvQ6Kz%0lPwdPjv zqg!6V9U6jX=as$0zMWTk0UaINfN7eBd(nZfKW6WQ({?S(a1w+bAX?(f;EXphGue6y z9#iEZz6cZx(m3E-K{jBp9kgfjX5ANRov^D6AQx2w2OwCGYIIhI-R2(M(pWqc{oT|G z#u0F2E5kMluC+ULEqJM>rt5Y7N2$(}doQ!Z-Za2AY_#`kC#cFs!1k%is-`Lic#5j{ zC}(mU&FDP{&kx=-+zaJ?;RIDg%?Q{f5uPY!fqRGn0N4mv(42B81~*Dz8G{unAEy)J zuZG!v+SoRWmL8ZdzxH7$YY|~EQnps;1DJgUtO{Y0Y#Sb1dUWTe%$$4m7sNy})CLYyTA-{k%Cf%*{Ap|Gju5@~btznmG%;-m}TF?kF@58G5!MG<_5? zV7-Ex4!--h4Bsp0ZZkl~Y>v$mY>_aS6?BBb(G!uEohZ(juqjbo%d|!m@7AApEyFd} zuT_7Zk3Wdve7*X!OZ~Y){n@Sl>`{Mi#-HNV^;`Jos`{~(pfyGrkP#8733lSnh z19`U)k@jkZ`ex!1nYK=6@j4x->+}t)(}23pLr$IG^#IF|x(=`m*P8;YY5#>7={5cV zYi&0PupeaEwxqH|=cD5IAo6|PQ& zPfdldn+m^bDtvk>{A!H-Yo@}l4Zkk@`e(v_i|$@OdDBq%4O8JahHnU;37-wWX)65Y za4mde@de?xJR5#%_-*00KNJ4D@H@iwXTvu=8-6FMy!qMi--mAr|HHH4Tb~KP>)G&a zQ&9eW9`^l-u;V()wjVRwhRUwDKm_Uyd_+3(vi$OF#IVWod-%fWUwl8*pTL017RiA+ Gh5rkD<&=y7 literal 0 HcmV?d00001 diff --git a/docs/html/.doctrees/contributing.doctree b/docs/html/.doctrees/contributing.doctree index 773e5c7be2f990f2a4aed8a6b966248f41962007..3107632c0049fa6d6dd68bee48944a08a9a7ff25 100644 GIT binary patch literal 570290 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 literal 19522 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%0DF%Ih5F!^zKHm!onPwhL!4jg$rtaJUN3a<`jQd z4mAFrtvR?5HRKXAkIfKzA?j~%H<-G*X8Qz=H{EU=iNMvUQCHl=UXse^7ul-N0~BtF zi_(W-g!M7v_;eW1-_qQYo|2@S#F7`jS+044k|q)gHIdwcHIBC)5pxMHd~O?C^2R zbjqE>=iL9rU2Bbq;UFqgB}suj8iae1{hRPyof@kPDe84jDBk_G(lT z59sk7G=}?dHR>sJsw&R6)>os_braF|q5ct}SH?*Eha-E_#Ihmj4D$^Zmbvm4s)l9U zYv|3=G7;jQXgocw_`ptR-G4byYe_f{Z`o&sUr9M_t7L{xf^s7?K zkSNBGp$n85GA#9zVX9wb=z=@Ug{4mH#v9*K+eF9TB z=0esGgT>Lr#Ck7($GwrfZbE$V7AF~KABU6;+w_`tK5eJCOVuKC-_};ocZ>Vq1jI!N zp)R=JI5w{jR_w7l>F&=w?!F1@RD!GBoeJHgQ^i9HtQ`I3&6pwWpHQpw(#t!wI-fvR z=fPsBl)(;xOg&#agpJDSts^6Q@Qrs3++|Qqp*uk9^C!#|Nn}lo_4%);ETQ%3?5FP1m0aTvU&nQZC-^iPz?2j;CK`1jP0w(l zqD;@n7_(w^JKYIm34Th968wGz7kB-$#D_6^MmC~iul4x@1|tc91J>u?iJo+9eV)4~ zfv9BDvZE3f0?(p;CiBta0#F8lA12Cp5qLUUN*0=pKwuYiHFo3Qc1uQMHwwX=1d3?8 z@#C@JbZR&Ld2B5S?Zyz3!_mYX+&+N|{W6Ny-WAI!5z9?^q#3T{iWhESvEHy==?FFT zs`ERz)&?O}N-KCBS5QeM(P2}`M`te!>n4KDd92+tfF=J9fWBYS)gFX?FOpjCzw?#n z3-m>=1>nS1)lw{(d$>Yi)|N&*mc9hIDrT}kPE1s69fP2K;XWgv=u zHnMr#9{)vIm)>>NxsCjh#*Wk$?%bB0+frBM^7Y9~y*Mqd7uk{0SyEee?!3pS4z}PH zb2;0{{glO(HvcC+2IdPfl|@;%366mwSR*+*bW{dHSmuhXj|X8jOuFZ6$SMDJJMUbC zC3Ut&uno;Y5%}mu#kTK~U&Ufce;bB0EHv#qu5(C~RT%>3!1&Xd1=U9jO}|c# zrX;7o{4=vn1im|C8?(#qpSZHX;`L3DBU<4n9YD}>ZyA+M_@Z`_g{(E3yz0~*uu*+X zuqAN?st51CVAzU0y7PC~0OGd=)#fgsdKucthT>lu6)rLe8$v>LrSHbt`6(Y%zEknG zcL7xbc_g9opJTg-0*0oJa{dVGp0^Y}N=`cA8g_ zbu@xP&6^k*DsN+2Vzq=W_u*i|W#XKTRAaX4vlOiqtH+xyIC}1}Ihybcs@M))COdcD zHh9~(fovRG9lNYg9rL<@?t<#9Z>g!+Wg;*hbPR>f{u`W}e$3fI3y1Vd0Iy|b+`x+g zbXSpW*4FGvZtu1Vb4(zSE?JyV^1C@Aep9zlm}3I%5n^*@zznt)#W^9HT^$qqx227r zN1?YOYEL`Yp;zt@?sX_c?s`JxpK^)Fe}UdO^3QKcBL8fRSR1kiWM!r4jM~mjtgR6y zRP(NB z5kk*4HdRP>qHU@pKz|=>sy7f7BW$WLj#CEJ=GdObTT^4gn!3+ophVWxDL3WYno<#Y ztReGG3xtk_Oj0}Q64BYWTP?-dQRxKN_YBJe%WOfRzgk`Wv;{!VT{Q;OUr@!p7*Lz` zQZqV}}23Ak-xu#Gt#(vN6!`ZnOb59ajKiF^^} zw8dk}j@}sFw|E2ka$!?G$>Nn513GZh?dE;FTPiE3p;B~zK&pnBrpio;=27jz(Kfd= zV4iP5WsBwrH#AP>ht2O?Df)lRYN;#LXav8FOuyjAz>5<6BG}e8+VWZgme*Onj^0@C z^IKPf-^hf)t+Tv9Olz3~%c3;EmIw{tFF$BCaIU|>w1GV%RfO)Ll4Q+MqSp+QW+|BgHI+x#0 zTAjO@qQ-|SwGtm2Z-%5(Rndz^c=JR?P&BQmHoQ~N(xp>KuOeEkU`C1Ji`K@=dPNl^wX*0UZT>g_k*x3 zwhBw|!75Bm$ zI@B)@9_eDn;$wa4+#JtXe3%Iz<;S&K)XU3+KG1CyhJ%TKec|AMPHVrK$IMvR!qb*r zT~ut0Xj@VFIThwiMD1zki$F~K84JoKjOc%%H#VaAtt%s18wdkhCUhog`I&4rDpqw? zM65~{8>I2f<_UwQltXZd^{|4&ny1xYEv>QYOprsnqBciGjJaOS=4HX=JZ5v)jY)ks zo7;mh$7b_dpVOB1f2K5Xnq`#F2ZQmyroQLzbha( zR`w(8{0DiX%@T`05*f@FD1-UdY_(%^xzj?{n7PgZvZFB*XXAuTPRNUIuCZD=0mky3 z763hW)fhzksN!A>qLpMUgRMeMWq+bYzUlt<$r#ExRNSMXOlXNzwsA~k4CULoiUAwS z&*?7?4PQJ+75BmyeK3??)~C+Rv7!88CVYg_j^iD}!7u8z3S%e}0sF$i0X>$)P__l9 zEw{R;*ci&Tg7R}}%PX(CK$A&WJIN150&w?k^PU z`r-__aUYLdm2%TZPKBfrA zYlrV!KQ|(9;w?L9#jw)bSlkTca&JbZM&yx8R+7cgziqLZZFxl4X1xSdZVWbOsJ-XT zxzHBvL6~E0ajHjKScGb$G(tKOtu%H4@qJJlWujk%(y$p&>5feiy^Eiayi*9l-4?qf zQ6c;G(P1L>lvELQ))9xZrGq$4A7>Pn>J?}UalnY&qQ1YDox~y}Sl}a^R z%VJw8%GrZzAT3y9^QhJPj>cwEW%Cq)=liUddQ>(x(frB=W4uRY(;{G5*}RzESlRH~ zNvmuwpa{43M7$`46Sb<;U%peNqvb(@^)9>v(gs#BelT{wIslpFp9GUF27jx?b{#Qz zFUsf5!R9>5=dQU>KJ7u6W98#r0vVuX8wC{78O?BkG5!W1zYhxN%S6Kn1r+2qrG&go zApO0JS44LS0r@72bz&4zaAnN;o8-zE9#biCFs>R=!afVnVhxq=Spal2RFdj~dqh{i zW3_~?&h?6yf3^VVxvM5v`wObr=WQYQ=e!eVfP@~A^%y3zJPGb?6vX$EF@;mjvf_;6 z!^K8H5I0rK(f0=O9?Z{BxUeTwH^)iJZyU_XG;LEyY zJTrlCNw-xP-X+rYg?9rQGsy&kEwpW!*+s=Ba%3w$Kaav@il{y9+z7<9pFp5o!k917 z8yoZd)|D}@&5r@CwArSOhk9mWRvdDlDMqea_ui!KU$-vQfwz`H8ufIVrVMs@n@qDc zf*!=|5!(=6)V5%vGFd9uE+kUA`5jj}IVAllk7YLvBGsq3@WrUWuRXSLKP=V|2jh!CVV!Rqi2 zEiiiSurXA>M-}_J4hhq_3$;~=Sh}RFu{E`Qd+MfI1tC~CO^r%wB9Ga=MzdDV=M>q~ z&R0ilH_XUVE7)W{Te$dje{t~@03&Gq&!`w(XRch3O54ZdQ=%CaHU*r>)$s3!!|ARr z6%lRDmNNO7Y9U)M)?1IZyk6)+AWk7iw9a3wPOnZyH{S)vucYeO+gpaWWE!OhpTJp5 z?RM@Fcqua9cjIL&L70Y%Q{R8)qrO`<+Lt;tihV75#MKkf4ebqoVRp{0P~An59~N^E zYW6_wq=41;yZYOA!#7Vs#mUC8T<~G|hR`?Hd}E#7X7P@dV&U*ee{pE|r%4s}!as}1 z^3fa;sTEi{iM&?FUeKqGc_p-SJ}Twwa&UG=sW@3|;JO?vPMeB4Mp<;Ba~XXc^>@X1 zhIb$CwhF_$M7qB4ZWqGa?2odoMcYW|qGA)Zv2AickHYnhs68#n-}aCJViFOx`3Svn z)P~p#hGjgV*97q`L26712WcQJSYvSc*@?$soN3L<&SzTOEAYJ3YN;z# zY7~V{G{2(2SdLN@9WD$#mw@H9I_J?FD++$=N>LawGq{DJ7fhBa^*rvKRR>l?DUPVM zI{xy5Rw8Tt4PvxPjS*BRtNoc(RxwV3$rh7eZL!|K70s2w<_rhyY0QP9X%E62D;n>5 zod7M{D4mebL@S-kfc!ovoh;EXLg@s#O(`JndL4f+$dZt#@@00a+YY zjT*EsN%Z#{7iLG)F84>s%g6Jfjp5dr7wc~SzV0@^CF%C-asQXiNPeK)rBlr^Zd9z4 z>n$~OB}jHs$Q?X|CkuA^&IYt%`w||RyFQ2schyWKhl_N#2~%c+qj^W0d@HdbE&m%y}Utzla{6z{lf`i`V1MUr_$} z&I|a*gOvI#dOVwdKL^ia&hOHDAxjqMCy{&H`4pb_fW-K7wB>wO{P~>t^Cj`;tNbVJ zyp4wcpVH$^^msiz{*cD?tLX7+`uPWVG@Y+|3LNLm$2sG1&V*ZjzXd3c;xU( z0w<4hp1GpP+de6?Pej(ANv_SIV!vEmBt(WiVu2R!77G&Y);|zn)Gdca z*gbS1?F2pOeq4ud)TPT39llGV{G&s(Jf^&CEek4_13_*@a% z4(ad)O4{S%@U9qIZ0zvzWSVDpcxIlwXovl7GHo0(hJZ%Kv-3CN&v)<#l>9sK=lkN% z55=Fy#GfCFKR>}A@X1f<&phX6_~ZN>kE56b+}m<~fmhV?OY!Gl@MqllmH6>%{-Fgd zuvG#joe$y>O1F8)xw?mHocL5WyY@c1)_a=EPX8GFczXHXD^}wJ1N2fzD&aaxQ;lv_`WDUk3nSO~%;w5@Squ zg>;ZK2#ByYiJe8~;2XCCh1mb4b~_2bYlT_y1avPr9epe0#~ZDz0K2d? z5@yYoPUj@*J7ME@ z$0b+pxQYgNy*V?Jt@Dv5p15n@{$0q1V_Ne#pu3T;A|5Nku#H+4caW5)&DHC(HY~=@cpxGn z?L0do#p#@i?vlw$>2NXED75yBNJ2gf)e1u10!9Lw`rOV_quO~{RDWI-k&t#?8<7%- zh+jmy9B1h6IH2j9x=K)W6jYUKi9z+92kusbH|<|m&|j7)p#-js_RG^2QpH}YrN}TOA+D^G-C`E% zQ=%Ik54g#>6rMbe=A=c7fUl1sU>C?X1iao)z(4F40lVO-AKz>@oAVw%l+j8fNN;bU~|~1e@NsX|0wPmnLCyd9qQdi7h_$9b%8?)hW6( z-ZQ;62C8{1Q}@!lt~$4oKhoHd+QJ>%vU6MNs$9N4iTT9o3=a30%P=d4;F%FH_W%iOA!GK{q~Sd*^V#y@uL*M9usy*Qh_|hYY$Fg>`ytiq4XX`Hu4Ra+gw%>qF!x~P#Ab*e_cVE&u{!^iViGv)u~5N@8189d zvD{HE5jyQ?!|W3l=b^bU_|wi-JB0=fpHi+=ac~uHr$>Qbl$>0>c(+@E&3WAQ(=mAb z-fiD+%V`h7oN8lN?h651Nxo^LnnU1^R?X)C-`%QaAz@iN-$rEPCA#cHctR*-RDcy* zYFVz_7ovL;wiMS$(9^|8KF{KcM7n$ZUTQvmEpBKQOK3gK0>B=YeG*z{imu*ewS=zD z_0f4X3xJ-xYPPyosA8Yig|6-V+=mr+Q5dvVtkUvS9rP5j6knP}yl3~fN33z!AATk( zPG;;#W5H}9C8Ts^Z>y3?`FGh?@Y`eH z_Z#8HF5qb9BHp%aan$=_YD*#xyw5dyxZTR>dR2jcqRV%$i)67FJ%L8d$md2i0`%EHiDC#59eujx;WvvmPcqS=UZDlITtNj!}JadJGSnN8m8^6 z1E0xvzM#WitEFUPR~imRv)V-UYgS0U0ILeirqdgXN(3zLM4X{F)~x*2m1Z?Ud2p*{ zPUDTR5$ZKORK+C*tzU;FTuSAHgsTJ`mTtv57i_b&4cUh+2I`1adr_{>3N~lxxMypK za_xJ#syzsEt4ciKDnXw%x+DbtXkBs?`0j%)c{7nMT$f0uQp&^=u2MWIFH;v#D}^GGDJ_kw5b1 zv*l*htgmOYs}J>As^EQA*E$+sNu&1{303fJt0f@OKWkEghF5zNpf-!7HnHhp2C8%t zC%nw2c2E?4#{o&V1Eg_h>iN$3msXDXg2TwaPSZ zZA#^j;95Y9RT*ALwQJj!N}sa&Vq?u8eQ;O#;8sF0Fah`_s@0kRR4i(d>?<*iM`&;F zs`_EtUSXfB!JwgrSYCgS`pD)Y<$E@D9Jb@iQ10m@-5$F5#P?-AD91=|s+ zz-&BtuI`OxEGopYK!hEVbl}Jy_yf;?{~-<26B07ho?EL*4AIh;zX*yPUI?eM_@2RV3m-Nv5dz~L|L6#99f z>vJ4vc1y~k4gA!u~R20=%r$QbI*Ai;YnI?{+*NF zG!aD=A#mHeoTM69PTfgwmPY8nz#B?-g2Dl`(XD+)*tP7t8C2%6?-HM&FeLHex9i;I zT<*S(I62|&#F&!ZFefMc4iVHQt@8}}_H|$q8^i{6a>7cnJXD>W&~jIZ5AxK6(0EV? ztlE)JaG=1lea#7Maykgl%oq5yQY_>8B|$XlrXxl`oEd2F-wIaj!9SgpuzFGWnk?s( zsD#cJn+cDEMbc)}h81Vy?m51bJF2xjJXHz;U~|1V!=v?ZYuw!&$XA>xHgG;jU1!QW z=ZadLKcjBG6OX)eK0fVP=v;t5S{L)=6&lTYd4L@z5b#tsf)Z66zS zej>;S_**W%)}B4fc5i~k-Jc0EVSl*$lfjBT-CBDBxcf98*Yf5m&9LL{dA{@sEX>Ye zy+poNq$4UkIXC%o(y?ux$I0`YTGuf&q)emH|Q7oBJHSV6}tNT!~-prPY_j%j* z*KxQ~E9G<>W@P@5Nc0#zeoT*_(Bo(H_&GiPksiOmLyp_|eHypx#BlotYVOOpjb*g3 zaXW&csRoIE*xG4bk6N&|UtFY}7oo>EagWbF2{?}Gd#uyQCRm)tPNI*@;eRAk|Ho-` zVh{ggz4PDOX@-ql z-$3ltX*A}5bQ*1K3N6FkVBJpLa7bF5SZ9z1G2ptZPtIWASUu>IXov7>qGyCd=uHzw zgOF9DsL^%`ucKO64n3aU2J94GgEpcyMc7&Z6Z9u6TTbCEsH_*KPzCr1CjrNBPLI{o zc0=%3y(c8bSim{Ff(UDq*m)X#8?bZeKUR_1kIzJ;B&5dyQeWfM4wfrInZfZ;(A zNVUxALqW7@5Rxe806pr#iaqog+_8Gk4Yu2#4m~GWv8O|WKUOcK{kc6>&l|?e2}BFVx(#7e|CJI*(L%Pt^;ab|>2zg#h26s^v7oZiUx;w_I)8*vUTw1gX5>&!1T_%Q(!j1d3Jxv)J!75Vs!8~QJGf< z2e;lvpJxZGx4h@stu!_YQ6s36=kz2yKqvfc(#a8HTAgI~Nk%Cz2JoF^M=3ttt4Zs3 zE8|Wsl1jwvV*M#q%nDqdzx#29AqiP!o#rIFkBDw`dXk;l|I)bt@b-g4b^qQku)Dyf zIlt{g-9ll`Zxg~R2^7)ix4kYFoFzl?flzgR+pA-12{X0>%i7KPZ6P|=c@-L99t;c3 z^thxT-bf;wB0(s1R|9*oCusGx7SqBj@+4Tc-{tA(VcW$JGZO`u1uOQLN~fS(gFS&b zr2P|VDqVU-rza4n$W+P|Ygm9+p?&rAla{PB>X}-l(m2U2s5?RSxv-#QJ5d%?+UdiA z!DHGG@{q$ar99tbO{&pkHR-YIH?f{hgUV}SE%QKNn_3S9$Dh{65d*siQ|mq^dqlmV zGm9~%)-hC;(A0ANo+PyACV>qe6U&Push0J6$CFPcC{ybYqcqIaqLhJ{S}&)Hy{1;3 zVMs#OfT>j#-I!BT>&^WFJBg7adu~jv8PW5;3L=jpumq9kdxwI^QzE*iNI~>@^vxDT zp89M-^hL^Q2jvDRi2f=u>0<=ZU!$^q3L-C#{{Im~pJtSX2_i~~B5fB#$M}3dql&$P z=r0(Co&?dyL^tMC5dBBL!0rN@enHel6~^Zi=2ns_qJ6%7u}JCE=esSomV`cEh_m2~ zqXFgf4QOxwIUdU-mB!8{F~hHp?M7e*2WCZCGGUVmA^p&@Ho@+G%c_)OKClDPxppfM z)R{4Q9c4|b1MY(N@7#??#IcBLDSaItQk33Czd6*hGuWKR_dFB+$-s92QpisqA4!<9 z)rM*j24)N0a9= zJps84O@Y(M9pZ_DW@guk-H2FC=Yb@+V#VHdvM85rWFz)z;R?|Tb%FOQSLu!S+VETZ zO(#5u%*@7P&YDdgl(g`e4;@JhPyW!U$9_o*Z#$9F;<tA_U}UY4J?d*Q>N(>KSQ4Kb5qg_ZVq$wh+nBLau>J3%e1& zv}k+da2sjyZt4O{i}%nQOACHGDW%0GOe_U&0ud&KfBtEJrUcIcYN0SUS9^TX;x$`- zB);0?n=zF|`6CIA4JTM5wODB2EHHIpuJ-t=Agmrqc0MGT?|>%f^Hjnsm4kD(KMPi> zWlaPEdO1L%eIMr5b|Vb6k;Wk)YYYW!w@;zIUZpWp%}8VVsiZNz$4Fy&s?2AQt0QTg z9*`|FmdQ>{70dYyZb2;9rz$l%q@YsHWXn0+4wS7H=tvflVEWu(c`iGx>!UgI(RLMt zT0AQ*^!D4QAn25t&QCx)ryT$|$5qQc->`F2?Fy@+V%vTD?3Vp>ez2FC9|tgE&ki={ zkveH$)qkE^-;aE055k-Z4fni`IJAve3F(w3V?eB&0U~rOR)iKfLhkd;L`yAMT-F91 zaH~2T=7LW89d^L6@#)gSUOdZUD)3OGcj-R`*R@z9@hMg>Y)d3!B!=pIDbY=U)Zptvfv-EPmXfVJ zmbDwN+eW@mOzy#m4zORcbHXYFtnj<(P59mPmc)`~Sx$bp5jG^j2XmzTxfx8rH>;V6 zX0epRzQRngJXHzksB=A&jyw`V3U#WN^iWTrlQx7ysW>|j!gJS$6;RoQ?g`IgartqJ z_d4S8UM$3ig3TEg_YnaiXpola2q9AQt0Y%({xL{mxL0t1ECea}7nviIWTVj%5W0F7l&pEfM z?mc&_x>fbMTffZrO?ADxRp;Jw?%D3S=ia+%^<3DS>?X{uy?L^e+cIp71(B5T3?aV- z2w#DXc>w!Qw=s4$OYF*1T=@BINxc8hOBuuXY)OeoC9g!+nZT6>Im2}37Z3^3nP0>^ z(wTHuNN1*XZidcOql zVcw4sPuaQ`$QOn7e_kG#+~GL81LxLe?1eg2@Op-ku(UkwGDE994m7L4NF08m#Yn_r zm{^6qQw;oO;3UzT-(;NUF$3l%l=9+D5R>8QUfgU2g3VJS; zIg*YtfS4GqMEZoysD_R#)(Nt$U^M~RsyKgT=&}ZECE4u3u#6K(Eno<5V9m&-ZhZ*L z^ES>xzTU!&&8f;5)V@u@? z9GPxyZJX&(@GBuiJ$h`2Ro%DfRA!zm<&1V$R7<PTvo-FBN7jV_k~6X44Z^u2ncoMZr~9nQG{qH z2biQ;trVh(8%MdTWS>;>?>-zred@3!wI^=5OFPKi+h_FEi6I=#`p5^{FeAb__DQfj zb?B1dK8h(RPaQ%f;B?V_t&pbcg-m@0kI%>dN4H?BA+$UG2QoYk9O{yq%w!<@~S@g(nlpeP8*yV!Me&AWSE-e}=2 zs>}=}51G_|A6hpMj{Ob-F2k|Uy%3D@NV|7oduD3vf=&nax(0)N@mBKOq)m^Fbgk8` zO~F~tt7;uWz19#$eX8B7ZAAz**rvSQNhnfxTR6kI8|_Gd2y?f;SZ18PfN2a3V-pMZ*_|ecW<-SEPG1Fg6ndk( z1sQrnbL+I3iySZp8MZq`w!@h$W8_dxwc!XCO6^G|;f>%}DM(B< zU&hekrY6LnQQdXT)!ZNmcMGct2vai zsYelT8J^m|(djgHtb&nPqD>OU@eH^`w2QvvF|u!0gr^#G2n_l4mxy)+jC>v!EI?Q- zTBQZ>u+Zg|xQCz1*98+~j=zvq#Q5vD)o@4SFS=WhoeCtcU0@(s%e7qrz|zO&hD_&R@N*o{>(SSNF#Sv)8{ZN>_J86X z`Pg)~Absp3Quoxl4&w-yi;Zs&(!)NCw~HJwIt$H{Z~P?oO{!05NUoJJt#QyA=%=}J zw3nOJDUS9f7Dt4nty`yIw+uo4@i?{+tnw4f-Q+L*-rvh?}PXO>? zcG#0+d`x*@GRHW(lje3PvOja%N%}HIA{GqNt}|5J-axwwMk1FXyXYekP4tq1$bkk% z{&C19!VP~CR*?#8&^YAiWE_Izi`Pll8e7^kJxD=84U-^t>q2zT=Uv~(4KP~Tf51<1_kDf66 z?)KDFfOTco@0$p}5D+DN@917cBY)z%pvW-EN&nVbJP; zUKib;88tyB5mA#%kq0SiLU#)?YI3yL2&K2V*WL^}plpU6P>e*-qqWe9`N=@zCuVi^ z={9=AiFPpeusFc{CV5#nsJ0iF{@99r7iNmfWO8mXt5YH=S6Lz{ONa(3R(cRcE7s#D zTCwl~1w=-MKQP;s4!vClG9YTQ9l(bvJWtf5S00#*nq+s#+(u0f!5D*ut206;7BtfS zGxXebK)?z@C-))G=%Evvz$Nh$+Ns3E%^yU$O2iK~V`ZtF1_e=8pGSK@VaQ}#>&E6( zjrbq;e@eE38f~v`cVKaD!#F!B@LMKRA7oADmdzzofx(sE6U2Ext7+bXD_>yED2=cj z);x-U%Q%@EMVHqp-!5L8JvB2qy`x4?V7IW^^o}hv6BCfmoNfvR!yl6^%uq~T75nXK zsUrh2j{{(5Kn4q?-0(ihACO5B71hB;{EV^uKY3~^!1DX1OR;}OIEH{w9s0lt(dd_m zMt*l*?EpO}A|!hA*TEfSL~l^qo!)uA=*?#c#DJnV z!zZ~#DuhFg=*TC{hE>Thmvg8>kleIO*K8yVgMQtOG=Q) zZ+*5y1%-G|20~|wf{?)^?7d3Zw}2eVU=nwPxwlgQunZ>g;fKzqFm881uZ#ZA3??C$ zh+xu#ct^n`x?7OJq+^vqTUZUgPFFfI9I?8S7r z${Eq2CCh}BK5tg1gq60;TUhD)X1mg`go6xGKv?P906t9hdBRGMmj@=pO4%JUw_znc z^pZ;LY(`+of=JqfhR*v8kg$Tl(&Cdrc=W)MUFed~5^WM|lU#prX^ZeOKg-xOD7bX` zd1-LT=54cG#v!2K2s0Ii!j#T|NVhPh;~P%dvU$b?!Ira{<}Ki~f;A(Tmh~Yl15U>w z;4;4GdD#IcE4x%1ayq+O`pA&e835QBa>7Cv8&)53dXA?ymx=L2S@%stP9ub42nf~h z4-Gk8foSA+`qd85Lrz}$J3~&{U#&AjPT4HX^pmd&!7 z3>{4%1{8F974k=Qx?QTeod~#$syi-@2qi(M)U~jgyL$9=u(f4EO>eE15Hi&C77t(% zYC19vHQ8}w%g4cPm0owK>sN06NfE(>I}lLcAwqOg`*<;-k49?tk;kWr?ijoRu; zYhnG9Cw*yu<69nRvXnC$Q^)=ba|+5tnT|87Q=&|hmMGJ{oD?Z`dKQ!GJw2Vt^&WY( zdLbj#2D9yH9K&Tw0wPiC0eqNZ^hBbbRvws)L}ho{+(x1fP8LxqtN{x%Gr~|7EYj{X z)ZtM;zY4-oW5_ak7|J4&Net>xD`x%x)TD@~9F0|_f*cfpy5gdE3qIQtv4qC8?#$?T zt&~EzJ(@g0OW0B2-;%QQ1IhV8YpD=yOx*5>C$; z-WIrO3qnt`n&vHV^$OOE(g@4Z+-(TBjAMJKx(w|Z@ridOm!iF;T5M$)>J0$c8HU0_ zDN~%r`NL3omZE*oQ&R!%rf`C?1A5{LoCmVSyIpIRR-DIv^f46}cXfXis3rx#m} zmY6-wkd=nUIPSlyrJ5We|AzXy0O92b83{kv99Ja3bJ!^Z;=Dr;a2d`kxh!o>MTn{T zJo+N^YCw1=cv;#?Xmr>hCYE@~yDN%pTjB zXb1GV=>E*;4l;>|?lh1GDY`><3o^R10wW;t1j6R-bmOL}%`|h`HL{6TXp7Ta9}Y6s zbDXQvdeZE3PVXhKm4omQ7ND?JQP!IfA z-l<1=)Mr@&C2{~LxjWhD^jk${x{Q-SK=U7BapFaB1PzGX>dnB;J9usd zERfzNevw%ciw3n*8G^oK>fj01T<%_k@UrTFY3}Ze1Yv%_Y68MkaY%)_zY?3vRSOux zzhccOjj)V({VM|2P)7xw`v})9iFKjvmsZu<)3p7GIKp)#4UG!71oQbiz#i>MTwG)0 z7V+My+Lj%)vF6ss%tWu2Dq(Z+ptNC(jPfxf;@+nQn|!M}jk!h!(v|{Xpc$D}<1AM! zbU7N;2GVMtnhHpT45U4k@CyN<4!lAGX~!TM`2%S&@%PgXrj zW;N(dU6#lUZ?JsKxcFIvYW78?dO11`KF>eAjxIqof_s@nOb?fOC5*nX?cA09)rA$Q zFV=m&Y7Ms{B+|M#xcg!~CSwO^44flqpDL7DeE&=!1{7(18S+fnn9bK}X$5aVz-6r9 zF&n4iweT4dm1 zR)m^rxC2#sf%BLiCB_MHEL4x3M#G;e3PP$q?7d3Zw}AeZAyYom;4Xdvz%pdY$96iK zLg>i>y)ODcGh~W}UxZA5gLf1%rMm?gGF^#L#8g9z(}t2<4kK#1(h@awd^^a%DTR3* z_11CoNU@W*Cw6+c2W#$idf#Lg>44Lqx5KP)nF#8>W_3yg^)?uP>8H5bc0V^Gs44kU zI_LpZ8ys>g)dEJEy4lt=cI47_0YTK`0DRa?lM%Grn#MkB<$=ivV0I_XZ3OVBBr@iZ zo~$6C1)sDd4Yj!!P_lv`;0Q909t8A?WfBKGIs;pODDXBB@!A`!PsJLOlq3|G zQk!i874IL`i+8+*ZKKrl4M?I2L13bH9cw-}qb||2g}GHnL-Xuz7lgW+)dYl^pU~h7 zSTjl^ES=gZ1gxPBYA1haaJ4i|a&PwMvfjt7!;l{)<*89-luuQ&ETp3rFebRYTAIj6 z-%9~7kbrpAi1cBhlpNj@)kgZ>?5U{$lgmio8wkG;5bA&-G}3oBqLDuaq!M3`0eNZf zi~(hTb(ou98OQk`8HOSxtn-rK9x=i?D9BDP-xnZ}VVxTY#DKy&Uq?1bEe@BP5LS#4 zmm2JA2)K*}dkXfx-I%4`A~BcmMaCyTsuoun#`!zyp#tQR<6tD$T=PkhFwP!N8xX(j zhJefPOX)DqlPf|^)ymNapkMPx<_m;z4uV#PjYm}Pio!Vi7X=~N7kjS~_AQ{VWf+Hh zg}=ylQmnPD8{5)sDPgiJ_b9J=#`abCCEZjhG({}laA{rRMo zu_&d(rD)v}mR&R6OnkX-z@CY?cjC9;?{%}0$2#_xHm7=>7No^o2k#%XC-8M0BO6J6 z2RWS1XinV{&9QztJKh}W%{By+jt>iWpD=P*spvRpijvQi;#QA_c}f3xcYCF~?1|*i zIeGS0C-fwXPcpw8{S&(>xEdhH^{k60g8W&7FcIf6QtE zlFUz}=5wqWr4g3noJSCF8NYS@A~oNvmL@V%^B4ejMryE7$_Vd?Y9lp2_taE?$z`PG zCxl-J2z5*l8majwL?eHsMkT%;sqxa@8L7$sDsQC52gxu89$(ZL!hAKjM`93i2!n#` zbma3zYCc6E1{A4Tak^V>LRc|ITxzi65O5g{<_o|uzu5O8Gf!t!i>r*(oCbiy{62$E zkX&=kCq*JPS5`|y$uE~9;4=JDI#Lr=gqo_AqeTF8pplxbP(dNylk7WM6ogcB*n5?* zZvlNRBQ@MBHn0NS*H=S60W{scQZ9n^7Nbr{|nVfB{TKxw4sjZlhf3Dn5tC%LsE>&`CwX zApZkE$O^(-`<(%5Ne^@Rv|keEswELUJFfmf*PBFC=RwBLAg1{PT}NINuUSm1uenq8 zvtDM3`beZmn4-1{fjYX>{M@$)^bcn>0s8Y3)LO@yk;^jq5SA|fS_G`2j>yBwkc4^gDJK@Ol2>bhH!E2<~MP zF+IrXl`vNN#mcBwg7NXS+zCrTMHQy8ojsCn^8cP28 z2?8#|Kcz#Xi_WY@G*pWnsLKl^vHf>Z-jnS6pG85)&?xp^CG1;3f6LG)A6syzz5rku z8s%d)olPOIe+(w|%&E0k^qL5;M;DcMz5+XTz;4wH;qSrfQAF5oPY!O}d0cL`))%xVH;s|YGB zy}a3*=}c*er%xHGuVW1;jjD8uUWsP6+A(i5JkExjB zv1h|VUS%Bgqs{6R2mOJ$aL}`xFt-kRx)8$Ns~L{E1sk`cegsgz0!RH~>_pvB_b^=I zu%`t5R?|F}P>dn<+Djob6 z0^pJkJ`&668~9urISaFuKn&Qye^a$Il-%-q1YCw&N=MTltO&I-j(vhe{>jnzQLh)( zN#xYOyC?|h)MM{e!oCjg*e3zfspqoX)1;AvvJeqfY^0vYmQ-OE~p^ zhj--E(_J~I-q9)_F(uA_It(r0PN?D)9`D9k3}%;%PBgmR*`~F!@jIe_PEr14iZb1W zpnPgQRvJ$Csz21|fh)0P29J11+^o1wTGCjyDNOOIM}2`f4|B0 z*vv$8^=Nyl2TSSAy5kpM->&opPXo^IHei|A0GP*tPx?b5&wDj)`_$wM{*$sbSk{O< zm7nIVd{LO?>+jiZ&vZtcv&2mCtn$M^^XQJnyX`g--AUJ*@xd(I#%uk*1iwe3*HhUW z==w&wzKO1HhHLZ|yxa|!O}j_;h(GtjpONUTbbT9L@56#c(Q5$QrX|ta@z;{*ekytg zUEc}UozbhHeEinvUGO7%H(uU@m-pi3ed)75#=8gb@_xKLh?l$Y!|CV)a6d9WG!lIf zZeWjsm%!ub7QB22OQH|c^&z@`gsy)=*N@WmV|4vET!p}Wf_^`YzdwnWI{?tm=u>bD zsD2v$T)KQk^a^-561^PjxE(K_!8ael%PXm5CqCSTm(Svd%f?^3D|!@*KZloDDA*a@ ziN&wQ%jeUyP_}P`@2VfNI!1H(wE}pW%T2yc%>UxF*_ zF!87G=jPey&%~dvh(BKye;%Vh^=RlU0Jan_i}3P4s0~g=xn6^p|G=NWhRaO!xbnd+ zdU+SUxQkwb<6CfB3*6p`c_P8}M=qUS5uuFX83S@p1%i@o_X>Zo$jT@$xuc zzJr&GR>9>GyqvlkE@$Fp?=^5)j+g7!!et9yK64UWK93hXcQ~Sxit#j+h|XWZEfpi$ zgb^3!N3@h5bC)B^cE-u1h^C)#v>M^~7RXKg5q($u`9A!C9{(Hh=LzxW@5P@Vi9bIU ze|`dgfS-Pfe|C$027jVoz~yE*^5^o|=wIL#;QX8T^DFo>68&2I_znF?O%hP`2I%qV zlW?*2@8=u^_2|pIq<`Z2=^g8#Yu8^NuZx-PG^ac5(Pp>Xn%cHzOXG&-=3a96 zy<;`9uH78R{Ja;uF4*^6s3TOZcbZ$r+M~17C#nk^T?)YZOQE>8W4bxp-virWOBTGT z(V3dv6|I0)j6`+14kH3NNEIWn7!g3y^zT@EWw+Vst{rbqHl}*xYcHPa?wA@)eomgd zWoGNv#zcEfb8KeqMeX*siDvEmPV2_z+RHDv;)0ErpZCnQSBy8hy+*AI2kq=w8(Yzt zEo%YA?%Kvouicn##gErAW?8E;%Uarbb4{n)n~ffab^+Uy$9;A%ePayK4hj%wA{%gq zh&JOhst1g6_1ge#z}^^!?gPi>tR!E8Aj%KgiEIPECt&?W^OF$R5#%76dGLnt9H0IOmA>l}984D&U;f&Gcoq%@YK-HrT z0_noVZgZlWpeT=SkGhMzZ%<95eFUF~AhpC2<^Oq5YE0)6LPw|d|1$37^awgw_ zED%X1^CAYMaZc%uHm91QIwv_r)ooqY5Zpm(oh70Mr{4J+q`s3%{#Qgqj{7v2ZeX}}6^X$7&G!K$4L-SZLaciD$0lYBH6OsN3Q7w4yQ7!ul+J6V$k{;QBR12>}S1r)NhE^7eE1zoF?`%MURLgR_Bh^B83sSYL zn{0N+Lp93@+1?C-9i(DeOcglw$_gaCs#nDOOsx##JKXzErDFgN&GBY+ids2fp{Nz4 zT!vb)V3HEf5S<#pE2~zhH>Fy^pNU$*dyiTt~Q{9OR0^!5d~5k_uw6= z4Z2&9YUAYgmVty;whTD50`Q%#$VZUws#4hlkmP~sk1{?RxJvo3S)HO%o&qXmEewW~ z>45&CYakvkaHvOTYK6ONXBWe7=4XA`tS*&%ho2Q)0ChBcVZbxe;o9c`JT&Y zdG~XY7K;U4@SC;j@dB-SBh=w-RUab?G>D8_6-ukWFVL!RT2X`#`;<`xn=G{*=R$`L zvi6X%hHOpRSJ|AmAcA@*vKhwAf=SBM2C?1`@X8u9QX|rs;m^dF;l0P0JwCCd3Cm;v7JMjM-E1j*J=IElguJ+S?vFvd%G208j_%BkzImQ(dnu zn~hFIx-(;juQN6BG<;?5hSlrL>J(#k)I#x(k#HF*#e#`jrK|>cWmO7wrc^2TGf^pc z?@=j736-)I-jZECAeF)^(Nzj`a4D5CiYSmu8N)kLDRj3WRmv%?$;P%pOau_zL8_G{ zq6Vj8c@a`yRV?ubOtsw1_>Frg4o|Yo6yy%GIz_b{yHHdMk}gBFSTJ#`mL9+>t6Hc# zrE0;SiE6=nk7_wqsFoYyt%0i+UWu++po2@PmiHnGq*~sGccfbAZb7P+r@?Ze?nJv6 zJpN9O9rsK#CZGqYV3wtoICadU*bS4;i^LfU516MPTnAIt2X2n8LGf2G*HDkfV zt!5qucxBZL^{7-c_%l&6c<)g&D})eLlSDK+y;M1j=Izu+CI8M<4L zYUX4R(*X>M0O}x>%N_{dsaN*epy?HQovD<)@s+t76fHHYQ&h@{3q_?M;WAW;1rxVQ zSp@LPsub!>sZ#J~qEhhQqf$;3DrGUeCA)e+gCbsuu2P_bOR1DI5Cu{xXW|{H6uMiO zDh0C22cS{_>OfTr!gs2a%aHD>tFi~a&Q!|fjL!z{rHq)>DJo^{LQyG5xD1tI!Njdn zE(UmIRSI>cR4Mo~Q7L%uQ7LPMO4$T&4P2%0N_3S19b8JKyaZ7om2wN-kxHSv1*uZj z;YcV{r{u_rLa>8WDvPNCr&f7Al3vv+;(ex8-pF`u;A-V{W_5~MIc1@!6{K8-TCrf_ zRx5V^ys~PAdQ++u{F$f~y!WV;Q-oT1Exa{wwZbdW)e3ZQDYf!NM1j=Gm++3%3f+}c zD|(x%UW#m4mZNaJbt!TOGGmie|J5wkvKm)Qtp@)9m)038lyj{7@-AGabay^-QJPwK z;W92Nh&l9OT#xm?3zs8f;W90}_}yN({7sbFujA#f@bVS7$VJLnxQhyug~{|X$q!0I z?uE(ta-wjpSqtuk$#VTmyfB$dFPJE7c0{W|aQRL|3w|)2KB5GC%z%w3XBLy%B1(h9 zjDU!82yh}VqNzWOyGInM$Iw_r!89DvMl=RSM>HbW6>Ud^)@FW}52IoL+*>HU6)Yb< z(z|@vy<&Kur$ha*Pou9GR?8^oxyvI4mRCtl_zEDTeMZ!pV zwn+GJ09Iy^u$?-wmX_;+Up9a1f*nhNhk~gXBPEvtFU8L0-5#yRX9Hdee1uqYXkQ9E z+do_sTUY;D2ND)MQZF=M!SB!&Gh5=-kV%k2q|vDbY}{~xNx-yXhum28u+cNmFaaw) zgUfuE!=468>L2VC66=G5T?GLfqEj{>DY>I)2Zj1bKXmQ-?CrB7{ng$D@6w?Y%iZad zy7!ZrUTdP8zTJ$D70rvTM|y3+%NSgm(edyc*36#(e@3DeaNQNv={ii;m2ibEBu<1s zJEK)_y>2${f`j0P@Ykgv>?KAHR{&(U+Bz9N^rlJfhmeV|-p+-sPz*(RM@aX(g&-2FB@Zo3-wI@x4ueA*{Og5>T%*l%%X{;!km*d2&? z`*+*Pei5)iv>h*9yi5~UBs&3N;VvproNRiTqy+gsx08)8YeJcK_aCWZVkeu+C}??X zc7*z3e%)RaRcOt%6}i2`UblCRv#YW%Uzvavg!Tr6ny}B3bxaW8`nPc_tZBH! z1RcZQO#Bt@;SR*P_$Id*SsFm!au4X^*vBXCGP&j6*~A(ls#4DB84kp=0GR4PU_1Dh zdpoIE*>bO+=`^T&^4Sw-r72fBIvJ8nXXCd++a!DSok1N#5v1`ZGZ9$gVi0{4&iCHs zBa4_9msE2)!NBivD7-1Krt8i(;bOoWeTT+ni+?i-*Ur5td|sFO=_rvW8X9ER19O^J84lCxM%lelEzNzRPEtSHvy<=U z^z7sZVZfc9-7ir5)C{p9Sq1m({@E1N0eW^nBi0Bp-X72HKLA*uXBSHip}bl#p2Xw0ee zb_C$zo+q<;7>;Hapr&-*eo&Nn(s>gqGo%%6=j{vL=HzwWKI?^IBdy1IvsnG;5vU+> z-UhU<>uHyzL6=&c+(9^%*S?>$R41^Tbf)r=aIHxK7IahH9k8YJNwS)HyE_SoQciE4 zZuG{_8EH>7SJk#mG^fUz9r;K(j$PkiXx%kuAB!1`>uW2B4l6dSs+~R7?2c~kwzh5V zPB%uI>uc#NwG|sSC>s({Xf-}7hk2=6P>nde)ZlH5A`dW^VhY%r2it1Scl(CC20zPv zc7ES%tKvl;0baDWu}5Ex;BW^(b~1MWUToHpGLeHGWftRSqqO@n9$h;w4^JkZP(9kV z7yo>J<8%4$i?w(6QQu8o6A3fCh_UBvI0d6uLe1XXiksmDF}%HlI4YXd+M2a7)_nz9 zwIi!l6MCyQE$7r;j5>o;PCQ~1`#^!VT?IASDb_!*J2O4q?({ZyAwu4J!Au(uxPoc$ zzk{KFbja?UkRis;5Y4SA{(aFa2Dcg7G9gAiGPq5BH+e1QHde%F_ooGD7r<>_5O{@h z+cyfdDuCPKRu$v69~Nj^d2SO;u9VwK0ox7Ks!%A|D!A(1+v@%!8KhGr4`jFnI*pJ0 zVtJMaGFb3PEtf&6-vf9_PD{Q68N^so-4-3&B+eD4VI=-cR_fq=+(3Eaf}B-9LQwu1 z1duv1V7^@^F4PC)sSa=MHg0Tg-ZImg7=zQCHn*m>w(<0F=^WH1o4xV&7+!E3Gi4Cw$!H{O0K)5r%AW8v84;g=#KWnJ=0~$r`&&9h9_y$%p}S<%Xvr)pd3g=3ia+kCYn3sthtzxdq3xR}EEuEU-XPRUVNJr}J|rkdtWL zC2Dgva_U?8FgYf^=Ev1`PQ0`P@s@kXGdA{Ef&dqp#-73y zIA-nP^qt!f30k%Ja=fEen{=1GYLoI1X=0R20?SAoknKA`XrFDJ#`L(?@SPQG_$16h zTD=2I1QP98H@12nq{+L7F|TIDLrva0J-{3aJ;dZ;Tb+z%m53=Ar8{ME$3B9Ke}$H)qVM^T&e1XOr{W+C)wwTGr>fE5 z82XiIyu;;QjFASUOnD``GR@rKGEaTtNsyE6t!JSL~( z40CJ_=>QLp^`0lxK;8E0I#S@hRkdV zyBTjDKB^$U|A-ph?;fhuD^rDYRSqFzIA}| z%h*LAb18{;LjektaRsC_v+%B67zB)k;(s?3aBL_*fzsdY4Fw)XMe#Abd>Ahuz{}e) zUGA-Tc_03KH(caSUiiT-dU+SUxQkv=HXI;eBwHvgxi=iZmo<6j3pU)lddYZpyx{yZ73|h^oPXN_+MC9`W5GWmO=3q%-?K|C`wM7o|0&j(1J%GMRR0a3lFs`Fykl;! zbA(=a=dNEu9bu`x()qz&V4D^EHvm&J(!pkFYYlhlYYj)#Y;+%uVtp;M&v(t=LS<#o zqBWf^Y^ks2c>g?@qA_Z67q6cH2#p1z<>$jQst3$o^;1L}U--T`*tS~ z@7Ojbu;7$B#Q|%)jI9R}0VE+aN?GiyjwB3|EZ-Pf_Sf+yV5PspHYV8X!kMYjUaLK& zZB3v&XGooC)}7MTp)T?v^)wT(g4901goE9jz*2wzO$$cm*RMM{@9MSJ;JyTq6pm>( zTIvzz+hVHuHLGfrn6$OE?Yd#u#Gu*P+G$Th7JaMNYE0CUe5G2q*_)YOGc?4qn7Wv; zPMPZn3O<*$;R7+(o74owX|#ADZj11I;5uNffp3ct*W+3|SC1;#7vTlz)&)Z! z3cc;rDIzoAkW`^D-N< z^^eN10;%|s=acz1a~eMAAzT3@Q^GBL1D){N`>X2E0(>TyG`0m#RA6haN%gzw8+Z+k z`MPdpJXYnBDr-#{TDK?PL~d2>$pL1gxnlTsIDeNgCXWa6lE;|*Jpc=}?X#HDbF}_BW7ZzhEwHU*k8StfnSczXDVAV?eB{ipj0+m+c&jm(# ztwbez^DMm}GzMfCH__|`q6>d7)k=xqnT~_Js?c~lKodTzx;mYD@I>e*rU&;oTFg0r zHGU8l@F<}MhlAP3qXth0U}e?dsvN#^${D}Ke)I7}_zW$GFS&T3fZV1oUvx17R<+)uYU&0>W;FT} zv(Z^`vXI>tJ_O*y<^zrOB65>}_Y*Kp2^#ogZ|=Pb37E2+X7fnNEL)ZrPl+zB=aQawg41tP`3rZ zHi>L-D#D*}_F?}}yNMZ2oNc*RKx)G_9U}G$cq2kh$1b3YU3&!>+fiqRLYZC4e4EM3 zQ!i9ol`A>JH`^+`Xo>%m1^!QAHHE3PY=g^&HM#6BtP)=_yFvOPAl}iOR zz>Pb?f=A+WcziZn43!Cn?FA+aBaB0H$wC=#?OA4Zinn&S#aojeRDzhkU6J{QzDbe! zhR-=0GuxPUsl$N{an7y>@L`(3V>hoY4@}z4?9Q2AyLlNPn_)LCD5QO7sK*NcURk?| zZBpze{!HxVK^B?z8qLFn0=)=9<}#YWTe(YP!Yk2@2?(M=tx#ifFQP%l-ft5a;q zkqg3x{H58(l!Ggv9pFIqTwnn8DF9x%uW-D6Jx)|(O2)HLp8kFTSL z<@h>ySEM8W;XKr#(P7GuI;#|30)_+3c$oZKy9DfYYj@jyH~bepuoy1y$IF9wxoeNz zb{n6LJ^=S4<3l6S2jK=L0$u`-qg(LuAuNeLOxK6#`VqQ1)`HP!{1f!X!*Gp0iI+P7 z(9Y;na0@wApN2n|E?*J70v?V;FULA=$IEB%%}4O^N-Eij4|n0^v-sh%@z?H(9>wC% z;bj&Ic1Cw%@oVw&d3d-h>cj1>=nMG%?$IC8k6W?yrFeN6{k{#ZJEK?Q{dfaI2494? zN1`vm6*k!ZQ}}c9Z1iX1&sW5suZlm9(Vu#B9BPT9@p1%S4#Ueqc-bE=as?Q^wu@fb zMa9b6FZ!57356r~+An-r(;QqJ+-twmAjzh9?H3nhAOoR6`UTO5D87Orzlef_IEaa8 z*n_4hLgO{RtGiIvq1DfWeyn13*YTK>0aJ79uTK*JT9c4be`B+|W^21M*}!EM?&V$2 zN0K>~cd2FM=pOE=f+uBMhhRyeU50l9Uf*>!)Dhk!)K1=BRfO|BTa0=u3wL9_#(Q6k0QR(KsNW~$GUQ`HID zQX*!Pbzm~aX?e*u6t!TLy1#R@#_LX#uxS%qqbFMeg3)8IHUTR=7PiJKJ!UphFQh`! zr)-3LpIL7;2;FM}RuCHe;j@?OG5>cYgJD7Um3L#I7ao9@ICRGaC7 z-&^Z6w}I)YZE19yV74CCT%Gk<;2AK`17DpL*W+59RmI}0v(tplwC9xM zP*dTpNneAk(4>>h<7&?;0XBhZ98~)cD5`1#{9b8exNq@~rc7rkixLT+KO}Al(W)Nb z;$H!n>RaSlMCJ7-)P(rsJ>Hq@*ko2(x*!W*A0_Kq{+9ZJ@?*54X|Y6eHBz3?BMW@c z&c`9KMf@Q;=QKyV=Q9(3Wp@!e`hGA!#4u(0`*#Eyc@sbT=cIy=D9}Q>mh5jySj=i4 zhP2`ST}t#2fiZ~waqLYs+x8HsDa^rl5WN5|$h6gO7VUbOwkmXfNGsfFtDp8ZXW5=O z~$-%mx@ItYDZ%nt!gLN(LPLy`$;IbS}k^*8mn$0wGkf@qdS=t5w79>-)4@hY^ zByDsZwzI-SK|EGTNoLRwxERd2YYmSO2cNsv@&I#bgn)C`u&rjK*r(48UX}ZNUuU*e z85$e}9-y89tT-gO9F?2R8d64aP@_!lNH#)xrtjVg1H2@Bo-=`U zG4hO>z=~}Wlc-dLKa=e<@jh-~9lQqN_{u=tLBjF98Udu<9;ioGu4>&#Rz36?5CiD0 zucgCA822hl?#;@_=-rur%c_=y3cK})Ls=^p<{uIHg!_7TKqj=>%_f+oS z<`QGge}vk?++5COEROwa0OlWS8vB$*#2WP_KpA3}VYurjbcs169XBe*@=(Dc*i&KV zIff~RTaxQynBQj|09^MY7@DbjzO+&|s>tAI=)CqAM5ngwSYO*XJ=3|dal;H8FIjt5 zW2&{Pc7CG=C)u8S#@aL2t~=@EGr4V>!+M$d-0xyl47oTsIMS+LJ)}P@9_i|&AIzGw zV@4Yjqcamg>&-VdCoro__Go%e-6^?Z8*3OS>mJmcpE&sfocHImn(8+;$6KQlaE|g= zZ&j@^F|m291HOEB^K`qrsy2$t?Aom{@r&~30MS*o8z&pvSJk#AA=S;j9n-4&uX~?Q zVpVcx)XEsctP5wDGG6E!vpPjn;Bm&f7kY7J)JuqBE>K$<*O9zotWPsu5VIA@XN;oH zG*L`#w@U;APG>zIz=v4@!&j1y*SQ4DSe>?L3^sI(t)HF^u9guM@Bt&h^@AnAwR1p# zeYuo6iQ#&W2%{G=B5fZmk$Q7Lq@4 ze9TDl?!l7e{y8AYVl-+_a_~|jg?Pls@W^1v@X0wK!@k_AI|<@?PiPkn2qV%r2TP>K zswa{$sukI;R_D|(XmaqM?O)9A;J<%p>b`33C?BiE{SP)CS3WIjT&_6{Z0%B}O zXKMU6auJ=Wfg``Z65#A>E@g7U(P0kkZ08%v!CZVa_KA#XgF*u|-enVdf9Spy%g#X0Rm ztR^7to0hSWva(6Wz0Q*Rc?let+vqf46xQr$G*b&0!bh`a@Bx;~IkwF*#q#lXXpk6= z9*KZyPFC_2_{q^jyvZq=(W98zxA&HriHT-!^F#}_Fu!Y7i5#Ra*2SB9;VYY4z2>Cj zJtOpRX2ON(q*J%om>O*k*H*8tZLEz>G`d~b-dH?DKD=`K^Jpw zWE^sCwWR)QXo?{9*#H*tL1YW1xX?M9Cz`MIshX06+6PS?g}I+RXL3+TH|nDQFy z4%d2ZNO)_4px35gHIg(uNxTM(P{Q7(yk`%#{}Ay=Flr0tAd+Z-}&k+CHc1p_g!hpznVvdYV}5=(`oDw27RhVKWaC% zdgD^c!K}kas#A(KpMG!av}dN*PD5zB?Nb4I6e)?zQ7`L-jP&0^ej9{p_&Sl^;Q(Nv ztJeIgVNXF?t{akv49j15>I;$Vm^-9$_$gr-0-}s^_-8~Tzj9E!Kvxdl9&jp$?601_ zu_TYPe)H8=N-=ybxZg@EhKtllD5wQfD|Dxuqphtwa0H6O&*c4d_?e{zc&L==0A9ps zeEcT2EQT<);T#+dfSp4CEG(}9mJk)W0*Ie69M^klD}bYv|I-P_5D;bL|7=7fzx=Bm zpv%9P{!aPN{%UP1|2est^^*^NDS1CKxSvYP`*V}fzB&-N3=SHS5vRnxhx7qD$A~-s zjj6HP=uD>rgZO(g8gx#okOs(aP9>AYo6Ldq|y-Vza$((K$H>e z#}JMDf~|IdF4$iBI|V!YtD~~GmC3CSUMac#li+?SEw>x^%xSIO?R97jf7N&sobwKO z=;=GPR=3t|PqfBr?M|%&4!qk=7oV@)>k_w+h45@l8!6gL0I<_h$HMZWy$6slp^4BT z^n|g`k)E0g;3u8*!wJ6-5M{)=hG^s$YnAxASbJ&j6zlA-PRPl`tb2T5OG)>l;O=oq zcY#){!-xt+_}3PV2z;1LFBVE(z9$87IJF|mKfAj0ayaU=qaT8sK4m>PTCIS|dDZI? zaLBx>o`IcCgVL;LGAGLC_e9WiW_k?Le8(&UqNkt4=4SePuUr`eTDg*|o^*ngQD=L# z)Y$;d5uDZY02aFN6q;MxnB*4d)4mifHV|ix_tjBAEGV0v#Nq|e_^?dUSU9CvAa~5Q zSnMstq9$fp)HNEcgwgO`Pd|kikC*^bJl=wU%ZP_QnVpRAwWTX^s+??t{uM*^p^A_# zVJZ810|Tt)2Z*N%^or!{2a1A_oQ)k@31=4&(Kn_xgJv{$Vs7uN!$l>QOL3cRPu_kD#Uz)NGBgN+8q*3 zyO5R52LSjmYi^{`%5@?85-?+3$g+gl+$1sH5F|+-Gm@+sEJ;?*0ZI7mTOvaGq8a;J zL>gYi$aCRf$@7dkAdf2~q7%sV9+5~dWJLP?!4m1}>WSnqt)Z#z*~)RAQ{DHM$>52J z$w+dypp=?^gKED9<4{48`)$ZS_9XYz1}5q42O1dp6WdP_qr~4ZGX_>G|JwNBi<&)( zN9qadsd-PL?+-nCQWx0kS0%lwr%P5X@V$su$q74nZo~U9Xhg!h! zeHUv5cd!c#LFB;jegqscFgyi3W?TMgJ%48EX^F>Dt7Eo$oM?`>#3YT@6y~2?x$$`z z%D(cV=ZRoM!Z_x%lyqbmG38@M%15gurHo;J8UQFL>vk=COsUxL(ZvgC+ZY(S>-FZ{Vj`P%307og`M-z@AAXNE|eg+H_kY|1Z zqLE*|)eg|*+e?3^d}n{PDorKJ!^(^ieZWge`m*3oDlO?}xt5Z^qLD34TsH#QV_>Vt zz=Y${v09Q>OIJb2pmW_!|~Rb zL5zr;d45~bR>+A6K3e1BqyiL@6A^rDtdE!=#Or`w7gjNIA_8rvn27i+N)k;(&|SHS z2uG`Y{ULGYd*$gk!``9}=AzF<^X@tI$iqdJt?1?!n#eQ0w(-f|tz{7QCtT%AT^pjX)F zB6%4O{YqY5BVYEO`bG0#PWlu+^$VBB#~R{c+{gS5IQ?lPx|6OqfhkfB|yXci&RID8KMIVz4p;Y8P>7P$58A(2^U-ZFW}Ii!*P34`(a<{ zW~zEjEIQ)ZPEY_!OC4LBNsk&c+K{oEXvHR4QpnG1p^sC{+vT7>(Q5a zNq^{ynJuDTeJdQLfDL`FG)b3M?2r|oSjaxP+yt!j2_Dn69Bil}=Q6qMU{^u@v(klV zl1e)Ypj|gxAL$P_W_s<$bZf0pA8VyEB=^S_C(X^?K0DH1?S7pW-ocvrDV)kkKWRqC zimIY%#JvNTW^_C}0;l8z_%jl%fa|WPPS;_&u7vBR-J%oW&(3HST(3*czBvef2&Y_f z@?HY1QGo2$I48r0zC$&l{SY##E^i;fQ5c5rJJgl@rJ2t@FY~zE7GBplBR|70zpOEO z18i4RI}d`Uf@MSED7$!rx$X^3*jP+%FxQ#{Sy|X8+kF%` z4G1{!lkMVqTqoPrt2o+jUAoi%g~<-uwxjLRLhpfgCkF#d=G2XI1-^&UtmdpMn<_GW z@&i-sv-FAXN#pTxIX&s`P}hfe9Uf2m9|4%^N#{An&f-0*hu2w7xl6k)G27D3Ua0CR zIjHU%L~WWS(GIG^63v}XdtG-4c%Uicpt}D;!0MT4k5L;!dOWra@}Rn}3N(J}531Ym zGB?o+5Gc)gTCip^;lq6Zakn??N$b*ipa5&ibMyW}u+cr-Zl_*MJ<82sXQX;swbC}d zua!Yd11@1H~zw&{H=8HnD0E&^8d{%UGN0ktM&ex*Pow^*Kpy;jIertwzz z=gg7X<{@nXGNjr)dJx%FCGA*Mq^&@m762iSAr%gK2nhEvqz{pHcM&@8F{B^xLa|vY zV{wZ-hSV~mm7O`bV@OX(J=R*fBQzd-4yirL>>wOI>UDN)i_0tsrCwvesYMIq$k7Kq z0vmkf=tn)kTud2o@|@|yKQn7c z8O1@3GRya}5z?3M*-jHRR-xHmDs$xM--c5qWMSU-h)05t9Q~&PtqM4DG;UR~BS-&V zfwq-Da#S=q#4H)YCRaFqi+aVu^wxP61DHH@B%9IacPUo%6~LBz>#_4J4;ZoFkm?45 z=I;b}$t*<9BS*=*SC1UUHi?B-RD?g1BS-N*ZlFAJR8GbmCFW4xjR4ZQM^KOXmsOQI za&+x;)Oz_Ow?4hz&wu3TnFv-L874<-G8KN7r*a23mlzYC4z-0v2soFq8TJbRn14)Y z9yywh35kWpxG3jrj(VMLuRE`PE=a z@-K5h6276bE=;_XNMSi>bl=O}Zhi&obqK%@TD|HUr?~jT^`6i!Taye5+DVE}QJpYY zA{|pbk&Lk{Td%>V(G7zphy2<8#rzKW^BgpaNt&_OE#m+d#8R)qpxsR%%SGb=Vnjy= zjb4IWM0>E{c(3Y%M&%H0g&0TdUGW#~$f<2w#WP477Q}r% zs|kqf+SjE%(2ZT%tQmZO<r5p=gwdR-dyhn-t%u`zd9HmVEBjFeV zLY3+0A^1FCioYsv$Wwl=<4pL*^u(;i<0xmQp#KMp%Y`D5D(KBO3XYgW3hUa`5(m zQ#oXRRqautzWPcjh9iRet+ZlTs7HymtCbDu9Na)Ob_@Zqu)GGyyZ_s5p4vi$H)aAU z|F;s3At1`g|LurIe)(5BK$m|n{hjik{Z+Z6M1Al}$@_S4Kb4mE1$~t0!_^9e6#9=6 zp&dexg%t>W&VAzk%2Qj2#2P~X6~ZwDL>Zy~8lsV3=+zF;h2Belr_g7ARq;`xz6wie zfro-SuCx}I>!U=MKG!W`AsibcE(LoJ0POVVv2gAL`v^~M1#pzs{4l~X1VkCZJ`&N$ zFW71a=z{H~zf-WYzY04_)CaGW-0l|KFQw&n0UjlKMYU`%Mf=%AUWd)b!t$b>=P1!} zPfZ~*Y1r!~;THm;j95pAMt-qYiLZ;bm-bGv&i<;KFp=*mk1k9hNhla8sSo)Mj!5*kqz~s#7dl7KR%&DGPolb+!<58lI zR!f}?Cjm`p`svdiz(VPkKT6bBM**>*EO~1D!_fG!WTsd+rC1<$%(Yms14Ef;uo5O7 z|LEzb5aSUOK#IqY5O5jsFwWeJ7n77YO7y=gLbimZ^d2ReF_--x#8U-&MRNA9i-M4x zjU8JFXBQArxq~;)%i*)T1pv$4ta&z-&cTpr?|@zxlb)G7c;nQl*v|UoE8&iI@TR-$ z?W}1NQc_T~-hypMIzLB=9_w2+lAMxeTjO2Pf|24RNDwWQ$h0jUm*Y3lh+F#ASx4!H;A#}d5lHDYUN+)9&iw7 zqI*bW0={F?^gY&8?q<4-lqc`nwh;SVL6mQ^nt&*-MDu_+iF!^bBZpeR@ckugMQMEH zaPSuhIAl0jL7w^i9w55U^MZXttICT<)-rOv3;;VPrLfTDk><}o&3Az4(Vn^r2#1`K zI+8F90ilk_Lo>>cMKtoqu2u5uv1>2&ow4ieuYwN{^?@`jM@U-vlHjf};?|1@ME>72MJE1KpLIesHwP*B=sRzVn@qGwc-VfS&UJ(I+FKbb#n# zDav#gf--GNI~Ox9!|JBs8C&aSZ7FV>d8uf3-GkL;)|*o|Zk}vR4=4M?*Q2$2vNO5* z>#jNb*j{scZ+&eAowK@P!>ZcZW6kd9=5A}-=I(T3w7I^PzEWGUVZ(J2m{7*zoLCmF zSce_zFx#p|zbD6h*&2_P@PFA)GiV^ITo9nJI+p5e2ZG!NCzPT>nn4d+1co8G; zh*?h>fppNM%mi09TKWXn(wOxUW-;byj2HA!yYT{XTl$odV=SB;A$#jyPb}h~Yd#i{ zb5_@u2PT8-*&S1LaJ{}cK7Y`1%HA~Wz`r>;HgC4Sq|@Bm8k>zS1C05Gow4^Iw}Y|Z zk@B-)WrhJ>(TF+rr)rwS{@5oXgmF=6wLH__nabE_7T-j%{H_1czWx zg&CHZ>uj?TG0fMp4gjvxlNX;EdJ4wSMa`*Zr_pP6YmHiWdZIPetf3sIiksAKbzqs^ z{v1PxGqZ!Atm@W7xXVOm7=#;PVhlh-=&dWF&n)IhRXfpb6{N`P7a5( z`HNQw1M~wX+Cl!}TQ6$e*qj3Myzczk)L5g_Y3!)gr>1+WYLmmY_SPEQ!p83H&RA=T z?09RcHdz~MO*W^xu>bq2q1IHl+3D5Rtz223T7B|xtuZ#%>On~Zwv2DL;7sKj>=NH> zjE>iOokr9g?X^2QYTf2G0MHw{yxE)SOo4MSMRl%Bpit#;Yf^njV!iO2%XIF=1+-3J zD#?|C1ukSY0SmZNNd~)T;dQJT`P8fjVVO&EH3FXFT#~15uhmH+hHJE32SlVbH9ga- z(Zhr>>(OIFJnofciMLlvB$*}B1HjPrBq_!`G8W1~CGQ%2aOd8OFz-C_A9`wY*;@}I z$a&;f5{@At)S+5vp2%wu4eQjCGLn}&52_uYPd$0*PhDo)c`*B{u_SKqW?} z*M`SrnYJ{0H#Nb+^=@k82_@a;=u8hxUh*Q?v(%+FB$?uPEON2C=2m_I`6G?gaG?s} z(U>$+ls_v-V;5yCbk&+)l=lF_B}z=_40^)2=Ubkd3g9Qj_;JE71cWNa(S7iFKsv~G z5RLp|tP)=rV=wKUVx0ZerYael^`WosQX1gX!F}k^00mkh=a+9N+6pmzjP^pRyi2^7q{G9wI_9`K4ENI06pws`QZH(HmjxK!b*xT5v)xsp9F0 zHfZ9pSi^D+ljD7c`PynRmy04-0pPF!drUmZHAuX<<{GxBmvIg&VKls?S{h33xflVL z;U3MI^sn-bUuLK^DnhM}&&8?A1$%XLEX zkoD}&ih9;ic`rx6AxvArqJ%3(+P#Y*T;If~M|13gPN&_$A?0(&o3*VoQ==F#>DF4^ z+Elw&!?=F@VhzqMshx6u4X)#@ZR6nXrjeKK?CbW}ZTH>qU#te|ZqH92pdM&x5APG} z8?1xgS#1YN&-d-bmm$&-AiY0_p*p?ZYjn0X!To(VqLE*8@1@2GZ`n3n!*Zu*PTt|! zr8=E;fv>UxE|t_SZwc;#Sj^W;kzOdP8Cu|%b4MVc(X!9MSwy(N;*~j#jP`<6Zy}nK8?Q z(mXm+0Iw2lToK9Asw9Vt7HMj}BiAca$+pcOmJcG-r;UMmh~Opba~Y zhJ1jr&C`%r;m!r9XXFB;AO<=8uQU`+|LMRaQ*&wz=DQ&mbfVSko^!G%2VgJRLN@ME zo--Zs4D7hD$XuD3{taez%1nRLGSh#Eodk&qGUxu6&<9DmF$1m@3pFi1VT5_U+0v9j zUB)XQ58$}~K5SrZOkT@8fXfJ&kq58`u#J-rtdOWcPZ$lR2TOyAIiSIil$wMTb%Q6C zB`+nf2**Y~W>ncZSgPD6I&*R_<`VXIKZiFCezR8nQGr(NfI1q!Y_17-K}?*+t=hC) zYt_kGt4`*vy1ziHu7W!3t?D1xotd6)cY2$%Rq%W^xEixR3@VBeTSUTdFY)@|_8cQ9)+OpCNxaGfNbsmn4%s*^Zk( zf21kc>MX|0LHQ%6TnN4grgx(I0V6Uo*+ymu(mKY_z}IHFt*LF|g>9Y2w3hx^2m;d( z-)7C{Zl=qkdFGmJDYDxHp}xUtnzt;AU$ADBMp#C4e~N(TI5>8pU>25XF$zks*=@m? zezd(hNj`!M;^t^;>kee59z@Q>chl`IB^)K{+L*-c=XH$sx(1LB^BAov*BI3=0l?0* z3@mij>W=8`SL5a?2|}w`_O^iek)GNLh>D!gJ)Ce10ii}NLeny8h(`X%h1vo7e6E-N z&R9qGSEp^P72#s0*nG7Zh9@Lt>g-B!Ezfz#b3C9o+sz67lz~=!88k2}d zet}jyKo@8){hb1x{nhasVR|N;W0?T^pq3KgX9xFAX#sv-GM1zqtW~x4w8-<-vav)c z2QmR_v`!^4*5n?FjNnzZEjwys&8>}@iC!%oW|?+dj#62`M?Pkxz7IKQ5Z3!1BDF)< zvCvg(e(Rkl6YHa%nnI-15cG!#zYq{*1pVWPMt(t$iLbjmi&oVVe=qJBc)-}$BpQqS@RWFQlP02x9Rkc*q!Ti3`BiPVd+< zGcnPGwL12Z^Nwz>Ihkmndh~QSvt#(y*_&tU(Pvi8JKNYgdmI!e03HOA(>8b3Lq0UC1QvWa?)Ij5X&fJ zV#G=q4I7?*DFHKkZaf>#wkF0$-eEPAfyGr z-m8Rt3&^2NN8r(09yToiSf(TJ__@xeF!}3%UKhjU%ya}COpA1c_aGBeIs)A-$aI9G z;zK~($p|N8BqR7v5vgb=g1yp4CbrJpzv?u(e^p~k7uK(i_QJQYT9$muE$5@yk&fYN z@Ge&W#{{YyQVysOuF(3WvNnP|IM~!zb9rAA7+dS zT<s7IH?nj1OkvHXdew34V`6ucxv%(DjXUeG^^Z4AH0Rh-iHN?qSpYpO-rJ;%w_b2gk2LRd`eF|;?)lb8pOP8;RUI7nBqL*VGx8vnA_~s*cc_o$X z#D}}^@>%?F+4yUBMUP_f=kPKM1v{fVvG}!k`8+(_74_kESM&vZfA{DQ>Bp^D`ck~S zjDFt+*PYR;@qWB90*d&H@b*abCAfl3{!{pK^KA5I;?GyapRbBPkI|oc^bAx4Pshux z$nr17%X<8II$qY{Wi4E0qQ{jFcG1hb=*3<15@dU!BY+M80VDZAiHMr;of54{qh7jc zz?U_3!KI?Vq}7ET7H4#C=f2aKo&yla%>KvbsOFxS`jI;cU}f}@59SY z&w!)|D2V$?k-W=?Rcv|cZU7z}cT1+Ck5y=~8 zbPO$FEn;O9vN$TE8b17Z5rQVPr|^ztsXP7TgP{!~Q)AER9jlR%nm(Jn7rZW*X*<*r zs$?P1Io2MXrT$oBHMg(nbYaoj z@n9Y#d?<$1qLsj;>566Yt8Op-pMl#NOsGzpwG!69uv!IC}q$0lH<=axaw zKXU2z`LAOOMm0|BNB{rw+ZvuNrNm46BK^G`cWz0vohZ zI^_*bm_ULbu%!rq&qj8M|pH z?yZ*sSkYTQ0B!-aE3W5iS3PfZ;d76p0G69MN{qdAFGP2ty(LdtOj6k~LA3hTSx<}8DKVeL!A z1fcP2gys9D7m96hi!p`JO`BwKdZM&5(XSZHe&(mEw##?w&6;VDm-Orh*w{QwN!kVl z7L-#H6tJK9!Z;Djg~&En4VmdV6;tJWNW;j?;dZwK&B>r$}GqS!^shHBF+QE zA`ZG*O_9MOas~N&$^(;gt=Szj|8uR;-GH&2S;cT>Y=h*9I2Jroem1P!jQ}r+D%Yb9 z7^tWV7klV0x(UmVfls3DBAPj%6LGLjVp^4o@Mm%&4&KKNl+&d$`gD-6ciRy_I%ELB zc1@SojgeKU6LFqk_3}8Wp5GsEBF@hctU6jsPJUr>_6twt4)G{4PWlPdR@pe|-vO9^ zoU}_HCkd{>KrOLw${AL$Ig93`@*)(t$N#{(yA=aGjo?Tiww$j2o&0%lK*e zW>ttdGduXns%|}mJ1h>&=!6@L2kAJ$#+`U}UdZU$0o}Sm4(Ak3+5mrY-p|K5C7ead zcsgs%>J$g=2#`44(;3|PI2W63NsXdQIs*2^xd6b2saKCzvyp%q`{KavTa0~&Vrq_h-#PS_PLs`#FTTIkck9T9_&yC^?QAo6drvhWVb+5dXCP=)YlOd2W5PXfSBQO3gZqMT=2 zhT}ao6~Ir5@iBy72nbb-qhA2$*s|h!JEkFX8Dn$wda@1r3PdBn7^}qB#n?-Grx<5{ zHMj$Ee07)707Joj=+FQKS|L~Pf2^n;lIu6oyC@V~lPmb|7piP9EBK>orBJ$6+YoSw zTct+`a~ycXT%jEAGY|Sj)nZP;P_kazi}J4I8YJFaa}8UX&M3=D7!BW0Ee$32ybb}E z;U3MI)Dpy{6YBIbAE*em61K&*Xg$MAd=D{Bi0w0+uXh#&A=wvuZ?4%lISYqzZt{>Z z?PC@7Y)m=Hv|mNQAxvArNOB+tIQX!?-4B}jzf2p=#q{I79#Ev0C5g@e2xj6rZ zXykVYe@cxL18dv4I9Tp<$Vq!ucrK2wvI3rzw240s?gGP~`=KCI?rk%FtIox#H{87( z!niTjB<~*&fWszF%JBY5L?b`%A5D#O^FEgQdB3W2aeOtEV*De6>F;3t0h zpS0;{+$yo@1rU)N(ePk2k2DqlEEoLqi4NV0!+fd(dR@c|G8g<~R6#8GpFyUk1^;xH zz51Qj8Pdpt=E~8*NT;6$lwhhHH#1zTvuxAJW^cSb2C1Y^3(5$PM+VrEN-IhNP?}9! zoDcGpoL75vlS5;dneTt4S)DT9zXsxY`h5RM@S6t>K9 zdeMq>9S~nxfUl0 zLLJL$0z%DCuEl!RjM50p2-)cfc#b1v3+9xZE32id9OFL+06QmivCzf5)#qkJp4tkC zik#HlMmUCmP~#Y(xfv6PM*cX4+5!5cu9yDKN!{$PPOIRQ9A7Pl;R#9L7zyqzBkHk< zK;%#0n1@qx?n5rA&MruSzDM9r++ieJVWF$m>IM3vp4vjBG45X}&<_!gAs|$Nj$Q(v z2V`k{9MQ-x&}s+h0_~;0Q=qfIDsoDW4{9j^esgf|losFxeoD?Skb?#x>^~t=J2ES= z&{b=GVb7C}wa2KtrVuGL1bsIE92T%CBj`&Ijr@Wh6Mw%N+Zw5#eM-*ZgCbYlB4@&a z-c)%U4jc8z$80FGYEaD{p3`1lQ>d3oIqT}&D`8G`p8Zv2r{wsmDy8H9p(-6;pcQgz z>X}7bA*ZHrROy_cu|}<8B_(t0P9+f0U~=qUP_59(;q(*&4jE4CId%*El$_hErJOt^ z=cOLN!W373N{+A20wN@nD_#P~gjv{_|D^~aC(X48v9v;FyjTgdUk`Ztt$>#zMd`f= zxQr;3PB?tDBGgKFPX!VVKTV8Nfb^1mA1(?)vM=^tCG1;34rOuzkKXdIX#v18If2K| zbvA{`UkCKM7$#>XC*WXOBq#h|WI{?#pt}W`oRED=&Z$AE3CW=v158Yq?=y4u9fNLl z3|@oxxjMuH%%und_PN5gIyu_v%^7o$a-XXqv#m0v%t$B<+K0o|)52QJzUrrn?Z7X~#yEHK;dAJsO8i^QZ-$Q)2v^sl(pm zMuq#u+tMos;_!;&7jmAMW7(-*QS-2yyWW6$^j_EpG}&NSIWcE7?wGlnw)utww~X_1 zGIu2Qo~A>YoZJj6%`AMH4vKrsnGf#)lJUQ%=|sk9I;0YRw@=e~HL8eL;pKL`ybLcd z#>yQo+>J%>IfSwiW^eR>YQoLEDv+H{|uBP~^YdJdOluvCNwDHuc} zB4vgfD@L>xBkr~n(f&M`7Zp(^6&mLV&H4PEii5%q?ca(LS;46|hv=u`%=B6lUH1_< zk0KS~twQuI=hZR_aqklkmjjrO3{^;Z%t=tlTmFMRR$&1@(;UB%4QqsTLz6&qMhXb}sMc z=Ym^Xs^|t>ZTjr5o*eFhSWYygCD9vYA+M8g48~sF$a52 zjivs6e;y?{;82?D@lcv=&EDqL6ddo^nAkks?!pc9X??WO={38p#uPqVRqL#(O$`qX zT`bU6OxYhm14z@O)dl*-k8X-&7l-R8K*~CU6dRb=g8y?1W08I5T@*HZzy$baN zn`2aKXYY3N+?oZbyOKj{HW8`Cbn3y9R}~e-83Etde2|n8^Z~r@+=JMV(hL(#=}jYG z^?a3QQp-Y^AciT=SGhnSm;dOR!pfNJ^hv>=Gjo2MhqMLAAW3_yPTE_mB5i>lmq*t; zqi8GS(KW&jgtWqabWPpcoV-WZ9Os2%TXAB{jL4&FEPhawcIM!Yt~tqS5OCjd@JNKy zpB!pQ)(;jM=TVEcp@9X%RGkFuEWXm-Vw=a6*hM&x8xC_&&RXm{>|n61{BvLdmx^@A zahVyXFPqgV&N?0wqt7@UXrYTFi+;Guli1tIdy&56*6|uCMy-r#y(i4(rySs*R>)H1 z@0XWHxfJ=^1k6~9ynDw<6{UzM0lyjc|1ntXe>E4_7vGlsfUUuj64Lkk0{E~%m7$CE zz7H`q1~9o&Hd|(^o}xW?vrydK7f)a~TkMwQaG-Jv*Oe-(Q_)br4E@#3cB620%%L&I25b7*P=+f3#A{xp9 z8B%}sC9tPZ%*t}hah3S`vI#Hk1r04*j%R;$u$^NWxA~wL#)734xR1D{{gozydm^Tp z+;_Z1Ao4F;t#xYktrP7=kHq!z##n2nivd{-%r-E#>lW55|L+m(>C_l;@d)9z7)L3T zpA|C@qr1Qy7d80y#1>xuw}bft+r`vu-kPGTQ2l zPQZ5XBGzpfQW{Ax>#3g_wa+%Un1pbhA)Lzqu+w5dQZS!N_=SKd zBbdh^8u0uC9p=nDz!8>ebC>M&KMV~Ux$KL2NolW(k+4st0{ zwair8^LC8D7!`WX_fFLT?h+@xbT1D?+V=;jpcw z^Nh6aC#DH8YOw~Dtoyd2ASCNz&sD;@1@yRFMaKg~eArR|uw0+OgL68IdUExJH@|G_ zjL4vZq;T7~e*6x4PpnY*4zeJvP@uc)bbU&$q(LZ6TcP|o1EBrAlBRTLlQ?MHBwpl6 z+4tv`K^m4$>VCy3`q;(U0lG@x)Y zK1Tgw;r!oZ{6ATYY-}XsQ)KjaI~o7qPyzfBFF(V}KjP)@@$$EDk;(Y@+Aex!7ZoeX z`1CPJ3G#jJWPE&CQwlulKf%<$NAeoOw#8128oy4%=aih27NXOwI0!R$%N|O@lKj z6Sr5U-oIon6L!-ca;4v&5KO%oA(?)EEOs*Q?&xBCHsJL8CySZeH2prsb+&(~C|Ygs zsV&#W(*D$anWHrPhDpM-2@Z*|`f*0z{JsfT>6^i(;djist3j%50#=Y3d>X!`{{9{F zEY$(2_$Og1{`5q`HbyK8tW0IUB zeS`(7O_JpJ4-&1#%;vI0fAG%7S2U*}?R`zyUrY%w<@4N~T}TO5oi?aaaDw+~CpVohpKO%Noud-a*k%eLT@DujTH z_5+kQ#*Ry3s?5xF)imX^S?gMEwdIh-GCAsN%<2?R)|R8br$9Qv*~q!p%k^}0y_^(P z@{p;eXPRwGJIq0fkR;^u0esl7-4Ga=gnVv!U@{3gyHl!8LOx7SLQW-Zwx1*-p9&~) zk0mx^G7;I*@U+JaT{#T!l2}{LMC8Xn$FW3YY?DYtrXu{ABqHyl$f+g!SjGq9?Bf#= zR2oD8hdzJyvD?ftnRma&*#3pAA-RHAzM;6Z#uDW?oA@SH6QJzMCJva9AG)m3X}~du z%}$yrE8H}-fZ_XU){4^j%DL26Az+$Im6+p5&6!NB&&!`7R9&sUqcJ%_DTa+2-qyCZ zCYrVBPW#5z7%cpz!K!$5rjwC&m?%2N7|BCMmbX_+7MXx}F8~HAklr=2g0WCa0q>0b z35bi4N~wjQn#3c9;m166x%9iukBQZg%yRk&VHg5J4Z()y1b+h2P_mpz6WMcuRnqHO zPF~6r32g^lXMeRKFVC{R@xe7Tc}SMYwOrQFz83O=B!! z|2yOEm~kif;dgt+{m=*$!9jT04=?-RWhq`3!$r=x<7>OXK8mDkeH*H_1jF+rA=^1h*b|7eR8V_Sm~3nnf0aTO*FdQrZ!|xpR%FB>&$wq zLFlz6UIb`uV>#&|~?nFAK<6Y>Nh5*aQ2H3C+bxgRAQY}o4!S#p{C zOQIV|m$}oFr}WySeuy0b`)z&32((jBQ!Y7wAuaLblCv;rHdsV2Ilm_souo_7?~H{K z7OFK?(BzVH$mr|70~#P1?A?;{X=FBY{RMP@aD%dHDPWm7%yNWznjz>1dT6n_d^DjG zWVCn|zTX`>f+azvESvE?r@yQ5qj#qKt|4Nk@BQfJIpmi<6EJSGy>%A$;B4`>qr7{FU zuIEo@2PW6^J2R!*>-k1eF>*KLT7Ct($DJ>4(35NVAxH;;YYakL0G=PkOSqQ*E41xu zQ8C0xtmV@!{OYacyZG5dP}UEV@ds}Oe=7nAf)t>$(JS~Hcur{=N29&SsW$5+m^0rp z)9M)lb4-**u2B=9}F%ODKwvB&gy4l`VgVGS&ZRdnawFy z{REH@-54Gj5W^oWjr^vNM|6`I@(58!`JIvFF%!=~)gs7ZV;H{%;O(NOF^2Ja<%c{L>dk#t4R6+j)yc5Iw z)*q4`C2i{oVvpM=nTW>PRy~X6*z3S5QjW}xyRP1XWr`gwHzf24rXj~*Ujx(5jbD_8 zgv~$H*&$^H$&Q{RI=YOt1Rb4|oT#%H7Mc4ibE4KDV6EpEkV~8sH4s?HTz{ikr>v+w zuvrHOkX*AC!Dpk!6RyN~!%kpnV{PPR-KB_3hq@R50|BUUBOMBFM#)|Bbg212DBer@ zg-Q6%n3hsVxJ-t+p8974LR}@ZO@`Wq-B6OD$d$unDAk9PMG{rw>j_b@v?q3jB}8?8 z>*N@5Wh{vUWf*mq-V(ioghEmmShK{lTQUa<_1JFq>w%CtP`R{N$Q&qcEV-FVK_Qs~ z#fKZ+V1efr0lnXKpjYjVXLjRLA_MB>_=z&0=u_tmC|c(xHj+oqR=nNb%qz|=OysNM z&PV|gYwP*o;G&S(#oCbBMfl6ToMRjaZxRkMA^eM_Ml)Y6I9IH{@VvqE*5$mPr}I-+ zsNW|`&BDYL1D8B`@X1epa`03$U&jj5{-I1)>;nMj!~f^q5;J{S8IBOQ$x#n6oA3yV zi=88qWd`$hvpHo3vkJy7eFpQ)-V)g-S-&waIzF^v`Mf?!TBbekKPg6H<1XXE-&-T@B?AMjHE9!Oh(AC!%!?Ri&l9N{~|>Yq|zHQfoTvX0gEC0sH&bA@7upJ^S^L;VYjUzyZ;mu7aC+Kpts0!5HUsHk-^PTdl@JwBNf}|S zL%9(%_xwx27d=9`lp7GA6#d3Y7=7|V{~;l5>J3J;-=rX#g`oXXbjViF7FVo|kZU1m z9#*=b%?IPm$wt30daX=>S#}{42=`XVj`L)PjY>W_Oi?>ZecXRc2phk}$TyUNd=}z% zE`U#A*RDu`m4&!@Sn1-n$Q$`N@q%9&-L|K|FuT|Z#Ct1tt35f2c6)sKm@>FB{9XSA zA&pTFG5Qu$(APpPZ%rqc^%PiH$fbvsE|-1M zJGHYN^*vQYMk8hk9b&&B-3gpggJN%n5x)zu-?yMhO=A=o11v%8H);ywM}SX{>t}o% zc$M(y9%c>^3?|WQY`H=|+>$%D||0U)fmVTXeJCZ@F%awP-NzoI_cfXEVv z{$K1y@<6o5fMq!*%I(9~<$Ouu{n91ENEhsUio(UVSjQq$K7L~;XviD%#;$Qx_h;XX6vF@{_X+Ayo8-e3gX z*Il8P=6f#*eT4bOo3m%WCu3U6WREJ;M;j1X6uXYyNUqo(1D08v@4I_NE)Sy~neY31 zh4#w<@a&oIS7A4-xg2V~W3?>Oe0P59M9+MihKZS$I6#?f^&V@6WVY2;dA6EDow3%M zo?!M`3)-3PH;;ZYyUlMg^8Q129~a zee6bZo%R^8%-VAQwpZlxFzS)zURsNmDH|3UTwVfzXU}pk$8K12In;8;YFVV^?)+BH zv)s`}ikX-=fSD}#=dIN*vjxA&v*6mQL9V|HsTbiv74c{gi(^LJjCh-NJ!&0+S@@`j z7$Y`!S3{(&-$)t~Ve9c`c3Zyy3Ct(p;wRR_n`7F_WCQk64{bnXvGmWtZX~w>9{KGp zeZ5!Y@-XU=rGI{}(0jSGBkz9>xfJ>{c8~|dhKEsT~!te-pKE?*~yD+2w`^^CqLI+ zeUl3!e}jN+7DV)wuLZ-kYH-|fbi|%CKs?Jj_E?uXmciDyy)GoT_FqdY{&MI3zoZ2r zWfxi371>RpgfdNm@=wS4i%;hD@o7}HtcbL6c zi@ch>9OWmO%_%v`L$Iu==O`azlECkqnOD4!9`^4WIi1>V;YEm77*U>LVi{y!ZAXn1C=A+#u znG9il2mnXs3E|DCaX)(2p~qv65Tx;mAi`z-k4zK(A*Q_)ny?g>0EFOwk$PzZLY>;! zZdv_D>_+m5jmiQ&ha{E*kpYg*Z>=z8lyM>sf-wfzWQx4sniED4<2?i-d8Wu2V(cSB zo$Jrn>-lL?Q(>i<{WcYp`8Ygopn&BWT#IjuRvQ}`^m;CpbpZg5R93v1U0D|reYmcA zzcB$hEvB^;eUz$tGWF30gsQ6UcR@HT(!Ew;HW_^!03LPl%QA&87wg!=YIr11e^ZF(DN9PO?)Nsnj*0o!;)U5+$P zb*W<+blg7D*hnk>GSWDi7KD^tWL;NeH-!?)NF$#za9=$IU>RxT(=lB}A;=Q}yR!5t3QAzF$}w}pnI>R>-}_nfUd8Ct4mduAB0a( zGx{~+&ui)KLv(!|U0;tk4tMVXaN8HUZ@_O0-8a&$H_`RYaJ}1o5!|16uKO1F;y#R* zx8mh(czJv9+dJ^nJMr=^ygY)J`|!m{_ucS$c%pCEeGhzqWxhM%XZJaHc`x2^-$&Q? z)Aa*%jW~ISHedZ=pS<%ZD*u=8@_D>`1}~q&%g5m&Pu{`D4$&ir=(ck54!ulTf^whu za!;Ih@($NgnDkIL$aG*gTryKwB-Ev{qF4dXrJ8xTAJU~Alo*0T`l-uD^DG5jg95YwLz!Y z8oH)d8;1ihudYK#b!gY--J3V=+O&0O_e37*`s5nTR&jbrthEiaMu&>ELSv`^R2Zp^ zjex~RDh$>!ODZ@!=C2~?-0yyl-)Wx-WQ3xtqb*qC1Cl~S7m$SyF*Hv03M2gS0ewD= zVu059zL`)#I0l}yVMY6hMy*vZI8ax7(~he*kL=hovT4Wg)i-Y1GgvA5ClUmsf!mLW z;E1sOF!v8&NN6twVQ4i=<;EagXWC1zb|#%_(Ww@uufxnapUiEMHFwKQdjX!cIs^6J zyD*%z$9gK{tww&_5u*KnX2_bDkH(sY;LpMp>iB*h{@gLs-(CiuQL#{KRh#HR72#+g zREG8mjn-(RS!x0UYt<3haa*dE@MFL__Y?To{EIF=pNFOB7olb%%KKyx?#5`m_Lx|N zdTQ>)s3Xbfog2-=Yexs)2k86q3kGwOP8|kL z?6Y_z_%0q^zV~ zf}q3h2z+&MjB@jMNj}c@?Eoh46zpeVboB-sGoOVGkh5|+ehPF^jPjt8@ruqpPt{`~ zFJZm{kZLa;WX*vM(;{Ivy%&;T31SM^OTX-f2h&YH!rP2ahH=WDpCg6rd{GzyLsyi%(AU!b}{p44S} zT@H%IR{@bGd~7%eb5Nh84oj8L6jvB_0 z8FU(k{dIjsn9sdGo=11q7P>mQiOSf1m_oyrxB!8y8cpo6)YsUn3Ko|<_6=P>dIEMJL)rk&P za)r_#vXTZnyO1e&(bY}`rf$tTxNp_*9L#{=ga_eb?k`n~FwsKx!!!xpyyk=hvqh%{ z0^@U6_*iLyFk&ulbbo3ghn(YdVlHIOrJA@wx>G1PP|pr-fF}Z)1(9&@Fmhv#Qyk3~ z_H*W>gu&Qx5u=Yny{@ohr2>%HaXxDDf`<7!aOCoP;&YPu9w{@zU+c7Z}gr zoVEtU4M446rd`Ccf-sEbDlp}S&;U%1k*5$hpg2)ZR3L=oZ={a-T=eF-+q>8{A7id( z)K+-mGdFyioA5P~-PnFIN$UtT(|~t^(mRs0YgykjN}2&Zy`(*D3oLLn$Q;AO1Lqv2 zMsCz;G;`HjGv~J813E^n1_q{J6a_O;gs2G^YFN^uTQHRNK~%P$FPG(PLzAhiyU_|4 zrZOX_Lhg8BO8D9evqwyNI)ce0JtryMA?Ycx&SsPz1G+9fHn_Ks7=@9-Y0k9go#QVD zQi>(9!Eh!FzfX&Tw$D+W>sD0^KzWQg20p#+mJ6$4^CDyAy^OXB<$XcQGqk$Lsga|)|VIg8%tM}!L z2QX49!oJn%9J_qzT0U_aQ$Axx@@xCJ@8&&Yu0HpVKy3YI8vHoUM zV*~nYH0a44_3QW4Yh_r98pkkF0}2w;cuCOCzf%id+!jD3H_daO{pE2^7Q0Fvr{k~No+eFpUO>^pU5YqSijA;=8KaLG3v zWxdDOVWCR#k22!^E9?rNwE~cc`xVw)M&cUK(-XH!#BEHFN?_QaadtrE5-uE9 z{H3W@VFH~b2ro@cH%K9XA&{I@DuZz?;u04`ZcE^;gX08%N^tYwB=D`&q_x-*ErI#$ z@|^L_M(f{t&i&TybF2F^Mrnl)K4ZhJZo=2jvFIz4w~p{L+2S*lev-WXgi#@*ycy8b z%iGO6P{?q;jd=~=l9xcNAgcvVAAkc$aba^5Cg!6K&B$SysSX2usR~P-^%^KY>OQO> zPkyoww5v!_eqU*a7{s9s=$1Y*rf_1hHorYI2iLzzEpAQW+hQ) zm!65k0)_F9GKsm2u~1>KZw^!V|CG5(@1LyzB)fA7Yc6CVF(OQq2&@O*8Oy`qj2dAONM_}ca^QhYY?9_}u8XA|`$sw6S>?#MI4*x4*> ztyN?vk$T^BB&2znvJF}UIt8=%dTD$@WCVE35SfV680f9T`WCM5JH-;#M6JUQSQCO0 zy~NxMSNTdfNyGF=^fvdG=xO)`+{+e3gUMKk<*y*Q02g7PaV$Dgclt2y2bomkRd6gQ zx(oq9Eni(gA^U+XLXsKeXQ7Eg|D-|Y33gOLND$3NU(qQ*+8ExLnt*~Pim}m^ez?1Y z;R0Aor}GJ4yB-PAH73j^<~zI1@YzKElsMsHcAz64GueT`PIkb6j=qoXQepCJtV?Bh z6NXDQZs$@h+)dfb%y;sBW7K<1C*{fHB%QBQ?^Uch(@DB%1gz+u3DYv6btyyIHchl~ zBBU-#V6hyCa0=@MYZ#CU;y(?B3D(KLZSfa4a2W&~6_}j^h-olwn4^l(Qe1NbJMGy$ zNMVImCPn;3fFJBrL)h#^T$fW{gp4gnb{ESp(7NAV&Kba{LC&8^_rclW)bN2)9_+V# z4zpoldRKt~0d5p%?*k1C=&+$<2+;^KxL8BVDT4Rr^#Tktx^+0vS>*h6*vC1JY58Q8jlIdeBaU zgcp$92``AG<|`DglYQgN1+5hOUj}E18PwY5?r0ICIPaIzYhTt4LvAxn7-Z~d+$Ov} zdi%tDD}?dJ8Z0Ra<3N!IO5r5WmzEd{!c;VzLaUDZxFGQWOrUSz(3J#Jg1&KqcEae! zWVpNSa%sY#&~%aNrvq=>-4>fH5cM1yk?UTwx@A-3^FTf zQ>Y!_9mr?4L3TPU?@1EiJhJG(CLq|?18zm1m}FKP&TTE+rYWLos8e1r9_|ORc1WPE zl_}UJ6w#a)>w6eNB5hf)%`*C@mw zwKc>l`Dz$$4c{cUhBFP)?y(-0J8>tI;#{luu*8}RQJmY)IY(EEbI!Rm2gO}bnEBGS zn$aeL*uer6E;~Vpqg7>V#1PeJRmFBWS{N6y6TT&G!eMl}oguDtE0E%+oX35(<$6E3 zgJ#}l?LD_sdnx#GC15CAtm~8xkmT|1`7YKaX$j9Q00*u#9ndaxLvzB{2JD#3sNAuM zO!{q5xuf*|GfID8%TVw)`sqEeegnQ0teW~o9z^nfK_6#e$9ug7Y1uex(5f)*tFJ>H z6j;9jQwiI7TjapBU#t1H$Lg+yGZ*d4~`hdZ^BNu72mGEM5lJLRj>mD$+I zm5Mi^AP}!q318dVEzy}xq_4~c|h{uj)RAN1LWBkqFVe~|D;oUnQYvRN(YGCynDWl zTaPwQPCydSlUoQ5RcSLITBxs(@U?-=nq0x%TP#?v>5*GX1ydM+$!hByOWStnZ1 zG^afn^Mz_*5W@8>;b3mK*5_A~z^pAyIVMLyY_~DQTcWu+g_PR>FufXig0_T7%b7syKr=Ts;J|XvGs&B@fid zUr`&w?Pbd9s8~$JB}{PNVJ)-)o(jy4v91qP6{=R9a-*+Yg5))I5p*#3G%*tvtF(YN zPN<=x5;!Or+`@#Gyiyzs_Pqe2vJ6(ddM`cDAzs=Q$L07=tz=T_n-m2jrRJUTl^W&& z8w0nKB*>U?hl?K9Z4O*%I$pOEzIL51s#(N*HWA;}HIG8}-*)Kub98QJ?9u!9>`foWV(DkjwU=q^%PSoqR`BlmW8cL%_NAaTw+|e)(sDq$P`5VW zYpXl+mC1NVu!d6GIJ*X6JIVM>`EX}9C{v0xNkzB|mpmGfH6en*qDUILwcu}xD3o94 zQk004?ygjfPQK}I%@1gyKj`hC?2>QM=egerTxeLe$>UlP=xPyGRmp{g--IVU*q6k! z)kY1^3WlooeVtUTE6(f#om$DH&_zY9NTGSBe1#@wHjQX;jpo3WrsFj_;cJvYE;8xa ztSy}w&nD(Ox~wv@iTl=Wspo7Wy&;7uV531tk<2t27+R^11_t!oLL5je5*_P68je*K z2NLRG?+gL~rUPl*X5{>O4~(32AYH}MkdgZ;Yc9lrd@S67yD2sAD>Lgh$yI z=27N4c^>O>O7#H*p07gS$Iq)5>FML+km!hef*>Fx3i3g*i4uf->QJSGsxhKxTZWR= zkoW)}<@+5Xus>w9Q79MK=ZhcR}z2Rb4>n1&*xq$Ar|b0HqgJ3}{{;RLyupTtF~ zpp4}{NDT=Nk@3&hx@F%)t>R3AFLBGdKCF+9p2mj3^I+%S0oYha<>bP4Q+S8bz@akY zl$pU=eSFA!e`v$ddB&+=6U|EbN^Q}oy*4rOT(O_QsG`s;P;7mZz;R)n_XBz&$uj&A z#{6QZc5Mu#*amQ>zI!2zvVOV1oxwhUmeOew6iyP~n9f^gOSn+)g#%Zb4(Ls?9-q;bZP;-;; zwPQ@$TQ+Yabeg%2dzgcVCT znyMkTZ9p5KoGF|WIP4&RVK^e!cCTYx1pg+T26TQ+SLnd#`1@U>$muJyaC(xz#s;iM zJ9W$65lW7UF(&(Hv=%TjPzHJ7z#HyL^=7JOv;b0-bIyoh?a49I3h>RfnJr zp%mIcZW&gesn%SyO%ip61x5YoMJuPg_EcSng7q65)H?1haD2_ z9bp`LAhA1e5LkZ>TpI4b0PF9VpbN)&orYF0DHfsE6I3cHd%HP7BcEcl9S=xw8i-sd zdyDXh4VeRj*Iu@1$MBwA+pfBC&$i)f1}jB>ZWmZTcN&{V3kY&bCU7m9*@Wk=>*tow zzu{zZ7Sy3k>7VR)03M9D25T z8#@rTTt3$Cldbd|hU@e0hj@Ck5;N)}sZJ=3$sJZ;@_-1KR zlq?8-MZ?mj-v=NePd-h*LlPfEpc>6-IFAnxIR~e~`vUdkp|%ng9QK!ybCc7MKwlM) zv(9-BBR2lS1L9!;j`jC+JTV2(YrsiaQ1C8y017J8(m*wjXRFS%@d3osdtktSV8DN1 zV9Lq$SD-jwd3r5WJ*7eq)mCK^G8VBXR0tLQOCVJhoWu6HQ&8ED9tRTO(*yLhhZ|Bw zeVU!Q-e%wA3GA;2Avol|k*;s1>%(+?8(rT)*LTtN-E@5~Ugde~Z-B2Z+7b6ncu78B zEZgLT3^#dxn?L4I?8~^zOxs^zQ#5SU@DsVqWN-Z0jEzxK#}0abkphqglMk}yz@Y1A z4t?P&2Wao)rfV%cQM?Ytb>UpdJV*yrv=!B|q!3~aM_6iD&GpZgo4b27Zhfp;_OF|{rFsn-xfMPDr6a~8bX;7&4G6#k=DYSMKb-1Zh+^-joqbq&3s#x%I4UrbV6E%9Yf8=BZD9R`tXsXw zNV&2Hq?Ah(N9&|KmNl1Z?j#TJHJ~rophuFv-xwJ;Y%15FHZbM{!3en@)(t~=P_E(O zUzL0T&PbAnWeXOh0l+vhz>rr6=bMTYLM=Jr9Z^Eg2MP5#tT|t(kA@S@@PNyaQRwS_ zF4FCbV9^Y6Rgq49%v)JTYmE+68)E|#jnYtKA`jlh0IZ$D{XRbar3E5rB}T3*0QXK) zC_ebL7yAX3W+qHcL%3(YxOE}GKGWLVVB>)cXc4JKp|*mE|~K_j_* zuIfzXMqzafPEP{S71jcLd2fK>hi@QtW2J+Tzz%f{=s6*d+8~ty4wJ)YF~R7z z9GOi4*}M_wkD?wYoZeTxDBAtLJb@emY*dobL>rq1FgCi>s&1UH4>c4QEZ=~ob?@sf7~M4zHDt2$AW zq0C_@E%<{;3h|P2Ap_;FGYSF9T{x-y#?2zMiSo2_7u1GoLYSNl$uRB|aG-|62&gnA zh!;LQ*{Z|jpUPN@kzH}+1ECW{?NJ+y6$@_feyl~Z!aG$?8qRsFxs2YH0sVJ6qc6FZ z%_-!9vK~2Kw+mvDb*xVfOvF=?$_|_&-}DZf%avgBC!VlWz-1MUOLng^;-A8(5uyhv zR96!J90ee$?uo3qjKnvf>%_OwVLIcrJ#WBYzLiJ38a&pO*`^sU9w7a7!&D?5iHvE~ zEjwYo1uDlA<_qnEShGRmj{Jw1DO>_FRKSZq99jj9oeI)re{ zwRc1fgpS7{$_V>Ph0hV?UI*)3qwFm-%Y?knTRoX z$Iw>6%EN97%*ucb7=yW|!@_(43PRDDjRg_m#rUoOj`I_5$jD9B=p`%?syK*x(TH}R z>=B=Byp)koA+E3U#-5`i1Vy-D_&+j9c%Tz(n;}7L+!;)`;^48t*Up`g*Cn)bgVIHk zA5H*&p7NYI=O3daM^fp6&n3gAbY72;4xmAkdl=&~T4n=!TZ10CJZJb$AK5mBL+ja? zDpI66zGB(KQzrD0D*64WXbm{d8S3(a4#85DAFT!rX~5}BRC$H`EqIVdY6xP(Tnlt4 zC>@MG7SyJKg9XM)^+pqS50V-pY&=^Nje>B=Xccfghiebs%q`G%>DEbo6yx~EL`Puj z-T%d|Fwy)N<7S9x+9@d?Dtu785wIpPtRCq z51iWKP13~R0Qy*?V-X+<2kPkMBSIW*IyZ&cI8==tYQ1AA4vOB@a(IgTD7a?(rF%El zs*=-}hx7?ueP^jn#_oB~>SfUGQk~tu>n6Jm=;_(rz6!#rprx4ejLh@ToJAe>>yG+| z#p2OIaQIw$}a1j5gOXWRoWauqPBf#cUWIGQm2 z3I9~_O+}W-sBlnsZr+)@M6*`i1k5OSGwYJl;S3a%lZdMnfT0vLwDg@JT8djsVzty@ zR0bhF{l@sMI!tgoJw<(oMuxu#4@*rK3Js?R&*hx>*s1uH9&`lMiTDycUZneKlgkm=^$DUmHj zZ-9udngx6`(;-e&?H;4++q+3u5u<*JAEP!EHjx1^gVqV9cmZ0Dtb{x=FddwT%I}PT zAMZW^uZ$*O5{s9betHoaZYvZ^;u}B1Z?K8F8%))QN(1^MAzle?b&d5(j1f75S26$_ zJoW9r!>!8Bi0!}3NwIvF$=El#DP!IwPWmic70%Ka@fd3^#Amq>e3ot19PVs}WjZX` zj?q0_uq)SU5G-oSkPzAcu^SrWN@JyQI+_?33vgdKE!(J7b5KuhZYZG25Li7X9PQ=G>k0#|qiTr$C@ca33W4NG=m`z zJ(7Y&0Aial0u4qa1*d*4O|jA3x@45GM=n`~_u;4Hu?SXxnwdj(hp}_Xv!RKe?P|SF zXXj$poN4UZueu7>K7%kQs65!QCLC^xky4Ckt|Q}@hXXEf-z3;RT2hs7U_nVg+X?Ip zgw}CphsJ@7*1nCCu!QR5t`oOz>A!B z_7+v{TAjoQr;ycGyX2(;mU0>}E7{g>GGRHh6A}@+FA4?FKKq1a0#>JNDRi@SbeVuf z9{aP^1{hY@K}L%+%b)h0nMlSM!8stM8K3KhowD%>4ZJ&QXL%0{w)&Vtp){i}H}iqx%SD|NY>xUmR>D^ad(J zV)kZuWk{-Qb28kP6(K3r)7Og#LlkNr3>V$2!zgn{by68I@JG2`(3nJrx8Nuu@+`ca z(NZ~X+KIZ6+g+-(Ah8;>iN>C*^UXXQ|6MM_SO>ph*m1|CQ{A{Ncg=Jqx2+0_F_wp% zUvErWja6{q1aEMwsn}Am{~D@8;XWfAzTlphT?At(DqgT~h|rxXs5Ag1HEj6EaNoK8 z2iQNR;jNx(_%xw7rP4H%5lu^_e5Xr*8Yk$sfL}{1#bvvdIx+8 zsn>dxYU*aR2HX1GkV;AudqvI^!j~-xIu!6XGJvTowIT@59DZ~@K)V;>p2Jk9a9ETn zoRNW03~3Czub?MhN!R=7`T$*D1y}dgczF;mP?YmE;?Ha0&#?OtU0+An*W-=D-FpDs z_J!^n@Y_Q7jdbfxbbT{i?{;4V_a~m~z6HLx598&nczGLM-X8q+4*c{^yu1r9kKpA# zd~wo!H+=3&rB)*IA9SVGSEJV650{`)EB+!Ywc;%oWxdChTB+jE(gsu)b1EZVApu?; zCfGV>7AiP-4{d&=sb3i?=fFg=hO2dTJt-#cL1xT8h25s9GHGAda;)S5lEe3L01T4^ zz0}Bwn-ssO?+W>kJI2wE3G9Wz_t_VPQ!I}VJX>&|F7gtZLy%07rI^~(|hqo7q zJui#)Zrn8tg;HnQ3y@KG=ZFSO7z$9DO)*FxL-JGe+{{Wu6yx^`&~~Ur$BO*!2LPRFsU!LLk~eu|wTS^5!v$|_3~UMAZ7hY7g7Wb3xwdv@%4 zx>9&|KFC}0z|t}24Xz(NFW0}}ybb3KtY1H{{`|GPlVK0A{vLiukNW$2v%l`|@HZL= zkAQAQZL8Kd0<=%qLdo~I%NC1MLYD2$>7CmKWnB(E^JQiD3!F4j4>9tb&|UJ7X`#|m zk`#-D?i>p(rB8Pw5nFB|D@krynp$ML-O~u%4$5{5N1e0Uv^wqirQ&+SsR|R#D6cL` zgJk!%gGA}hV|x)qFi7!rhfcW>rA_C!w$dV5_alk!K8(ft5= zm+lAY`XRc0n67^TS9dEa%pbDH*zaD6UAzo07vbf6xX2>Pc=Hh5P)Z}y!!%mq!!9a! z4Y;582T;7)id^bksFxVi}HnVSR7y? zH+pD6&@+t}=sY#;6*jb#kh)}D3izpep2nC7xINZWn**!T&OybA!P5hlgMulUIl+X$ zJwEEjSAcuC_vmZz7hJ@cfVmhkiQB6H+ATBv!&pN&U#vKAZq0D}C`t%~BmQtpj`)Sm z@9`O``aV({8-Y7?01N&Yj0^bX=se`rxNAgf?p;XYKf}u*yu1i6FUHF~ zaBM3lB{HO(j6bJFC$l+)`yqJ%Rur5Q$G{%O=jvKTFE`%|}uJ&S_ zRC-<%`fOk|cd04Hz<-7x7L8G^SVw^Lg=>yPa=YEp6~}CY$0wnZdE?&S4;LFaaywTo&U&8&!te%PxfsjZ1HZq%IQXTZ2AouCx0W*ytyP25L3V z**&eyIlD(Co)-IU@#WG_nVsrHEw7sS{6@1l(_RGE0q9H8vgRL$_M$Z-tTMW+MvewX zU7~cq0KjB<^7eehgV!fNM7O8%_3F&s?piFuF6rQ@F_kVSM>HAT$Y=f`}&$X?2r)X{+D{SQr_irS0Dla)h+0_jGAf?+I!1+v3vp za})EPO50DZi5(+tzXf2{(iYGmM%q>gTmK){$i_&U2lIz%VP=rFqlIm2K=HJ~M6|4( z_9xM@rry(KO}$65c7$k&OWKnVy4@&{$*!FN?RCwr4FND)N%N@?BWK45Ia_6oYK)wD zFi%MfGr64Uu1>5&`sWZRaYLgehC$}TdWcJP3>ZyxNd{mQc))W>^Z)z{3EV|RZ*O-8n?i~r;)8>Qi3-{E-_DZOhEFxj+ za`hG#u7Tu0OkfiGFGaR5Ze=W0^JT42cS;zHB#)SwXCaB4FiGw%5sJiV1SHXye~&ve zH(7#QEg`rbRXBIU9}yiAt^6hQC+)ItU?3)H?L`p2YSi%bz@>pz8iBL6=tySw+i1DIW*gEn(GP$;E{Dd3z6Pz?i~_R3o3%TxJj+8~PxP7r9T zOx=O(Z`^lIhYotHdRh+DEVj$U?C*OoX5LK65Hp?h6W-pRVy${M>=VjEnUY&U?rt6N zY3>x)2{pXct81VdWRZgg4;NrN66K@yLE;%aPvvbqc8U@wzUX?{^T)|{Y0nY0%qKgK z#ZbvC6ezIvTM<>P=0i_7%u1?4fhO%r0Nqq5?^gbM?7%<8<_5)TEw_Lc_!YWLENZ_#RBR@ z!V!$k)GiZJw8d4Ll{t{L&%Y_Sl~VCE21c}M)nLIWo!3>I(>JBQ0Ig& z_JvSKmzMTYF-SqcnNm*-?7aJdi>IL^*yN{%#`~7&d?oiSkJ^GskMw&s6wIodR8h@}G zCu$9Xk3Iw&Z(HD~yDjf5KGP6W=lS5LZ-bAckFGdzv9cI5dz#QwE=?iAb1rOKB1v(e zkFbGIoI*%0YHJiW7m|pG6En4`h}D}+cS>DiT}<~^MRZ@EfDD|O1Lk_YhEHIh=WpzSwoCNbRudtWXY@vtej}}}l zW1dsH`De4-%_l{4Qy-}>z>)eIX#%B>k%al0&#^?j0|VP+%^20Zo1{hIqwF(*Mjq#+ z4{}aeN0N-PN1=%y@CP&96QaBRP@$tEkVrPd!Z4)UDJ@gPXj*kp;+qZ$zbPXi1djBk z<4mNCucPzk5&Dnu^@#X7IkHveJ5Tv;AIFer{m=myqtrVv+?pUUfzV4hw$BYP0r9<=roYRhJT$s*9jgjw5jnNc^8ao~VQ)8>~6E#LdKQ`vR0xomAB7iCl&PN_& zXdi=%GSQRSY{^~rMP7;^AC!V$nX~aYQh!1S7q;;1U|6a2{_+j7+J0G)YKsN1p;1b; z6~B0Bh+h_YHDMsb&;KOHn{$D*hui_W4$*ZzUC*cMg>=1`u206R9DCNmR~I$X9mG$` zjrEE>v^W7cZ}JJnrcojHnW1PXjbvEjz27-mo)%rU%2=zK`)i;S#Yen(g*= zcy5B0(&m4mN2BJoLf$)MveKSUDg{LMAc8;cG-uM=pCtejPcnr=4x2OJ57JsBCBKr$ z?nz0ixOIG5)g@AU$D+}&NzL8Bnv2m8BX?TLp1wkN_CCW(fasIiRZVOPsSYtOOk6|m zGdaAQ^|qICc-L&np%~6ox@xJ{rieW^B^8p1*ii~uNyPqyHD{-so_ffmMh)oC(xB@} z*U@5n{Jt&TDRUs5{$QU%C>Q%+xMwDRW+M1uhOa`auA9OSKudPimPyxErciN@IvBV2 zr0je$$@7kul*a8{tT{Vc7?Ni|PcM0=?c1iT|AO?X@w5~Y$TPy2MdY`bB>sR=rf8K9Q z;!b>SI`7}!4LlxNvZHWH+vm^pI*8hels!)-YRhy{TgsZVBZOi24Cv`a?X-P3ZLF6@ zTbKm{5{J`m|7!}tJ4yw|<&WQDVz`x2N1g#h zS#ues(SV*_8rOg{!Vx7Rn1SII63C*X1YlCg;i##A)2!mgl@IA~Z zq0p)8!uO`x622g2%6B81Q{va9?0YhyJ4PWU3EgX0a~XxsfUXOj%@TXeX@17kTaO*t zv}1S~Mr3L@gS#Bl3!@!9Mr`x~L*!Zp1jXD#*GwSgg4D$bMN_mrh;KDv-C*1FM+1 z$=Vbho&o2MQ+C_*XbTDu>xB|iL11M3E$f%k>kMR+!Pu1wKqBLBSaTW8f&u+k8ua9m zvNLE|c|a^FQ%Pqy`VIL&C8M#tbC7i^HV7nnff4$+=cSt&#>uNB^a(nlSFq+X654>C zp3u(DiRnhER<4c1i8HXVtTYb0#&Z3eH(#?ZxA}U!Ogm6q`GAAvmDlB*W?^tGtR7PF zZR7{AqJ)Pl=SEv4IQ0g8Dd$IFM-e0&z>4xXe4BRa8n0%lO~&qX8T}RRbVaXDQ~;7* z^|R(OvfF^3p52!#mC^%Mq80GEQ>xN#SE{3pC#*w(nsGQcY0{~e@Hg$SpmsJ;j5${^ zYALkr3Uf|U01|Va!kWv-90PiK=A63~cQeD`E-k2)SSj633*X8Za{8|L(?d$ zHyP=l&S;@fsw<>FSpi6-e;R8pBk2w3=}EtKbG|W+m9y}aQrt)jm9fe}^(@%?fM;xt z!rozx@D}eevQIKPC{*eS*-udb64@)Pxr}5tpzCBe{Monya#XJ)^ek_~ozQ(gqaAc` zb-x+2RAT*R!?iU0<_&g!GhYBbe6ETDI^U5M#ZkGHZajBdE0>oTBC#TMxQLGOj|`# zLlLwQy8%7`xOPe;CLuYlbZ`cYMgzXPO}Ka_Xeo?{BD7|h zAbs>SP(YVK_e3yLHr5j{25G|+xxmg7NxVw_{O-p>r0+4Pi^uV-xi0x0x$E++Dx8pu z(K)GX5Uzt7IXIKm414FtnF6h2C@UT6iUOUd03-!k%bE)@>&v`-mX&;|3fn9-D{kCX zjrOGgyVrie24S>~Zs>WN+r0`WQ+X&u18ySLGs@>Cv1CO7j(n@W7lGZa?&ym$McysWY(sl5PE>L@MTE%8){1y|Iw=(W2y!Ev^g|JAs z=28V93Co*VbD)3vX!nRp1CyC^m+Q261@&!;c{Kk2oF7iNWq{P+^MdL**x! z*J`J#uFFk|W1Gfc`KC6N!;p-U9S8b;O{-LNu+nAYmi|pUhWG5+cGZo0;Mg(P2)R}t zUuSyV87O&X-5oxVeTXqcVVBQ;H}U4C6J**SqZ1$XBA;Sn`RPt*MTn(+PUuT$Pg8WNAo1mLg;AteoQ=NYq7UW#DFuelY{RtK4CMw= zy0RP4(ZcD56Zc2P8cxHe7>4r_JHu%t|1sNX++}k5pWT!m&p(ys^Gbz9#O5Ef=0eQp z2fP!1y#s#H9OjEqbO_I_^o^O8T)An-)tg6lY#9Loz52#Yd(e*MrY7M0bTP#!O+pnj zSmXpliN-KE1$q#VjD|Jr5*S~Ajgzb<{GZFi1f($u$4-y6%4C&G)j}EK*zlO*D$#N( z9N<`=hG4jEHglai!A;n28Br9H`BI(Sgc;1X5QW8mnl3p;M$)hxhLOC~&PWEy zsZ1k+Ul|22?52DgM)4|zB_u@~SaTsp@x@dY*gNVT%L99vyTu$G>q|4beb;Z>lM8Zt zuiLh1^YHG?YuAA&mLOnOaq`s$F3{!jU`og84%s|d2VVzyKgH76w3z7?Au*2jO^8_{ zu7{)Dq@cIgyvz{sVlZnGAjj?9Ce~kt8oq!gw|7gFUUN5%-C^7v?$mtOT(j*dTe7rs zi#%>;Gj3Naj3BY(Z1RoUo}P#lV-RmxLCcp9!^GGaFr%M_`h9vntQqt*>!30vIu`D} z871%+tUOvAIpEoVI?4leVvEwNWHw+ucqw(r$)-*uBj)jp)%$jr zDiF(u(|>bU<*QYveoH^~s#Jl*g2oU8IO+#V&eY&!b$o5#IsLl}FalNKkc}q!(WNpt z*r0Ee{5#pILsAJG5m>91rw7-b=g33QX zUvAF0?*)->_d!MXVyTFQwr8NQ8y-4D&on%`y(`e^`8wU+##F{Pp!53pXvm*ZVED`w z{a)-;CgH%xQbX(dIvZjJWT9mNyH}Yt_-od+5TsK`;HQ&Q(y#_L1AxJ&PV#-z-g$=| z=9QDfsUil@g~eT++X%BtNG$QnY5I$j7*~fytS02zR`88RvsIkVi7HZJ*MV9*YB0A4 zAO_E4JP<;3kUIeGU1_XDK|VO^0~6w99V>B!W{|?0FOS#iP_48AXGhd%k_%!xM7O8&DjH4Q z^G^1JWa3<78kTAym9=y`IFWcrMRUT~auLj&X`$+mgzh1snf`vY2l^{V^CJ|45I%y? z?kGz2q$~?sp`d6R%_h+!GgKUli|GSCRw|1f@QtyIS7bEn#I_fC$K@JjdX*cj5WW}( z{F=B_K$4e|bboxO@AkoAxi*GT7N$iI-hlH_7@*vH7oacj61v`jKg_^K&q>Ab+pzlz zy7x-D-cQ#D==v(Sy06B|gK*hC&wY*f^IG^b>^?--*U|O$c;j&Q9ssv}q5B5>w$Obe z-Fg#U-wfBg-50_AiRZd+fiLdEczG*c-iDXA2fw`oKfMz#@50L?c)1T>oOIs}pNA*< zhTZqT2XL$9*4N-%r;M(Dj3KHIA1jGXG%}rsahV-Jks_kme_FX?Ul- z(JzM@Uh!AD<)VbcFF+%3SN@;)^Emv0nw8%Wf4(LDd`JBGp7`?v@#jbI2ZZ9^@y}uI zkKvE|6S&*~KFh8d_rKsH!1;yv^GobWLOb2{lR zXpa=|Sp0;!tHHSfHoB*}#bm=)ntc&6{q`lN@ zF2t5E)iRY%iFuT}i)Wi?Wa%FnZA$Q!eOV|Hdw7STe|p~Y(Xe(|t3$Q`^^g0O+C4G& z2)GwQ5A1T2V$zZ&){DZi*2fXQh^97_$e&}3J4qCmEiM8!0w#?+_Ti7l-HkQw#OFU~ z-%Vx?`q&WKe$?CeZ!ug`!OI^{+d;y$E)XQa$4B^IHwqp~u}xXaEbD*WvH= zADQPi;P3Xs;XW=i!;q%l-~JnMdtR&2Y9G-oHOn+h?|1jYv+n2M5*oOp+3(RCcW%q= z!Xx%zQ-I?cSz$wNhbHYTlrma?p?qd+>slhAd-y`YRo#zplrX4+up7EoXNbKp4l!>X zZY6>{0WMBlxQB8GmBCST{LcWsor}slev?(lKfhG#_)4$ixCd`UZc1e&cqjo0zKVdq z2A32hcrYUgZnPr7!z(osEb&NCfJ{Bs?++&E_lFSLhvAZ<-|x%V@3K|Dzr9-Pcc0g9 zSYl`0{<{R-{x1afbGW4F_UAKpd)%tq&pb=(_7S4ntjpg@(B%pOs=_5jm;Wtem-kt9 z`HHi(F8iFWb~>^F+-4N>95B&hT)Qe8cP6v7E52UqQ+5A(Wr4;7&Vv{oSA?C zry$r<;gW&?t1}Yd8CC>%L?^(iFaiup;b645GyyF>jxBs59W5@-NQ+ynXz`z$G+{V7 zlon9SvD{!}*qML~zeC`^hf4~PxIQBpo@Paco37Ewa7sXiQU%tX4>*lMTtA=)JEOx` z0y>N%^a;46phF=e9g0?TICY0chZP1LSnr>mp!eq@%yn={(fjF)y&tve{efGw-b=#} zNC6};PK?0v5N&Z|w0LO(THJ*#yZ|mKXmL+QT8vrI;?qTq7XC!YGzAYQ==h@u?jPZj zqT_GM*ztl@$NML=jxYCA;6SO-f@)>A^Qpkc6LkJ!1bGQuQgr^K89VP8PX z#0knpChlKO(D9oQ+&;LZ==h@DmAGVW5 z_}{9QoO)bnVT}YDVOKMx zmS#li=FUikm5C9YI3;7_7%1x?2HH7zqTT+C?b1?De9(=RZx^jzn61@TyASHojO(#K z4B?459LBU<3QS>W$EElT20L7eSm6BMrAa(ai(Q)A;!M${=^oCKT$<|ObipN`ADv~F zJYMt{U2^)+V{*yuLGQsO7XZgjmj*x_Ok5ff(6YK@9?{fLfYe2$7n+M2=#mcjRfIiL97gpKkeK!g*cvejF~-Z=-@Z*2u&z=QpgAJM?-nAFO$2wG~nQ?Of8_$7* zy(dK|UV(va_e}h4aV38cirF+LX0H7`{A({NXhb-2A?yj&ZdIn+L4qEv)ZH}L6b z4?yt4VyKKUibYOmwquSfMa(hL4yfB#&rb!-4?t5MJ&uEqBBA3uXjo{u^9Vtp@w7DF za4n~?zDgHIG7l}U1IWf4?;m!&MX4 zK02x9%dOioRP#Op5v`h0+v59Od#=%P(X#7n#a7vo2NbG~+o$4~6Y9exBwl;@8rYu! z?GE6P7NDIC|FBYN=supEnjf8QYA)JT&Nm>*mpNVE>=_jouPJ!#d4eRV_jq>deSH?G zr&$m=CXl8v1QAnZodq!NCDcY38*?i`doFj)0F zYgV<7#Ud>u4am5Gl-v<9_64US%7Om>i|1f;dBhafB%XsO2K^tTblXB>q);xQgP_`* z!R!n@w`UAJD}teVhYbGq+oP0_zfZD;>>($ej57#Cbh#D#VI^J=R!Bh@DcAB)L5@kl zK0qhZ9Z06qH(3)UsY@i8m_&cp3&pG22;}3@ck5K;4NU5mt{{z|i|6Xg_B<25^QT$gsWQxHf_6Q{u zgLha%o^vr+DNR3G{t@()o0<@OE4vWA&U3c(psLLj?iiopM~M<<~Oe9ap2oQr@m z`a?AmgZs-4Wgh*H0ua4%=p%;!>WRttBkeIs$oM0yAuKY;s1r_m#Td8{T0rRX9CiCyL z$0Z^2Uu+FIg83=dE98=gh&H7FA)^uhV;u_fIwG+UQOitNd^I~3A0-f(u=sFxEW~O; zCM@pFf(0x>(F*mPEJCH)hVj2~CdXTj%CZgP*VdXEZjX?xotC41Y2B8mOfrD{a{}>1 zS&mx$Lfh#`57#D`boS?REa_G@iSnW2Sq0w>@GBd3={OWKRI4WB5D*F?-8Y ztGS8~dSPB%ZEZj@nWN2AJ__h%T(%J+iqb;!zQM*i7T#_A&QwT&REKbah zg@~qS!s4fCWBSMuSdO7>f^)JQle{F;CEwsgtY9m2D8?>EzcCl zHJGyq#4N5F#BK@N6UUs;1nqFUZV)fY8q5vZsW}`^&926qY41wt8cefiRE$}Jxh*^O zs%b&UF=fACK-V|29l51dr8FYG`RWxtqjcYzv7kjyY2|{+Oj<%oy?==yRFtvqs-(uR zcOA1IPO=!u!~dAI=hXFi#Ye1Z?9ofEd40&5UP;YLkhY1X2M6_@m~P?w?J-H{7QV+C zvPUMVJnte9k;@=yc7evTzHc`bLEfa7ZTvnUl5xS~JJ#e#%JN|A9kE>LfuW|~w8tSK zvmY0ndID(g8Ik~lpuo-6!ZI zR1j822|~~tQvyC=k4-`e_?R{1IhTOrGzow**Bbx-D?9)H)0!?x`5)}o(EUc_KbGwF z2rOstKeopuA@_f14SCMFe~iNYu)N4sf1cSnJQYCnX3oGP0D4bM&YxtDNkY!Aw1zzA zoIgpS7i2z8RmJvwJp^=Jb^+LCO`N34A8gjsm0#_UDF<8Z5lScro2((vxg4k-A=*q) z#9_Q%Yfb91Fr8f%4p6gEdi- zO2Vm8l7JmC`Tj+FL=y7-Z>=HEIp5VWqELpz&PN*J_;hn~|6%uJb{KzaO`xPQ5IIKZ zoigR&H}*&+l!sqgLynM#6!|AIokuKdqyV9>VWj{eu@Fn6DL_ap#4>aW5E2WKN{|AC z#A3Vk`jf|0iG@fH$%Mt4ELcEN5mg+ITIq^h&gjBorJMM?wXryRba!@Y-Zk6Q49zKed(WsClT-9? zcIv%p7O5AX>~N&;TQ_TGHGavOu%5oj^p-DJlPTO+F(v$X-(Q6jCI=<{9tJX;`8j(G z5;`V-6VJa{%v18_9l*cP&D;Nzosa)*PsPy9+a@1R3FTwdUhV&~$0H#(|I-?>Cu-8E z`7wcr9QV7P#;`mP`@u%j(U&EjbZ_RF#u)&jCxd(Y^nojo22*}lyhas=B`%s%79j^m zVj;YcOjx`=I~I2lh)h^KFFO`uc902+o3mg6Q%X9zYEGtGds4W&(w2GYU)*X(5cN<10euAa+99hB#Cz2_{D6zyED58`j~T(0f&dvqw*hoBvg zp7KzxJK;xhDA$qVP_AF3C9pK|g20&!+m{88y1sp-4+L5qiNyD>oc0o1_cfs+oWC6+&cD#ad0vmi`M=}E`B)*&7o;Vy6lX!;E{Jmq z5E2Vv{8NCC{@XjUs5W>DbiC!9cnepY4OZ%tVmCVtOnnX7Ff)ibW$MvJtvEgQJcjEK z*!6HpamH`mTAae|1d_6o$569w%dib)0ugN+x^7=%H?=+x#~cf%!606e0Q4)eQ*$Ps zn$iAOidanarq+-2jEXS<=nrM5-uu&nkOu5Mf&pEZ+P;lVI5%|^Dt2(M;IW>OddZr+ zY|`)w{xvPBcq~x~sApAMRgLEY;xzy&4@%tJ>9nE7NWE6$XATZzXZAS& z!p>Jt#cZ_)2D8t$#~~rJ&$NbY%j`5!fOu}tzg}~{ZqCl-z1DO{%H?JLDgdf9Vs3DE zkA2$-xqAaaj&#Ik(Hx%zJs%v&kBya}ep$1guQtYN^$ML4G?K3tA+HpUZr8&6f0~`G z&$TCQ=#rl4`<m5Zh7_(-Wb zR?~#yJ%CrnoyzaBrcP2_5B4H>y6$gWXB{#H;qCSaB@~2*ts&33AS^*aAUV)D|9E!J zf8ClKNjV>6YWSR|9+<5Dsyzk?S^dw}kmsD$YmwEozrbo-SaM%x6R;RS^v0<>Umq6| z^v@KNh4%O*6qCcPAlNbV+I&P7jj^*%g!d8|+a@$owH| z$aBv8V;S>990Dgh??vSyLye7#Q<{unw7m@E7(7B@~1YT0@?5K{&x52-svwn^6;-b@mLJ&39#gmuakh-2-MN+=M^ts&33K&?Pz3(k8uFZrKrmEjYm%@uSuY*b zW*5K7E(*W0CQ(vR2puXydu58mFYK{OC=x%jh8!UhDN;~n7OPkXPXR(tX-NS>Vj+^F zQh<R< zu3lfDnkn)#vUBw5)?`Sk$caX6=#ZhuPqRlUAa0!cqn5Gcc}yFgw@ZXHAHtTu`71KJ=|=;I-uP=tMtAIx!Sgh@&m#n47FT$p3U)mf#}|vm9fNKi3U>W# zb{c-A0}Z=ce~$Vm>(7mVlsLc8xK*XO{L6WUE@RYgL$~9hB2RW^^xnWz1B@GrAwg7Cr%&6h?Og z!0*O92kG0%=nh%8Wf^2#JN5TBZOYvA7|vV<52*;et$9tj&T21fFi0v%u4TZqfoz zCx-@}TFp|K=S_SiPWio<)9(=Y@8Oan=JaK2JqfoANZL*@r$?>Z@^n(pJikOBo+vS= z|BYi#s6&~Mcu8VTzs^q0U(Pl)kKEF#7O?OF7xGgduyxFn(y?#NSkR&;Omg%&37WNY z<_&pVNgyKSv8z$L_&~@Bun(-BFK7j0H2?M~)`a$YETbZqTN5oQuhxhAw`3CsLwjes zwNJLkE}=tlku_wGbaD_qpFqss)c80SIBASPJpfG}%79VEturNSx+Il{!8my^yJiZ* zm_2F#dCrC5SYLxC^UaB{=*a!qW#Q%4WJxLu197ro^vo26`|L4GC<^ylLyi!I z6rQnkuEjW%0)(_q$ENLw#6tKJnXveITCYZ8A$-J4SbQN17BJCx8hFEzPC?`V(1q0z z_oi#KiN-0xM59!JnpX#$#$ZrcpM@EI4*ZWC3%r@eI6|L*ONyDsPp#!E+&Ca@JIyry z!@4a`DdkM#M+9PanAmyK_=&HIVUER2!ysOgna1(Zct$_@7y>bi)LgWwj3=h>dB!C@ zqhieJ_J!H0w_z5k7eC85a*KZ|2eTdftO@Jso19nNWKE`o=Ao@5e48e4PFw4ipJGjhNwYZHaLvNQO3_S6hrVKq(I1=2Z;V=(Wa z=_B50k6=P}Kie9z;Ui8Hh)CC=>kIJ5O1W?jIt4g`PLqiD0z#4QLg z%G5DdBD}7dvhWUj)Dp_VTdg5S$U+JSSNh1p0HpvS=LqU;htfe?-vzAkLXtS0T#;k?;8z;Ux#`t)1m2(m1I=G~ms~ivT z?L6La%Y+o|G*>ysx-HKj$hpcg0ukw5N4pbgW}G6aG2+1TE8-XvIw~Y2T!;M+mu4s8 z#qmV!?t$eb7;^tZ4a8L6|IozWW?}zB3)=A{O74HS0)AxsANHgru(bAqz?m%E1%gLi z&(U4JGhf&b)e3T(YSpF##p0Q@xdU3Yb9Ism^@=rks8^*#qsvh{VQF}0IbW?pbz$ZK?aVHL*ITnC=>W4T zWPo8k@%SrUs%!0WNho~R5abjyv94Q{C#fVDEW@$d`T9uRq4Tv%mC16cP-M zdCH!$3CEj@I&e9ni>8Cov_~-^^KY|;Y*?NuftbCq=R_tYARNV!NiYJMV7vvevYP-I z1JE0-X_Hj_gL4g(0VupzrYyY99;<}1@EU8#b1n-j8P&q0{$I{636EM+CaEMSMScR8 zG^|gi9DK+5Sg$L zVW<=!Bo-oMn*xNS#Zg&k0pb49IScn6xJ3*1%Q75+;^HtgG8yKKUizAt(Z~z_--Ru_ z04^zl{}%)NZp@XCzMX>q7g)FDnFkr%TTdV&UCu~fBF+4vbE48n9CIud01V@A zk$JT}W(ggc`{P*~9R+_P%xwQIJI_CFPub9!t;zGNLuR&Y^kY0vJkR}%J;Dh^;jgSA z8$RtP2}I=B)ODFjHqZSvV3l#6`%7!uBsC2e+lfgqmp6^X&+TzcC>cMshCJtzk!03; z)@w7%#To$76Q{C$p`BbrM&xt$7$%g8)2ty!NJWb2lALjg0W1XwIpcbHTJe@x2oEU} z76-Cp@pJ-_35%y?$3o0pGGQ^81q+x1kImT}_|rvg4t$iC@@CcmXvdi!Z^HX1g8N6f zq?qs?vewV=F$;;=X~O#g>$W^wASb-fClF7R3GaL2m}4>FHHepF!uzi5)O`DFQ!}Cl zz@t5*V{8q8FJ-6T7gAEN>rU!(?`9R%V-;5q`scJ)>i+-*9hs z3cffc1-tGy95o4N`HWO+MMrlQK4?u`!&!KrHKCHqd5~BfSieEp5z|X}w>=^Wy@YpK zLpHpGx1|Lky#ygnnMTGJX2(L9g-lqu*|FG6ATnWbRTeD3OK|7ROW5veUVQ1%r4= zJcJF|sW~*;)C^rpzp-ajj9E(Gm7RJ!W|4aFOX&;u8g}ELHBk+}pk+;>aKFHm?qmHR z0@=GkfxXwh%mJ_4x1Z1*sKs+`7FWtoq`nW9Yx&{`5o4qRPM%)d~nB37m^uZ48Sj6k7#;I`qivZO4^x zV}O0?G!uLVv}HHz^i)!=F+ZI^%;HS&OsqUnFO9aq6axVdIMsZ$2_K><`X{}jX!}WP zuo{Jj3{<8N$iRo9Gf*4DQWeBrk7&}RepYt6AB?AaSAAzu$Yw{Yp4(Y=isO9kqTB{$S>YaEHhKwU?|V8}PqQd2VI@w6a%&X9$>3$;mZbQZm#M}uVhh&2sr z%^>jtXfoqiIWH}Uo|AZqBJ(WneNN8^eUvKV<~-!=w6u~EeP&t^iOHRMXV^-G-nna9 zC5Saa-2rajukRV@Pf$reFfN-ng#OyJB$QmZhCoC*h~0Noj$S_q?qI#{(D^w`nkzjc z=@Re+gC-3!y4lG%o)&}@=Az(4w|o_UyzJXBnA@AL8>LY0?HREbubJ}NGbsJyv}BS3 z`@*y!dQR!(=MU!gIF-p-Jzt;BU6rpg;eKDw=)H7J({FWP6k0W?{_eCSlT?3aS`fXb z`UQizold=yucAY!Q~h6hNcBm-)o`l+Q(BTqs{cb;5IWUUgl}XtObihzKu9dQJP-42 z+YdX0T9a>zkOH=8sM_Jsa7H)u_t}{)$en^?lIbFVkphHddMoXe zMPebsSDCPQS{5uI_~^`sw2|4XIC@kNKhtZMZR?UuV~09L9=Bu{<4pu&7AbdvO1UVn zeWF)HY@aBDjlj8Bx82E3-O+gJcHeDZ78k<3yJu8g4pi+Bt-UKdHJ_Ijgfw<{3Wjvs zdtb4&HkE7Ea4ABJIy}(w_MQ>`m^Bl%sextp8Gx-DEcilN`bidiE-i?}EJz)Q=_9MtXik^8-2bd+ zgvUq$7#z{0LG7QUC6%Q1zY~baak2ZB`<#u%38(I$74g>$ayzG+6SXRQ2g2r*2-96N z&z-qr#{DPsc~-osJ3h4GZ?w-{lP8qWy!a>$OcF|h@Uf%kQot*ti@hW*2r2Q42}Cz@ zpJ+kp^cx#a4oq&N)W9cnz zEk&hb45kIqbEXXJb#nccTBBK>UJC<4xeR0SaI3O&+EXALBZ{>`1IEefIFAzV?HP~O zt(kHL1X3_eAWj3-R%LS9(;yr<6r2o(?MX{*$*>#Jg3uY3Vtyy5h{B$x03osHk?$56 zop?ddgrY-q;`wPgCYk=6v>k5r2Yv`X41b;Wx)dUZzN9tqJ8<) z6QVQsI^{yGBE0#DJb2IFdd~d~^gddc5R=DB8LOFit$y?W&)%27$#oRx+t$6hEcw32 zmW@_oHIfZ-Y=Mkdr{%R|A;|~GVm!P1c6Xk3XU20#T7$tMfVD7yf#pm%Lbwm(BtQb; zPq;CJ8^RT?aG&7{5D3Tr`>N0P=FQIAk=BsJ`q^)L-s`Tes;=&?uCA^=K59HEZPz=` zM_tFLnx7*eTKCS=W}k4vDlSsG!+!=wBSH8s{K1C6=kSMbzo35poBH!*_2;YV&%eu` z#@uqg0%lE0>owf%Wly>TBrYlx2S)3IxL{xuJO1Ib_|Ch%?4-uLfqa>4o(!MOZ?lI- zOZ}4*jkzO*!NH)2)M5?6zL*citRG9T!O1?buvVx6a;Z2vj=Wu!{9&L{q3=@o9Kz$9 zNDW$bb9b5@MmBY)*=)5^`?F5j?z)m<`!RK;GgZqSZwuJ+9mT=IKv2!V$u3jlS}3Yv z=TYtS4tgXz)HNo00Z+3c`)1iuoP1A4LG;*rU-i zT6eluZQAiLwrEEYL)R!SX^!vQJ^eT}CkbjdTs^f@zPqNoOF*>bTqne|Yymrd;McXQ+ zu}l^I&KM0Mv+KuajOB}04589BrqU*cf231xIpO_Kry$}C?{M5vvzO{Z9e{9HJgHMc z^yrtre@DN0T8WED(!5t6pLvY5v>W(lqpoAr(@qo+EeF1qtEi5rj4SqDli$0qH`Beh zFjmLJ0h=4`Zr9Y|`6If)UU;32!2v5jmgz0?UMQJds?o*PgJz1$4HMRQP1WEhyEh}m zPZWqM@mo^^erxg`e$DH%702E>nWapH8H94JT0!C z-F)mEy}DBnZj{=n8s&ITPV=_~`C1)^5F*1#Va7PVV8xKBuxU~n>Xb`vQX1$K#Edh# zwbI&{F=j8u8pP9-n;1UPDYqQMpVBFa8E5#M8>+a=IwIC@nlVn##hw>yYhv*mI^~aJ z@oPH;G2<+5?QZs|8RPWgh^JID!$00Bw;aPi(kX};XZVzURKJ)po~Q7m`dOzub8P={ zryypW?engKA*Wc44kl;5W`T#r_)nli&h=fV;mg6MHB&6Na@ll=1o*N}@>=c9(oV}fb zPz(NgV`;54kb_x1XN>RMI=Bh+_njC%hJO}^H}lV;@CN=_9**+Qyl|L*W`+Ct=k)L( z|11s*{Bu%x3;!$#5Ae_2@J98A7tZ%BlsgJhoWb$?W=rH{{9%+RyksZ{K%t*hUzhCY z0vOHF_(L-$>f@pwpxHouC)OKFh zOuP{LD0w000ABvxgJAxBGaujNjf=bZnBe1Sd_0|xXW|jm8z;-2ORiSJ{m%XM0%APgfl|cu znfS}rxmz&hFE+&8g0lNX+}$q{;eL@C_lsn?U!>3dBBAaVDR#d|y8A`a`HSs;xA4II zA~W1CGK0U!oV$f9?iabjUu^Nag+1;U`Q(0)VeS_>=YEle_E){Jn7dNoqzFKD@|ly3 zWo8p9^0sTRG?vFUN4}OPvl}N4$e)Fk5+dnV$H)3hqmy9~m^J3^RllAyskh(gB)F@w z2#4=+ICi+VAK^77-S15SJd*Hx4i3*^t8G_f;b1T@ny)B}|E_QrT6LG~V(n@yEmZde z{^yCtg51Ce1OVG~lLsani*xy6skqs_srNVLm2fs=phlq{S=V<$y|F+A(5ePCAz_~W zX}{0MMd7M;5XvIqcYy=E9ls=h>Wx_ga`y%hB*58sS86X9F%M3?*r`Gd_EZdz)p zMphYQFAywk|K%Wc0J!$f0h$-h#pCpOcm#ZWpO4-1@mRM2kJ(*#T(S_4&5Q8JFJ_W5vaI zoOB5ukH;g>Lsj@3^uWA~zsz1)iSHX$;qm8u+{edxtND|U&+&0h4<75+;ISx+$79yw z@ve1vWG=&_@(?__*5h%@<#^olXLxM85|8sXuu=~2tf%@gym~etU*zM$hvPBA$D8=b zZp5R`$2<6#brl}h^6@M@%t#sbVnoQxBteMZ#INwty?9)_36JOTF@G~2qj&@|i7?y6 zTkz@yTk+Vo4UfOYBao?uAD_M*uO4*`9;?lJQ9yhH{h}Q zCOp2v$A(Aa@%CF-pkLGY`U7}%_%V1qIETkm@_5W0WDd?+tnXL&6}~UvD@JSQs{y48_HEX>MeFL-HJj8vha|hUT`q^W+UROG;&aoIy5xL;Dx-$OC7fu`#GOJIB*iVQA zPl(J-h+IvGKut(pAgPY2)ibPB@@Dh2_bw!h?@}FCWN#Jp=?43 zn-IDtgsh3W3|Av>x&ypYNOy-Hnu8Jcv}$>zP&|@VLvl5%JfbHX3$K@vZY$gb#wVYH zQtbQT)hH4kM#rD1!D+j3y1qd{V&G*rVQa9L(eNh2UxIVG$c4xqJ`NpT6}cq2NVYsO zUM&n%a|5FV4&6S4(>StRkB5SAehUaWM(TvSgI{!zMZaK+o;y|1NWt&1;3MXnI!#d2 z7@=9-u_Etsg=odsqiA@+0#p9N78Ofy(R`KDhmZDJ6byfEOSeKB=GR!kSzRc2Dn?z! zst2{GmS~syt3luvy?dk`vY|@lbFsPX|W}3mBF|xW$1Wg4$aM@)Asc3gpAmgY+6Q0q%Ov zsIRneFHH|uwJkh^ye4=Hp=SM7&AbYSdI+}wE3)W$kLqWwNDg_TvA-V?-MYQwGj21v2rye!}Jxl>w)dCP(ZVD(zsK`A6I-G)XQ41)% zrAu?bNT(oiJxYduV~ekBQCtz@MvMrIzbA|f&NV1xTEHM75zqEzTOciG* z3yUUVzuA)byfg_*`4Q71M~b zn(2lsrFuCE^8}ym?coc^rU*?}Cc1Af3|!Qmrs>Fv7l1 zP^-V#3UVtd21ZMmEc9l%H*-nd4@L3tsDTkalM4dXFS$?%&){#@FHhB|1;s;I)j(T| zhYU_q;2SKk>_LW>vy%!$8&ry2#5KrI@lY%{E3p_3YFYV_QYT)5Qe$|iQpuGG`4JrN zV6j;i$GNI9lZEz<@Y(q4=nlWP5^Shj6=dkgHYl z#VVXRpv!YchPNdoGG88vRC_KLb7edfEYrDkwPsutvk}Y@uz3xYBIWO7`48CgMrKTT z8HpkVKFb1s)?+HXEQY-F!fD{Y9gxC{u?|)EpO*lRHy0&P{!lJn|J#-{I9Bk%oPXCU6Tl2}TO#IQBWj;%CnEV7+3iH=xDM1QOljzpMoF3N}BFhIh$KMX&W%+OR4R`}bE zKxSP~t_0;u3BHq6bj@sk{vi5%aD+}P*^-;T1j4fj;X`;t8-5B1Rcy3bRZ3tCKO8V# zf`@`(mR?i97z?U)v=I;)g1E_oNJB`!Ww$`MhY-%&Xpl$&VW4JtEfChAa5!iom_9HC z8HF)=F!&8pBaGKu7^V+Q0RxR*#WiYCV*ZI>erCa>AO>I}h@5m4AY6%uYLgTYAR!S5 zI|$)U3n4|Tl8y+7y9wfh7KE7tBHSIbG40rRL{z}mmr@a8H#!nlI$HSU)O2Gd^tP+&WJWY!bVD`;1IG9HTUW-aT0 zwF4~^aWmZK67H`o+$*Pna;1*Z+KvVhM$7{b!kv~8ZTacQh=4grFfTV?!oS>tpQ_ck zHy5tpZ`-Jib&0sEi+eFhRiGv(GgyExqRi#85sIRI^qU%WgAD znc=TMxS0??zRS>TOb=yPeOg1v4&+A%=(ro?4h7g$@-SMp1Mt3coq^|gI3>K`NHBn9 zeFW0403>|3!7TjE_4uhOqFFrL&EKx&&637Lyoq2b_bQsv&w|}t^&&HSCzVSkQ=lAv zB%oY+gMnf+*hDBX;-q{piiQg<7G_E7mER3{*gcvrO0Z9#@Kq=kt~y| z@mkzKx(c4SZwA^!V8t(QFfU1>}sd&vD zqVSje?0T0m8BKKsx?lXg1ov;l8r|?SBNn<`RDBD7JLsnGCf=E|=Z@V5iIT(_%tA&(IQ$-a$STK{;P;i>7vUiRioy)-sb{+%rUyirr$j3j>f z7WY8;P+kQ9;mO!jQ{#~t34AD?ktsqz2BpH+83O9z4_>2=&2k4S{7?L7EZix3Yzf;< zBf&_ZxG4Jpm%WZVOJYamet`QbW>oc6tT{BJy02o)QD3bw$9*ln7I>(y*5u*7ip4{H zwH6QeRaPVFt0>T1jkvELa*(ZV=e~++r^;H@&V3aXLVdL=g!?KptomwaSoc*XA@x;8 zPEJDZs|;A`tMoArSnjKIG4<7UG51xvi27=~i2Ev%uD)7Hw_nvJWMfvPD&7)$BT_k1 z%&OMJ^QN&7YT9r~4m)$lRcC6<9nJR#qp~mCm_Hm~vKgeRegNVy5;PX;UChxECj0uqbh0sLhk&_jvj4709JnqGDzHFe9AR$s zFC6#271fyHVLyH}7Ab+v_yFcsF@X(Wwiy+y5=t%HD>*W|xnxqcMyd*LQ}mpoV`arE zsnbyohqx^(gnrG0r%Z-JC>;(92>c=z8WsE^WDWi)lhP86IW+_mCQGsBJy(`-Rc!of zR&oTLY@ECeC(;prDY&6nxNS=T_Yw&opE(I%n88tfT>TD!ZY)x%sdp2LQcCTy}AV^ewa9rCy*VOwb8^bdMS=X^v%>(7} zNyyquC=kI6S4hLVSKVzhTwQ#V*sD66;i_}!3E1(<`Q#4GaGkP$QCx4x8Hx&M;A^W3uYb%&+NU{ z8FG9vI5OjW@Nr0LiJ2D!AA_cj_qh9&0g=525rv?!%%}ik`6Icp8eEqqxA%Ub{FdMS z@;6UtoMJx0Ku}Wt!%Fit3s8U2W!OtyC)Lsr`KGZ1MDBJ=J!DB*!g?j$Ci!N%vG^!2 zig*~>jg(l55!FdaAw1t$&$ zg9>T?1vTfj*UR!ZKe`{Qu2OOT9{Ict4*o$;=DI?)=D#^`-~iwzV^=R8hD$>kPO%2` zEFg{SW;;KMMh@<8m0XUbB*V+`dDNFQJ0i6yVx`SkQ`_X% zeT_aS=*aL21>+u;4m%cY_Wnfq4!k^3%515$K{)EoiE_rU-=B)N*cRz zn>u4&m?&s=o~ABHkxpqP2d%htlyip-`< zd6~Vzo#2*f$#6ON_DuinPAqEt5mJVf*}LG~ijHsg9i_bFZ08OI@E13MS973o`B1xo z$Y{oN3tc%l;fs+i`$fdQjVBYznQ6k`GikC1-W~#5RC+aDF6O}kjoEyiD? z`Ivlm`0d1x6!n^+)xcw$MF(FaQcXF;FBBlmSYk4GW2!gw#tHOt*>85-k5of#SZytc;XVb_f5es%-8Y1B32hM(ENj$@KUTGN=DRDa7MH|``2 z{+YpPs_k)PGb5_9A8s<|`h1bL%6(HFYC&u()28tZw&T zyUbc5o`KbQO7c{g`I;^BnISa}(wtpG7BjxYvaqySVmO;zWeSp5e&_8 zqgCD(9!RLg^t)Cioi7YB8%b=H*`v-#Sc|MAFahbPZMh}6oArd`0iU8|YvRp9HXWP@ zE6g%2T~UuQMoCLmkZf{Y$20u4@?X{aX(*=*E@pLfmE~9pAQ8_>y96>zcV~E?hO;Z^ zI0mOyls3~@irUFEvl@(MSCd0aJ;x0;K9f|T2v3x^DXMXe*<8X@Ba*3=21Lp+25=K^ zBYXiJHx^!Bft@TEG>!;+uw%YRx0zCe8|UkiRKsv2*c@oj8bFOj%C$myRwy?G9Eu;A zv#T)+dBBzK#%%84Pl|(9V>UPKC&RBocWW#ds>3QD zlbZ}83d#3T8~!D-5yi%WN|4uXnhx2`UeISF8btah!j z|GF%I%m(;9RJt(r5TNGL_3N_hCTpa>OMf2EGjz=?`+kvrUoO<( zQ?#owZ_O1~X0N>RN>%D~{k4X+hK6HS%xuB^>v}Q|!T;+HAZs9PfAf(OPdH)oNWM6X zOFY0C=`0xqB4f(7Vy~{rpbsVwp_LzzonP!rlYFPdpz-{@gd-v#`7`-i zCZ8FG15pvg;V@e(8Bn=5WYjP!4c?0g*gV}ScRT{@SeLh?0XOrNN`72&s!BEdsaUjK zvFMhzEDGv*jK=W)QtsXNpL0`Veo(|+opdd0%&FIg)?6_e-i6_QS7R}5DS*2n4#sfU zu?8>a7ga~}DDBo5z6V7b3&KJ%%wtRC5PI$WdSz4{du_~LtLHE^#>?Cj-bue<&O+wu znXe(;Sg0nm&D<~X=d$oy%=tq;R=)uc))zh)sa;_Yf3M+#V|4f%p<SGtX63pXQ;%(!m#OZ1S?)*VycsoCBm}*+uK&`{i%c*QK+yL-L z!-wIixez{_Xo!xnQNEGda28*>nJk>k-%}AhpBdT^ynuOxV42c9f^YtRsU{T7fY=PO zAv2xHLh+>uM0^g4R)v|v*3vwSL_kW`siDbSV&S!(St4+Cp{XIqCLvo#$_Xb@VH2#_ zeAcz0LJ`}L(X&!I$!a_%#`=w-yYy)7AqVztgwA4r3)vg>Tx;LPaNFo6%}HNs&uk~P zXQz%6bs2B|+mP`mJyj<1S>jT!Lu@IzPf>=$#P0kY7u3o zEt}u1z`FL@4I!;KeU}pvDb;JR#`9(R#K>DM^YUR{e2gn4pezq!88)1O5mpqY!NSlG z7N58ud2{cc>v}Uo^`b<-%8z2xDya5=#DS4azM4_7dDf^%X1rIq2%Z2^kJgu@)%Y9E z{DT?j$NVT&R1v+oRKd-9h>V%V*sny_uKnE7DwKIu*zl2v9;g<4-MifGMnf4ltO|JH z4zWF^}{ry2D;GchP6N=lAy+z$40K`V9^y*kOLr6=CHKtIh(vshEA6|sKVQ48W! zkq+x5?E7LI*F6T;o%!;yU<$*QS%!6l=Nz?VqB#1cIF^stH&UqDv5kXbP^)Ivs;QxVUX`B^#=pBz^0KYU&?Z59-gZVEBk8c` z^>dj-Ps?DinVIB;vQH$|PPW3J}Y%& zQ4g${hm2;Snhf%rs0xTC&{-3n+~f|S8t>b2luz5tplC51Q`Cu5m-cj@m^{Lenqz_v zwm|7%@a@!ndjT?P6%2vBMAJ#axIyyj^|uVQ{mGmf75EJf2}F$dtJM!y!QRf1wcG#F!7M63J;_ zXw}us;Q&gz9wb!+&Z;45vm$C&Cq&Ir-r%Yu{nSyVxPI^T*eIzWIy-b(_9);xj@vsk zSo(DHMSc%XGc+?FrpJfM-jV7ERrUSir-71;0o%@$&$q z@wi&yadr3wylX7BZur1qs_GXh5#vb!M#AFEV7*%6^)ni*$><@lN-?5WA}pAH zSYqG=si(!6hH@}qb{IpCz)cGNCPmR`Q5;z#|mGUk5%`-dBVSOrs zqZvJdHOIFqgtjV#<q41<^0E(Dnv`{k;RVeH^5wX#8bf=Qjb6g*C4 z7z{;!wX4-?5DeP!=Q>5>ZW)ooUlO5Ko3UQ+ciYT3b|c4Ugv;TtVg%j%?%CM-RP&3_ zq;g}Chz(0<8CbeN*b74ijFnJLy%7SNV|tX!3?gs=Y&3?R+hwLPYK6xnjNtpI>wy8# zIjZ%t+Q5+QYph)I3>&~XAmf+GboWB}tCq%suG&bUGPnloliIkSrJ5PbW4<736-bSy zD3Q>!M@O@(x;9}RVQ|eNyJipD!l$KB-O$ywMohn%ZoL<~Y6D>ETp4Iw`m_XEW=%$} zklkQD>gkq-<1F+A(&$m3%A($4y;QGamQodip_l@x`wrAAcva)(F!yOVCo%K{14Cpp zH&p8~wP9XVwUUe~4p5N}qEZ>|&xyH|=uqvaY6#M?`jke*TR5;_0c!1NrangV7GoZf z@DL^qFyK)Fhj_E$qlNrZ$`l@Ipd$w;vYhrnYr83aQWxz+) z^pCF@&y)*Cg3*iwyNI9;kB(~1!{4mfv=lZ`AedXl)kB?>4=8ONTVXYz1z{sSTe0^w zJ(95KppJoc<*k;*w-ReaPAP22sBwV2MlUE1S2Nv6tYX{kl@~j%&zb~VtfqA9OdhzH z#$8jbjiZ$q*u(Kp^&PS;Aj&-YDr&kBEXh3pmg*a%peG%sKMdLl-K2Nd-W?g}s%)Gp zuH3+OEWUIH+2O1-1r#4xP*qx>pGVbOuH>3%HOGCSX}m z%GCAR%Qq*Zhj7IL(NxYpcBp)z8Y=HqL*=jCP}x|L??>}sx>Y5xnrgD!dV}ZBtm?GD zoe@;y=Wk-;XJf#h5a_*xL8G`vA1sXaDzm~+Y~NZuq&7U83h5;u7_2;EjBfr7VF*_}g00PYfffghq;`t1E%9E3>V0jN5gyMS znhV@HN`>ej;)wR_)#E(7CwdWvF-na{c+*&>7qcH$7=5G@jNnG5k8LW1PUHezduWBv ztm+@0eWw!yKc*1;RC)xRh7XoWfLI&`6%4I!HikxTo#Ey3bSb4=@668<1o)TweQWi) zu_y<(H)u|{%8XZ$O`*_7GkSGSh(f=!U)PDhiFG=mfb6Psv8n}Tc`eW#ZG!H`Nvl^+ zHfA3@JctXvtaA_c>bRKNIjE}~ot2)^4vl3w?PCE8pgw)85Srs5ghjmAP*wHHaAT@3 z>FS>tt-i5PM%+}RQv@68TsgCZHq9T-^RS7tC%ov5Sb)tvh@}>9Kx<;qlQf2}jA9tB zL9xVPGpGmQ#at2IPa%!M2XS~_$%kx|hTW`uu`-9PrNkqMM7^E!hU|}u^M<7KUShZo zu%f%H;iFko8&{D1%p=fb|I|QR-wZ960-AFRlI=?cO?lE>=*(uKJ0|TPl5LB7H!#;ji4RtF9}<(>Cg@z$4WejdO|zQ|2zfePqdiJ=BB@*{5oTHl8~n_4(~cePIexUt~#@4Qrp& zyNsO5jA=Klqf+UAqX{9+4mFqI8M}TK2x5EVVn*##8v&Qi@b+%6NmJm9+i~ZmDY)}8 z%N^O~_PO&?awo;6wsr?JyVx6AZeA8Onk7O!td>Kjv#dXFVlcGG=QTkWQIg6rS< zxGFc!KVfG@N8wTBuHWRSF7BnbfGD`&CoDtWoPzUjv7BGP6`hYd-$;uPIn7jte4KpJQ&1wLl<_>CxDTwo7lV z)3O(S5f6-OFN6^(W?uQX6nK1zc?6FyGj$Aje5EBGUrm9>*DN0Y-YFidl%+G77hg|- zgE%(`FTT+!4!Z=0@S7-~jK{Z9;PGwd5j?(gjCg#vB_7{PfyehP9zQrnJbu^`j~}JL z<3B7OKR!l0exmS@e!N8W=P7n0s_+Rey zkj>IfDA)jJAJ|)thvNf>&13R=I5xM3_Bxmx_Et-d(0W9Kzvb9yms0mOYh`~(F~FXH zVoC!LuLy5|Z4CL-N|S>_q}$<;r?@SdEt0qkMUyv#S$A!v!+d)N$ed!GCBj)i8cI*X zoHB>xwAtsIYe^RG37_QS<2})y9srt>z6gYNU9K{8s z6CA_UgyES*dfFkjHU(nqEMnpf(g|XXr5^K|M18%FrMAD`PsfwuL(D|X^l(&;Pla#A zBv$XA#tHx3C@>K|5>NPw?^S=yVSE$IlCv4y!Qi+E*GxuPNp&#)TVxhJr9w$*S18pe z31`BVY(gzA(!O%C3eRJCbvD0o0e#D?IyRMFJWEd8y zi-e#=?2xlQ948<3C*!hd;;BVKR&^_>Z;9fjfIme zP7F}H?8o5~xd>Mre4SG;zqwPBbkr7SXX7k-zCte30dfsd>op#) z!;uk!Dwl9u^|&EkADq0rbK;lAghG#xXGFOR2QZ2}WvNaYrKYptoF`hZLhkWI5L?ol3vgtb&5TnBMi{p!)VD=ZPc?`) zmgplv2+PKUi&_fLNsIHT`rMW3ZVHA$>l%gDwQbQttUu*_`$xFpGuabYpSfHcQrIpr%-SF>IpK7yM{{iy|Fj1Tou*BW)AE$ukcEd$I(x_dDsqEOa8a-|( zEk(JBdIFoEyy&QAqSa`v$HJ%}e%U^Ve1a-tiZP4PZj31If6qVgvTucoELZ^-YdR$jkN(I9RoUsNc+L5^94YQMl}HpBd(9Z@G@^lB%w zCozx6tSDPPQBx^fo!~o%RZZ0h^HShD-{LE}n2&E;U91zN7q&xsaSEiDSfoX1^O0_$ zv~_~&vUaGRk^UDs$RgbzW;y#Zq3Z-5gX*%qC|gW36h;(@`^Z?B^26 z5leuiB33n}72lti&nK(H`tIMg<|=|zda#glC-q=SdGe941JG>!B;${2J7#xy8@Lp8 zx-$F>>tvvWzA%?#MJ~J0E1JhMR|0eYco$_Svs#D5@~-v9!hL#-7gB}slIn!Z+QJh$JJrCKJ7;HMm}X<1SDOj5^T<(LT4(aV;%tcO>sOs9#M*&_$GW(f~bb0CJ&pM=UCD8GO;hr5A^`z)V zDtB{5IxgC7U6DQm{<;bc#dxLYACD zCSH^RkH55d{8guTm=P~gE?=Ai2boud7cZF+9A26NhnF#r;PBTog2T&G;P5vVhgZx9 z4zEms!>cR~ubvScUXucc*IFE2cg#3UV+}mTYBrsUZz3EEkH z9=jTgu(K#(MJ2ki`=svDGL>d0c*#|l3}=&hm`CT{GE8 zkfdhf4nw2+Yb`KYfp*!vi$aq$_G=Y7*G4tL+wWIR&_}kF9;mN(j_HBXl5Mp>>76nW zNJ@9mqyxL3Pcf8z!4758dkwS%f5|VUfabO+r5h_~X>Y30n|l}gJznqR`8{1;DU-hI z&fzzS-Bf!?-%f%4cPulcYflgTq{Fq}YlqbjQegE%ih z22)o=w=`m$r{mkX>58^(Td3{4C8BsIcN8S0I+?a!=tHK)5w6*SaTc4qjRoTz=8+0S zSiN4HMgmiAZ=GobAGf>ZahWJ2exnk1k)Y>3_hdNq;h#Pkvw}FeX$ik#W|2!$5cVKT zm`JooSgO4kI*N$&domubYKPc^Qy|u35fiyTE{Lu55j#GEX<+WNOSciV%#NysF*q#Z z?gl-W?jUN(gQ>SJTCmNyHtJ$;CjYh5{9NVuWG+()ZC(k{Tq%vh;ZxU&$iwJh@TnfA zQ!{vThOF7H%_YV%?jOfJh~+x&*Em=o%U3ej=8J`%3@m~0v%2((wO6ja zY~7_-VvJSIlWm+dSTo5baEQ$f;)a<3L0?NMVkk;1!nP0CP{7^f?&W;WNm7gQIBv{7G?qVN zAz81}9IsZ9*ZKnPci;wIxVXdc)&hLqT?@^-HC?=QTO24E4`o9u zh!BQ|oAz3Skgt^h+ixF2w)ah2z$$F>I9W=5ngW)e8jxwz2=%+s&|tQ18$%PigJ>F2 ziW!*P#GE&DbWt!O5O?N}6vpaf4yXkAM*K5%m0DL+cu*7py`>>;(jLF0!Dixl2watn z_|$L&W`OqQtFYRLg83Yk6Xi=?FJq$>#9C^6AE&fuKpOLcBf)^&5+g1Qe;4hN^G)-b z?lYfU^?F-)D+WZ>&%z;{)EAlmH$$-{^%2J(J&LvICspuSf~TqOAt#+#Qb)7Dq4!4e z_lE5^s-BZV=)BTIP+cHE3Ax>Ivt>_%>o#1^5fdJAhI(;fLM_jD|3?1Ur`k6~5dJ+j zO2RjQ-%g`-ccLz$Z0{b$T{{pPJzTz%ZIe8S?2xX2UWbcJD|({PBUJTZfD173LyNM$ z_+UFW%rRmxWIxWOFnE84eJtf1@m5bvFmU56H4StkB*!vKoK8IQ6}YkwA(3M!{sP8b zP5(c7mBRV{_M5HbJ#~Rf>Vf<$4CLxqNj`JgmW;VGqPtke?PO!P9|3oulxvu7aaR>C zxF8cSdX1qeahR@(_Uq}wkR0G1&&yV??k=vmbXCSXxKJ)31|YA&(w8Gt^1M*DgyR*} zV3?=z%y})|Il($t8z@q_#-^3bb3F2fN#b89;vkEDS;S{^-`=kJSU(RL4Dk)_>Ieo4 zpal{v_(4oH5&c2!a1da4K8za=aBm0uJ5(Bz5u_h!9+*5FB6EOLRUR$rp@&tWa31%^ zRQ35Z-s-T!T%r&RZmm>GYK+{+u~DCM0mrLyHo{)Fpu5vUwy-mg6oz?z!Zt{?>qcJX z;b2WoyFRpsZaR#M-8o3&?wexfc3gRyqH9{O533zD7C;`MWT1m+S$um$78`Rg22`xJ zG7CC_8!&O<5w0JG&eAyXQoA6&d4h+20F?cYa51K+RuV|+m>mWrr2t9>u>`jg8&xVQ zIs-r{s1`u@KxvH;b$w5Qop4n_JBI-Cm;e@`U}kn~iI-zWTdJsORKkhlpK>uwepIGL z*HnrT5KCyZV5ph%g*qj*Jv^+XufEA#+ANjKirGg5JW8w@GJq3#sdJ#B^0>YLxCJxD zaR=U5M=}wPaw#B_<~y7)n6*JfMQ&;K*OS0~C~xA|&-{AdtY{)WX~|9tZoQvasO@@x z2U&C{*ZY#vtB)i*bsuxKS=?V|p~-T}KufSwKQaY0XQ!40kAgN$JM}^gr(FH>tcgG6 zhc^%bx8}!8A6xU^lmf$>Exoc(@-V!)2RuE_OBH>5M=N|-PENTFQ3rW!=BR#Zjv)@> zI;DNbVTGb9BQ&-0(WpijF2Fc4QJKMs^JBWjimE0KRj-E3=_YT%>D8EW6{C+oMPR6j zR)d%E4J(=rncW=6j%975>T&=htmDFG17Z(Nz1mSARNhE&tHH|}dP64V>PNwg7v>Vm zi@&pawU(;Yt21lXKn(TIxH!sr(xx?#IZPH4$mSS5&Hl=?ku`Sc+IljB&=sSyfD;B@ z%k{`qLpwuHhAirF>po>!@J(%ncH_ap6yt$RICpY1l~tNQ9-IYjVj9b>XkSOrBOS)t zTNgF0sixh}GiFt%fS#^4d-F(Xbh}EU;Js9PC<7-IO zKky|o^&oJ9)6`{^cT5XPRSAFsls~*jCuylCwwg3UxWW!IgDfs_7f{oxQXMnycu8p> zyQO727EHaabp0B71w;x&K$wN6-*D4jWol8?Ygmz3ZwVVwO+=kit4pJv z9Mi%xD(k5ys?&v?IQ3o}ge+;qH(nYMs^_&6su!dXDyMSD8rKu56ytM}H_VHCtn?&# zJdKyG4^BA;jsuNj4a$}BOw~C}TZvh#L}+8uC&`q^rlK`LS&MKet6woU&}M9WEO()( zvbcuV6N)$=&Q;z8M^kP0y~;CQ?6c5fu9K&F6KvY8g;3V7g7Iry9o^x6;(36N93Oc; z2KWg07{)`Hal;Y*7J^P!1nuht3lU+#;&nb2B?7;Vj|v}EJan}+{+4QQG<h;k_tvn67%N0P%b9GxIp4Z#B$sMyzY)O{El5(j`zL6QpC->zn{Pyb6|h9j@v|wQ zIn7Z7czPp~b~9{gzWF>6m`a8GVhRjJ{DpZU{vL)8m~U{ccWiMDP2d6ZjoYE`QcB4K z<{NIU!ancj^(l4h88Y8|soi++l@#NF)1_o0^2dV*%r~Atijw^M-F)*kzm5O6=9^X` z&b|NeGr;qB1;Ci@ks+f-WYsz->YnfiGO(Q%dxV)p8{?*z(PD4MTdl=DmKl64_E0J< z_FYc53-7ehVp{ByPV`5y1PR9PadmWuPa&Rn;i0w0qZaRz+xqsZyVsoChuvom8-ya2 zz0a@gnSA{$J|^+dH9nWWg;Q6k8mpa<=hWj5xEf6}3iP^yekcmP^`54Q1vv9(Z;Uvu zjfi7web}A7Xi76pgEmbx`RfI z(E(Ge)>~Lp=d#|ZRN?t45Oda4=|di34_H&J=(`V6npqcVGb^G#mMYq=x}NN5qmeci@RoyKuhc832T|2N zFq!s(gT|_TBk*VBCb!%xpu7)Yp+j)|BE!qjIk{5mFYy9sQL1$Or@c+e?PoExsY7i` z$|K{|!ay}QfN1DN6D-HXP7*q^7WZsCvnE@eOOz_-D?M($Iw2j`L0!G`a`5iNp%TT! zhBhK*;}zOmUQH89Eina|A;z3eSsG z(75V45UFDjbC0s*Tm|U}uEU_4TeTENGX15&@l0W`YL6=}Q#|eD_JzhG9lpO*$rVi4 z?ia+-++n;rg#D{2uXBFP-JI7nX%1WPj$#n7FZe+!ap|6g@2){YR;fjFvzS^1=y{ddf z$FwvS`PW0}j`*_aQq|jw>mbw(4rmRYgF|1n1WkjUO{#5nbWYE_K}c++gzXk-pqEdV zl=WLw`Hs-PPNBayCHi(tYIugXq*TXkxd*jW??KsYZ5P-wYm4eFDXk?XEU^D9h01jW z^9V4R))lbsq${8|rhs;ph4u)hG-@dq*hjsqs2LzF;a;|@Q{d2RaoE%;4pZKVwmAh3 z&d?we_w@Ln3=PnD-L7i5m6c9qW!Rnqt817?+FE9N536IJ?bGc)M2YHaN7T*~MD4Of ziEiK%WygEzTcR68udy`m6SM*2ctYhN?e0pHx<|I7Zf^?e_F3vglkll)uPLN!ld12I zdsI6r_NSo2T>>GxhEGMdNtZBQXG#8SsheVIqHb+RRDTMhTzq>`M0}z)rBXER2SSJ2 z5n4z=XvjQw(ydx_6Q9tBx6wWB2NFx|NW3iti4{wt=qx^o>k@R5`+=;(K3UpwF`Y$p z`@S!mWmlq_<7Jr$zsS^NhQ9I-{XC=AZY z>qk^6MY&wbl(Is!D&`hDZXtaEi}54_9F_hHe~#faZg?V15rWKx9@N=*tM}^WFoT=L zlYOHsdmOq8EZ`LmaCf+vuTSRV6h2PJLvMAR!QUNJbPmf21(*00ozK@92mZn|;PqL( z55Eo)Wofc4*O;{v=bu$w*RrnZH{B|SqG@rG96p$j-{6s!zl}^TKO_gJ5um78wT@yr z7&dZpic}-o6RWXt1*0?}bP3NxBdi5(X~PkYLkOkJWtU#4BOpU&RIS3SJ22+0>947G^vk(Lo7%T;>dfe^SG|GzK;q=W9{9by^@q$KzX?zE;BSoVF8gWcUOfrn|tJ%tk^1k z8}1W@KC!J-FM8*#cPPt>Lq&sDN3VH1mUgYrD^!ZOs&0rNGJ%}g?x;~$h*c|<_+93j zMFhTax6v!2atl7!Dup9*CYo#)hjEc(Ba_k)`tm({OR6}E!#$ekm(|&6V_#nZN@rh~>S3`PExjp`<#yfg!>PrLJQ{R z6%oeFk)r`VPd>0&22g}=$P6Rq0uH3}@H$OcW*qg-<|C3qGJjMdb6`h>K`GY9%H!$? z57&27A9QDo2E^H`6fN7kG#!!C{`=6o67lMYYo~f#vr~oU+XkO+;cuZFd4lw5$FwAD z$UO@W?QcRG91Hsr>xni^S_USg))5Dnu`eb~j}Q0R*I43ZiS@~^Ow}h%F?I7QZY5Rs ziKBP+beZGR7(i{95u5=oRj~QdLP{gOc$10mxMNGR>>XoIHh6c~o6jUywfN)gO#U#U z9!p3GEt^+Gm^n-wD95bNX#LZCH zQS7154I+qUiz-#V$bS6#X6CB{R5FMdk87xQPHH2FcO(7Z2z^Tyb0U@;-W0=ePNrS;L2s6|)*|fwS~5bNO)6*k zVkk3ej7OWM;?XM&k2rE^$@^czn6snelh8xAL^yNG-(vQN^vzEi=D7BXNOg+=tkdr3 zYVpPNkKYev`d|zLGhmu1mfIZvl;%A^h8gwA=58K4c(vCMH8|-J(8J7ceZ9B7w%kBK z*R-q8W9TGNeI1d;xE#;}$u)6Os;2FurOYCNx`S59*mIgzvQ2uD8!kC&BmzxAnzkO? z4Q!qDzy&ZqjUumCo{X+1F(plFUFS$-++~E))N!5sIDGFJQYsV{xUpzx3$Vc5p_lUp zv_!7c+XKo|fbGQfM_vaiOjblARYz1uQ-jTcsju2qK^_%3g!9cFES>AJotiJ7Het>_gkx0$jUuSQ+R-% z1hl@M;fqZUM$Qc9tcJTC5#3>)Fb43@#elGC^u`HC2t}4mdt7D0u`sk1 z^r#9R-AM&STfx3~1!Y^oEvkaSPAaI`3T}*7aL86Lq$(Kcq=MUR1vh&Y+<~{+-uif3 zO{l8r$m9QswwgzK)zCB@KFL;~o&N9WgpQ-Of?MJhJk?h41VzDJom3$EZ6ZsLiC1v9 ztzbe`@cd3Hn6wn!8n57awt^R`3SQqy1uwD{^v5gsD_g-ERRwSDq=J{(3I@Fj{swQg zEWN^3^N*^U_jgjwYiu<`UNs_1ud@|=P*w2RPAa&^RxlE;;9gt7=T!w?Y+FHKqU;UL zuu}{-ep;VHS)zSnOs=*rF|v6iTa=Pg`*+<*A$;D(ZKgJdPGplwpvfkaftCwmPz=1!o!iy?JBm6xVb}R9ftY}I+T5Q07`rXp+~i@X&Ip2=S)=N4Vld(tQ7h1vibPh%~=A`sVHab@<( zE3b^AstZjG84+Hor5ldfI@Ej1$w+Pc*Y#u`g8$bYh*sDHi;l(~hY)mz(diM^29YIG zOIG7CG1hNHqhwLNbNEJdE3)!g#Sfs5EA3=l?T=}e>(A=e1=G(xqr!%as!7%jx=iG=T4r?E zB+I3G+!W&Mj1e||*k_}1guq^>b8nb3jLq9oI60KtM^Z5Vqs$}BmmO=x{KUhDpGX1C z%>%NL?KNeDp5%ihdLB?dfo{h;{1hvmYA*Op3e5i1(kUC>9%jd~;q96z1xflUn9sK( z=Zh)G`8P|BY?6EAOqbCbt1q|1>Z|Rs!dCm8bfH>DEzLve=B{JhUe|Ml+r-xU>5Lr4 z4fS-p=xV}F03v(x(XNeOD&kzzuKI?|v2UrT6PxgHF&*I>?b_&D?b|5)HuFd`$=18q zOpRwuZ8f8TnYu&sUbPs_qi&~(HnN1>d&_niU?V&AX?3ZHTS)l5c1-#~3MT!~GD)`V zeJ0&%nAFS$y=CthG4;;8ncibt`kj&e<91~KGzHl|vt-L&zfblH4B4JFHxt{}*WI*$ zh<>~D{=MpRd_yN=G`8A+X2CP3y?w=LUD|3ZhTW@I!_ZBah1C*JnO1CL`S!OfqP;P-&MABMK5zff zj<+XbyQbX|^(5xGlM{+K3i!PJxZ`aS8B;h1wBd3hv?zzDlPmkO@x}1OI)Ts5818#1 z7#UVAm0F1DB;hl9E_pPSZZtmyqZe34i%Wse=ub`6?d=XvwLUO{vwW#t2fTq|ljkCE zoCgboUe-$W^ahNDWQ(^%U($}(C#T@`GRtf6Fz|W(Rl{otVS8r+%|o+Y=?6d6n;)II z3aCbKU@>k-*Q91h@wZ!?jLQ;7Z@*Z+Pfy6lg?<@0B5CWfU|7_i2H%x z0Bu8Y;kw+nVl!I6WkplI_flB8_bMu-62w|PtgU;L)y{3 zJ_X&ETe`(J!l(N-BV@@-w6?wxjz1i$5`lC$R7Lr4rO$`y8pS>aJqbp!^$3p^J*X2t zECu%-Zn-CJ7asR+KEESJ3O&%-E=dD23<>6Zh4JN}{n*-wJ^v1)XlgK(4T)Y9YHqQbTSq~;}>=NYI~3SBVfPhlj#d75u!xa8ra#wihY;2;84|B?BAvo8Tj zZMii?TW+&$DP9_0TQ*X9X|%J}Bn9Q!5kY+&3^_3|>`Q^V_;}pO1(5i7DAW^ev%6A2 zbGBLW^za#Rp_atL?P_;OdAG>qt>Vt47|L`w^|;EL7BLf2%p5Q#HVcKUZ|^OF7u7PwH+%>Q0=eQ<%CyIIRhVEnDZdBg8S0Ins{IFa??7 z>?CB0vy)HeBP8mWx&H>f3pl7)&8$^>jVc_Oh^M(hjVm(TM2a3aJyDG+XQS*bSrmyuJMF>$VsGp27U=NRvQqopmcW>mTV zPD&v12j8<39}LFDGn?MF8M&fOe0n(_qoB%jh&Sn40Z(ZcOPV2S?YMI&1$V?zO$0$4 z)qL)}l-$WjsnCWP+!AX@w{8IP0-@A4WVVx!F{Y77bM<;0U zBT%M$venjQW>&fUF0D+3FOO~J9cjn7+fy)3TY!DI9xE`x<$b}sa^VcoZ6PLP2@y!=zoYtg~taqUQbd9Nm zs#9JqQt=!=UEk+FK;{Tr3`#><-W8>kIMFKIs?nx3ka30|JOA|G%QFbDw|OJt*;A zylN~QEL7yeb~KE_t#P`;HXHe>@%5r;E>*s!OI2*kMEDXQv6`!tN+xKh4?ps?8NQAv zxhxLfx&MpXj6xN2TUH>BFj7G+RslpzpzCmq>pFmLVn-bE zK>s_?*6!0^w-j8aD7dMEI+R0(P;kVnhD{lM*H-W-RYAU!3dET~D!4sf!GG8a22=$H zJE=h22Bd<=c@_M^G3uALnlV+)V>_uv_S&VI$9vWM&QF`sl=BeRM)+YI|}*v<^`nC8ZUQB!lub)KA)+oDl6q zpow;(pvhT>Mus|f1!waM+Olt45V%;am!lfnl(z9ROVu$sf&i!C{GlKRlj_E8SoQ`H z>*=*b*Lr`v3EE9mCkwAjLC;R+5qfqp<a?!#CRS|QJHcB1s1%qvPiRre zy!M_+Pv|7u!TxsS97sWq^Mn=!&?6_6_)_OZMmO+cFeH(e6(4u&I&GbLd6FRAT4Yy-bAqA71C$uacd?x(~ctR(UeXt$b zV=2gXp3t(S@yY%l>zpUFnAv>R{onG0ZqwVJ){favPr+>G2`$D(pV@y3p3sT~(Utf!+tK~3 z6m*LT^v+r6`CHbsngihkab9_D|ctR(iJwGbDg5h2iK5l!zskVL1EsXVAVbnxO z`z=YJWg9K5njm4{SKO|}TK#M;`nmGwzV9PwslJ+zUOe>X?Id@CbBCjExQR$?Y~da5rn$}Ot`Co@!qNjoZ9KWk=m)f zRd=Jjws&ej;qM{H#)g|uYY{#g?nXmRgpb4%(!E#xF)kUYy5-5*zu{1!T8B%@?bu3? zzIHMZYST3vUFFe|3TSV7^r+WGca3y;k-NhiO%1Vd0jN}%H$`KDoiPJF=NqWS-ZmUcV6``Ml^{%B z%nD`8a5KkO8H0b#)Ou#QjE_&!2kB#c?BHV?AAjKEw|sn-{zjkXKBs5ef@*K4JGxgfDcmAf(e*_VObsy&zizskNwR72i86JCnmAKu5*wM>10sVz*s zkEus6^&X}!XX*w%#Aj;(0o=*^i{>%)Wv1pZ^#!J8G4&ay&g0{ge4Ne4$M`srU+-h; z4}|<)rhdoNJDK_oQ*USLS4_Qysh>0Tw@m$*7`%b0A29V=roO|}tC;!*Q-8zMzcckR zroPP7i<$ZyQ!irbr-b($rhd%SGno1jQxi;mpQ*oK>bp#BVCvgU-OkiEnW{7Ob*9Qp zeT}JuOnrr^A*Q~>RGz6XGIa}6pJ(bOrasHm9;QCS)J~>8#nd%SeS)dYOnro@jZA%u z54kbwJo4`fHuyPA4KsBXQ+cM&U}`^8r!jQ{Q>QSso2g|?^)a=SsclRxW~!H|g-kt+ zsS+O*KAaqf{QBS2mBefEVU%8R6}_A(@wUB`seb0`VM<)FS2888<`*#~zV+uZB?k)5 zWJ(T2oWj(NEW3oMeM~K2Y7bMhncB_N?}@=KrhduPbxi$)scV^fF;mwt^#i81G4*Yx zwlMWIrZzG4Z%kdy)MuHxim6X9^>C*Cg{cipeSoPen0hx;moxParXI@FKQMI}Q-8E0|iv)XSKXFo{oQN}`lKpDBs5_bjF)z+i)^3s~YPQ*I2AQTE*E zXmYpIK@Q2fupROV%aw{B|E40GF9Qb*E3aS>eWoimi%8cB@O~FVXDZlFJQ`z zilSD|A(d`?d&J?|6!^@enb5r;_0{9poujb=l_;>{$_wn)9e7v8Jm+<4AnN$uhjim#nv9VHdEMGa8D-}n_Cnp;7hlj>YdRb7+!)-ek9I3&Z9p2&9 z$!7u@;#tb;>Ugo1M=<%NFcUPEGrl(*yAM_+d!?8k1+<0r3Zi}wj09tF80OmbH00eC zo-WTbIOh-6Px*X#IAlAKH-KYYZaWzH%XldXe zCj1N_G?pUx2T;W=LnDYo8dOmEQl{V#j?3EyMsSK_vhRe(GV`uFS|85w{0}NyFj5;E z&EamP{A9R_z)l&012XRP0z6&=Cn4o0k2X%majwB?4p+V8#tOxHEtu@Pud%pV@2@iQ z2;Jv_%{l^Df|of2M=gvMcwy6IxL&}LKZT)j)O-8w7Bafyu^cBZc9SQT$ISa~wa~SXjW_c10YGp(FSmllA__ zvfQCUa9DC7ENp#LwRgit8CZrZ#PyoVn@7+FD1 zw8ThhuuJj{)p7Sykd@WHDZukP(p*ADS67$(&1}k7gI*p#>5gXTwiPHHan-5~a?sMa3;sE!xp2b z98bfy{>Y|5_mo@T)d^w`Bcd8d2P8^#U&SK^9xJ(QL3%HEU){b&G{lP&?7{gqtQo*a3ZBvD5DW-1q>e9 zi&k0aia)ykjhTHFoXIl44cEvS$;WIMM&L=fCJdnW;WA)1h6&OX%^aVu1Roo$hLSw%R~>m6>!6y0l7yVH?_ZUCmjFT z-#n;g^78LK2)oqJLtZ*Cfjin{v-+*6v5u0cFt|F_WmyAd-s3up^<-8f0x(WVtzLcb zFjF3Tjoh&p%AkbPhd3uBKiQchf+gW4aUQ<5V+^7(1_=-Jt&M_tD|F;|r?9mRCQVmP zlOX=vBXKP)dtyvZLP(X%WFnj-l(4F;IVO5m-09IN^sj2s>&ti=qfI?wri4~kYHbCLeItnXZWT<)qcbF}`xux}~8d#unC*<@o* z2?JAQvTs4(0^~T;L5L~_li>i_F~4vAU6XRatA`g{KL*NH_-D|7RO;O}b>@8Y?r}Et zkp<@63%X3|Z3|86bBj#s7mIbO9)4)f2`ALR7;UodhfV`!T-{7qtU>#_2hdksxVB!c ztnDup*9OHynBt*p6}!4tU}h*(8R7mQFS#8p3_#_FI)giHaV(spF%((cZmfsqojdlK zJXw_82AwI7GnwUac-{v==HVl?8UmQCU0W*i9BjQZ5M)c0;k6oUbuG$Yl~o$v3~7Q} zE#WEE!6sb|Vcm697Tz||lX0xnYp#t9G4IbP%~RVxqg%SdnZqLm1b!4j@?aviz(}c% z=n{n@B&>i?D`p(P+Ra@2YF?@NCo<71T>b3;lbJYp)vJtpFF;~I+nPuxASe~kz9k&O z*n3Uy-hI7b3Nq;|HcvY>M1t`fg#0N{vwRewZ%{8Vvjo_qjJx*_n{5vboe z{%QS1P!P~;X{QoIb&<_jhC%ERgpV@c9}E|YMJxv7e0PvXyHOpLZ%%7shY@%_VPz;Y zQ!7b&)WW>St2Cj5lBy^+nyp3~LRKDg9tix3I@F0`BXcSgd~IU7c#!Fi;%X{ltH*&( zf0k0U%7Jk%*4e=;L6qa$<*H$}y;4b#843!Pxqcg9X{6#BVAw;j$^xz-$L65YtDW5G zogW2fLq>u}WJ>i~xn6_Xnn552R#PrvP#m`+e;g=|wXD`cytYfCdmBt4vRDLdg9yu` zuOq}7v&M_o2ZAcs#2o%TK-CO@Ga!l_tzYG-l$v(+HOJt7Dw-A8&YPznt3MPmux-GM zK^T(j4#&Q|YBNh@W7?sh{_U-p(TZt3QzFX$FaxqHjnu&V9W+a z0y&hg6lliM*DnqZij@bg*c_@`A`o~Wvlik$G@zf~0v*6Q7V$HJv2v|N+seAF^;*Dm zmqAQ1Ia&$oMtD6$k{Z$s8HYz;MZwe!hH1F= z^J-V)vo6uyw;ClbNGPEOn@HvreU~7!=+hq0e2x43z6^4l5d#;~iMyyXi!S?vrD%?u zsmnfonMwWLrXIiCzO$)&PBHIZeX2=4`!th!(CIo=59k-_LGQ9y2@a|sZp=s*>{k4b8H3p)HzI~v*|+gZ zVKI~|uHzdq=0Ev_+h|d9F1m0x0Hoy;Gq9}31T>(cKopRX@oHh9YJ+8}+F(7Dd9`Zm z*ULBiyXER=MdpSo;k?6*``9&laNQW+%=TgI=L9yl6e(VXz$Ca7P3JBzFc}sM9f+9s&teL{?H|#Lc`Kuc>F_B`P zgc5>Csi;uuIygT(9>1G^B3F{d-U0|7$xU(*@Gf6Ihl}};2Y1W0%prHpA&e7HpGn>tv(D!BXvXZszAd zRpwFo!(MhFzE#%Uyp1rDS@_T@`#!m1aJRmbF;XtZmnei-OA9SA)~J4lUC0=Fni-Q+ zdh_)+=C3(A_^VlCUhk`@vyS%UJ) z1Bj@3>AEPxv4g+2-p^9ijh8lmDvjcX@Ey=vWUHgPalOkDA#g`Agj+yHBX34rLzo#N zW$wsEDdZf;0XJc=Ow6t~5~D!ebgS2=QR@=*zi0tbAENU{i!jB8hIW%i3oBi6Tw?>& z*Eclg2@>YCAAkO2#wZ1Qr;bDHSLV!NoLbe)>ei!LxpFVG5ieR@Oqr4ZtyCG5{XmRG zcC1>FxsKb(vg|D$DpcU*!VPsDMFI%q+4z0An1b~t|+2@d?%*3PJwxWpS?~PvWS*5a`pnRAX zmkMC4J6u#-BvoI~s59NVe%vAQs5~v|$m$SpWq&@lxWwd|6|EJ}J0Z;0mM6-*Q$o4kll2RoOdvxd zD89lU9Uxa^Hq$-GtSZo%V8@f?1pOtnnaS48W=yfB*l!RxkmzBL5JjYrA9ZGD+PgrP_HF}2H z_Gs#jO*KhznQO9&+k&Jj=ZM$yGBp}DozML#W+cg`4Ki-DZa4o(v~fc&|L(J+k+MRm zZ4J3HBt?MpsY9Hbdi;Lx&%!>XZcej2sOI{|)g>mFTeNOxM*8SjwLM*&a)XaujJRnm zVJqBJg{|zk``h*w@y)FOv}*Guh(t!m>R+ZmPoFZhN(YKAf#B>Kl=s?D+8wJW{N>`02}iP9_E z@m^=L=-C-6ai)*X@2CfAd1)+1XsQQOt+22RJyK7W67FFJ%eoyu6YEl~=^Q`_EvA-u z;Ho-15J*7F4Hdd4`X!yP3^1yD&b3H_;3Nfp_glVMGklLs1| z{U7_@AFI@6*B2}4jBo6FE4RHoxZY3?-*_SEg?+C_rjxx){?6G%-}CWxx%ZWIVcOB9 zpU`&~zMmTVF7t}cQSZA0IeZqy*Ty+i!yDHnZ&NI|Ef;{JWd5BK57wW9H z^bI0w#><*$57)VS`W}tkr}(+GSG&$|E_WnlcW~rP?B?CT-NA3!)NiqYr{2BtY?FH2 zIVSaAHg(In=G{ZiGpVlgO{!>9pR%cUUtqreE@M*p3w5dCAP;;){2 zO<$L_rYzyAvRMar0Bg0t#d2*fZqV*vl>j$Kz~zF2yLAu5F%C#)aaeguus#`3kLP}x zawhOFHdJwpmDxwxZ84atgd0D-rK~ga=v-7)%k1Kw-@IPPdO-JI>dqxxCxu~a8rW;qZpAq?#8==JA~?CDO5pnXuHJR2yIWd zm#b7%B0r0_yp`gfmNF%brhLABD3E00HE%hTs2BVeT~zE5vlsh}Q-fTeYNz4vXVW{G zBTM$f6@H*nkpAqxGz~Z&R}8K!&3{4w<)hie<15p&D`Cox+mzgD2dc67$(e=_kg`5- zo!aAMPbOz_ddN{J@G^B9pq>~zXv%!Ga?Q%j>dZqf^Ms>W3w47$Cj%KlWE6ttKZ zgT*gd@`iKj(>QKP=kt;=gRx1AL1b~@wuj)nW4!yAPq~>zHwB~>JVr#kwz#+lrin~2 z95T%G*>1a~$I>2PKU6Zgy&9**dOE7LfZ_SDbw}#8g63LKaUuaw)NigO97|wxi&IOW z8z6i`fUBa~Nr5Q)A_iXbTLhcd0_fVZo_GtRSIGKdao;1Mc53Aq`b$+b%Jw z*O^p3eC9=wl?|7i-8Vl9t0wK4h+atr98QOFjJlk!;UIUvSuE_vPrIPNj(mBX*27}i z_)p>;!YPr&WeZj0fmcs8%dbfD z3p)S6;lb`z_}2xMYo+YcR#$Rv@gOR-OMR2O$54d<8eGlpxh^P6PWOkJywekI;}X081}dETrv`@s zgaM>=xSMCmP-MI&0I40i1dCn)O%(I*-dE0X&ixIC;&X zG07tc4qN0j&V$avR`@c}KF*|x&L%hRN1Naf%%JTaJR28y5H zKcRoy2T)(S1D@~CwucWxKlN64>~plikAWnl#(VwN1LwB{=&nGcQ5};E->z%eJqS-29^Ro^jMj&x(AlFi zo($K|;ujloKlTiMfeHI^Y~sxa()-XAv&aZ%rs^uJoZiupD_CWCZrx#w3J)u0crxw* zq9Nz8XA$X2fSD(3ky{7HyA-Jy_Av1ZRuicwVxI82y;RLaF!^@bFf<%6kz%@%DYURr z#gLHgjfNdChXh98pK5CVo`huGY}FrBq}Uof8OiVndXgp&LXszq4v5<}s8Ua$b7AtN-@x*PemvB{@( z*lXT`Gv8Ku_EqCv`70zoc7K&ZSol)zF*TopCCbtcUTb$krB4y@In6c63Jc zY|;nLX~k{)+Z^bd*MlTG4POQCiA6bzLe&v&Y|tN$-G+sCmMga3$TXb(Bo005V;Tua z%=kEL$Ople?*3BPI~7|zQ=qLO#Dv8^5uGeW>ow=a0wlVt)g=p6ans7T4`#f&85(sq z6gyyuP0Ly2JEXMa7KcnB+p<%1VF`e4l+}FNfM|~~w#8aGUrYPNCh->&uQa|fw+X## z*0p#|J0~<+c@vBfCFaQ7bhJee#e2+sYTNu9MWZ^?OeOPE?h~clSvd5MU+L^ z!D`bGf#8RH6G*y5ep1F~RXPb{N5XK9*m}>uxBZB_=E{BqY$>>~c0!X}J{TxY7!0k2 zKz5ZYp=qaa#v(slgt{mU7*rSLSJH87a6G|az*xP$I-ffZ3QHVM&d{)fwGTEj7+%xs zVQMy1gO$g_`3e+2meN&Z&io+O1G6}0+bx{jYTBzEZ?+cN_e`ug9jvx!#hbz@V(gAZ zQT~{Jr~LqI9X27c88&x12idU2$Zs*_h=_GY9!yV72|S%}bl^l9Jah()24H81afCQs z-F61uF?kra7qa%PZjPx(E)qItzS0W>39D> z_)dKMlm}mjv0;OqlTKlH--CSeg@2|ZDYPQi?|$a8$YzJ<#G=+s)Cd9__q@Y*EYTe> zfg54s)1oFdkfo(nre>>hU>Ubg2kn}%1OX+sZTFN@Ndq@3aEF+D7ywp!!8IRy3{PgS zz?Q|qT8_?anKGrJ#K?-)PcfQuH}e4_#(C7S6xO@;T_YYL5E8kJ)c}!tF_8HRqxj3N^D_(sKVX zjo_81-{&%a!ZIhcqPxZax$*%5{H*0ECuYt3PxXI~E4N7@lGC&m&H6X>e?->L6~UHe z{!#rW$ov`0Y;a@3SFk^*|2cB{9vSI~+}13=D^Av*BCxWhw&wcH`gZ~7g zR+n`>t6xU0Ut;0YjH?Rw)Afre@ewHjBu4HepR9jM-3Y!s4eD&rjo_R9>Bs)*<^@ar zfq#1O3-;~!qCK@{>}f5tr|(~~r>AD^sXb>;KY7WXZeOvd@4aGA&%A0+M_29X=Da?Q z_WrplE)AbA^%~e}?PEh5J8N)}hNr_ke7M!qVe9bZ+_?kz9%Jcwc#`4i+z^UAJ*W5% zf?}~uzMVrTaqdTJ#*DA@Hn`qFKomr$(bbwO?+(}x2|IJo7+)UwBnOAH(iy(v3IM>R z&tjn|>WY(fB+3HXR7Hr0+t-)Yo9ptY8hJsGPct}6&mDz9JXL7hI7?n}onk{AGH}-d zdd}9;J)*;HriH0KXbWHHVsO6l2K*U>@8gRL{^>efhAjBF1DgAX)l zWT^89Xo^j4Y>6NbmzKlI$-$`dsDd_&BmTv`Qe`kaAd3-5_?_ znvS?RE`y9wG^nz}h7y9eJADvf*BDFppoN zC(^z>FQbflUH`HULKl)cu%)+yTMK|83Vi-7Bgs6bUFUnXP`$Hs3z2>zrwJ=CdYBDy zD+tbxxZc*_bp}_OUG5sfm_KL_7cLj8nb;l-*&Qe~T_FhV64yIB2;azi2G|1^<0wME zbO{W#CSi%HOV@9*r2w_UIlK+8<^jSu(9;w~!Y+@Zkq)c0Y2bDagsQ}z1Bk>;6qq{t z2xZxWtsmEVBEE6!gn5Sah=!Sle;LR4uK3Tn)i7Cu;X@EOdT0!&*=ob7NSH~CR>u;6 zJGn9g(+FJHd;iuB|fd=0>MurmUu)^4AXo`4Oq zI%$G{VKX^p4}4=JV}>F%hH+b%T3lu5tEr37>)M#_gnqHI+u^kx`qJth?zT8$t`0ZX zsSko}pweNZ>R@1*3?#gk)Q@iXnop%8GKv;DWwS!+fa^4ZKA{rKo+XCa9PCs#GiFl` zg4w~hFg?z=c}*1;pU{5N_O&5rJq;|#Bl-@HyEigf8nJxB)s}S!}muURsWGcmO1i zUi%KhUQz5}{$P;eOgd&mnXXfJ4*H$jn6sFxRiSY(G}em}fR<@yHwKyGF-*1uWJ8vO zG|>wu#n~(p6&w+8r%st3K(7z#0jN{ltl#BDQnG^iKpk$%d%xx1pOa&pzwO_ju0M_R z@A&uU>(Ar;yZ-%C)I0b7_!|aqu0DtN@A>rC>#yVe_x$^9`pWM8zJFh>uj2g={rei- zj^!}n@B9j2?o*Hbd;e7ZqJ8_Je|mYrzJ1+4{m4Ik=u4Km=AXV}Poup*1!x2v{amTu z8GKivb^Z|X^HuAFkLyIoTFo-trP&&Oo%-(g?CEOj{c2-ZTXO+jJL;^t@SAQ9a(!(s z!)jVaF`hFOcS?;z56==hcZW|U{-UyakIRCl;#WUSBx4MbR2@|iOd3t`W=qyK`6a(| zvVn{2&C+XIq?j^H zg!oLCMs}%c=D*Q%H3t%EQebym7*tbmnF0(c96Y` zb7dkR9bqKOi(`KXVgheG=%o|_(lN?;95m$tB%VbO zUEH~J2mh=50V#v5-!Yd1QBpU>_LZEM9c?qH`UAw`Jc%^$JT%`>>UzLicYx^IHSfN}My7 z5PX~0u;Q#Gpr*6_KE3hX$D#Ue;}{ICE5f#Q}%TCK<;v@~{B% zMByijTyxX`&zC1B;@~%B;AIWnBqA95miwd!M<t>ORUl*kWYLBuX4xg?yyP5qFL7zhBPvay6$Al*20qn;hHJhZ`o_1fSY4CF7`;IA*D17D*y*n7>M{?0$W ze9gWc+0$sR@nzBNK3%HYiB|!SP2qB;iOQVU-ioKBk|R-1q~?*&l%EoyGDfo<#5V*# z_|VRR+$X7Q2OBaxs)K+vm_iaLENtM2@!4OO2YtsMzcHXP|I76TpPgqe=nP3Cr*da0 zX5J(cG{W7`i9?^A;h=h~w?;XGoQ*l!hrNA0_yms2NEHJrG6Ic;dEDATvl4vYLC*f* z4=hY@#Rx}n9>Lj}?xsh?2}}lf!C4eJRU|;Lr-D@#*l>1yaEt}4Gfzn+xLW08M|=Si z7m_VpaY{oLli_C|fCZ$%XO)g2dj}M)1WKIMhevlvNo#?Nq11+}NLo9?g|Al)5!HEF zCcon#+E+PHy5~9$DNd6j`(4BTfPh$KN5h4wrL{ZD^DnQ<@C`u;bAvYoA@~%K{-C5PzEB zQhAfI=(NLh8I`uhaXZxwDW+NVf^S4d2eamIgkz0k9LC%`+=(=1?S^ho8(bj-h*WY~ zfny0nE}L;S)UjD*tB+Zr3IyZTY?eSiI{>k@yvW9rtO#)#+w5{S^7BfE-1=!gw z5;qJc40hyIK^*xMZrWo`_ZaZhHKj6=JEM+pi5j@@7NU?KOc2itT2{9!bPckA*I~_9 z77s_b<8*(7t%u4RtwHx<!QENF zK+WL{jV@TBS3;|Y$ulhD#Ng2axnJ>w>}(*#Px}Mc3S;D;T96G zOTmEoNSaGQwP_HXjcx=`+D=dTZnt{dBXG)2^I@kKCKnrhvGTBkO9p#fw?JOfiJ*-L z*pOJ*^2Y^D%6#3M&@@1xP`@?42-VdN40EGSS{AK&fP7q$=PH)9rq+ZS;S`L>_1HwE z6Ags~9XGhtvbdtUWp~)YR-qP){94wEV^R{^(W;xr4iH!%M3=jTz+;dc2$vKliQEUe zJHA(e0Y3`s1T@dni@TM(A(4);cvM+a@i2$E5z~}`<7*ru zg0q6QrJ4t91X7BvHOdG-_J#w@XVFnp49RkQ1czhn3|l|_xRLluYglQG5i_zMDp4|0 ztatz^-2xPpOP@#ty{R{%vClp;HPj)l;KQA9M-@bB-U&;+^-~AhvMspjcuXhz%~St)Yy6O)Jls3bZprSoMKzbDSU7Q>NFfacpPA z!`+Ai#{l4lUBjY7t>WR-tY)3Z|t3INo zKxKj(L5{O*bhdFtq^e|^3wj5ofzvr+>dk8$sj^|5&w67*Dll+WJ45%MNRb#qP)v&H zOvrjH^zPz43W&SQ_nd0s2_fzYKs`q4M$kx4(6n&sgd*|n;!vHcnt*5!;SYKU1TESH zHB#kp+gtJtj z0(%%({<*0)2}ap$ymfGZOG4-%C&E%xaZY<1EVtJLxS~M&mY%QNUfo!d^IJTk%*{M( zmtn*o;VdqSb9=ADTWzSwk%lGHQD+yyDWQcZpq~jXWhz z=yG0M3b}G$xp%_w?wA-}DUJkT#Hdo?20~98>Go1?(O@HcDIcu=2KF9seIU#M$^g?|DFrEvU%-KWJKV1K~8ijuCb=2FYQRu&J+S4~y^l7yB6p|BH z7Hr3<^_E)?aa)|?E&tKaS&R{cC+fg45!=MoB z7iFRA{1yTd!q>FIi{Zg9V6(v<9~=S{0YF`(CTm}P-}AS!mbBR{D5AhiQ(ywu6+B)e zYu5T>gH@HeLXn*8w?PxdXdvtgHZB)E(93&O`ryX|wQCm^0n9E>5W%8(uZ8PWB_5&g zBH=$Cm&4tIQ4iKwTAApa42@wI#PD|K$ZaqYLab0yT0n1_P1$ZAGYa-jh>Y5}F+VfA ziG{?tF*_gG9S8`8#~Eye$POcD3WDkVA(u{2yv9CI902wG%S99ygK}dw2e~L}2=6gw zekR**+@u4I=%gKNv7FST9kiuFDld#P`5Oc#i%AhEq%f_ZU8(j z0BjBEM}TcBhsv#G1Q^Q0VSxe^LyY5Fr$&)*SR@-40by2H!H(lo$!Xo$fUMIP7C~Tr zO-3}KTTUct{JFpsA0O4H;@luT*5c_;XXoeu?umQ#Sz$fWlbl@g3R0a%HdwZzILhn8 zRbUgLdxWio{6eQJuf<{W+)=i^L~ud~V<%rK3S5!X1|HYAkW+UKaJEH=97cYSI@Wdg z`^wAH5s`BeOC}3nf?j%k0b&L#yEKXu0fwpSi=!C!Ms2MQmvCvHL=4F7j!F@l?v^iB z?k^;DgViDEW$qh}HnE8PLfysQ%3OYYUy801m;pgD+LLYai_sLyfPDu*t=l#|5cC72yPz7uF#1 zDHTHJ^}0*=NMNkM;*PNV>GW`538!Ynx(Yo?Hc_l$gdRBz*oe@L0zH6b+Zi2~Mb9J{ z3Flv9!=^Q=YYo=g{m#ikuhrjbw<_)VO1m-TU{2-49ENwwyeg(xHS0;cz!pe1EMKK{ zjAPkbM5%aTq90HdCGZ)zyHhpA=e1xKBd9U5pK#BTH8n!zo7p({k}@NIV=RW?%G<7u zOK!Y8vBZ;HVo_ib7Eb+vha5fX4za6AZbIZyHNq+Z3N1Y=UC!XiLItr`y4 zH;Mf~WZSq(;h`=@aGDUQZHyJ{VMJ^1^OdFXHuO!5EP{%Imq=W4j5hva{vGj@DQ%vh zbdy;gOj=n3zBmo+0bSmtLRON7y#&}4gK$kn6%b>A2dtu4zX;+ambo%63}%*ACw$@o z0?mcWR7r~pyR^LZJQ6~abyx8)8Ak?*hcG65d=1KgEzEN^iBX+7UPy9y%}-4ZugY~} z=aW3;M5F~iM#q(RKamtDm@z)8W{kBrVY1kw8DsvwJ^kfZ?dkoS`ZU`6k5w^fd_=um z%wx0j{!;6ObN6A81$B<(Zi6g>hc&M!@*6ll$W*Zledeb6Qd)MIgs>K2DuUF=Z7?hQ zR4Q80CUI{0oAXvkDlF(@R-?~Fy;5lT2zgVlgmr{(9?9KWY=!7Ik~6Jm>7j8ZNsuPlzm;Q~+`!|GD;UWkoO=e2 z2T+IfXyE9;@{eWSk;}M!Fs!LEMeQ=pC<{x?2!+lv#w{VM)XngQ+jAKM@MTnhHDk5` zze>tEHR;&AG^(MoZ|{qL0&*1Rt*7dr{^qxa`1IorK0N^a4)+Flgvsq=N}&(C!;$Rx z!N&IOK&2QpI?Le-2An_P6a4pJ89Vmg#pz87P-da$@MM<1hQZOcc-)D&szLFDcW|KL zdseg1t7zBJV(S!Ibtji{alKm;V|u%~EuMEw1m2GrV^s`O-EajP)zMM=foMLW$Wj(kq_XFl^esI#AeVvm7*x*DLLIZsIN``v>_>b5PDjv}4( zPNf9=q%#=x#l%@tB_m?3BeMB!x8*$Yf{L`$Z5Oarx}@8u??mhSGuT&zYaXKsEe1m z@VQ#ZDTJm4|56#3Q^L}5C$X|9pBUe>ceso7Zg(4+aF3f~K94M2(z`TKOYq5KCCWd- zN1}n@_nU%2xrwHywiQ29qR|H{y@lK|gYT|izXA7b_(BA|AvcRzWlrk2R+#I5(Ftk; z^5Bq`8Yst<4N)yD${+c;?=@B!WgSXos{=y+D+DbG*>om72Ad_`5WDFr~MkdU7bI(MF6KLYHfqiF%(R~gcC>4*GQ)#g?YR!5X0t1oeLJ)UAm?nr zkuiZ)fF$TV8!XA1K+{pkw=OpbfG+#!l>_nd&&8xwEVwcr^GP*f5W{4Sl|NErtN`*| z_!b}dGqsM-GC2f|^jLPTCe+1*bnT1pQOMnD66roCUP?1LeEMwiTADGBBwr+#5V~A8 zt$B>)_0BqHC3kYi0|qULeLQIcz; zbp(dCrfR5x%ylw=4{PaC0px&7l|L>kYqiQ*vgDQJAlcTe<%|PZ&ce1VB$;H)&^z0^Gp*T~@dO3Hq$AjO zePHkq@3`ZRBixT8XA_R&$KfCRNI$?fCK(JE9|n`b1jGNmdevQBUEMuZ)iW#q{rPxS zT~+<+)%R7s_v%&X7tDF}%o)eb!2kT^twy<0J6v#U2P@5bZOW~+yZ+KkI+g19<&mV@ zyW3vay}7&9pXD?f-QE7sc)iqay6$+T+4ak#*SFkeYqac6Ikk3qbXTo)q*e+Zr!F4r zOiVb{dchsYH+l89bs8`*3tt+J-thk3t^>Mc=1OjE9PP-0m@A}K| zUrwV^2nl!nO%bA%TG?$@+D@(H7RM{jWYd}I`l}-aCM)f7XRP5&0;f{NP_$7#Sb28W z^@n*S#rBZ~FfzAsq+Lcn!*l>1+v6`N6u6MOj=#9=PBp4d+ievaPP>fxL&Y!+3M^{X zJ5AuL1-+nhxa%)0)vHyv)Mn`T3$JUAyG?ievP!Al1zh)b{n>?PtKHq*@`t9NSGdh0 zgJ4djHtxdf^BT>%2d`saU>ybcDb*WCnw7~iB(6Q<^fOLBZR9HIiX+!LHLp_xz8okI z?JL)zzb;S8od=RciGdhTFYG9s4mCC1s_V4eZuv}qse8Co?TowFMqr7{b#8GC2MTbo zzucJ`YZb=F5S`2R75BC4O&2g->Wq&Ur|RRKs#~l%Q-J=h{&1^YKU5@UTHRaxA?)PE zHjExXeJKg8*ldpnNtEAeAE`qA;!>+MTI#gg^{E2<6S@YzU3ROD;u!FXbpQ*548v_P z%I0tpnu24S_0uJk1lb)*gFae5)gPj_3Q)Z3ucU{O%XlFN<<%|k@aMu9?>NJuYe#swIH*H&63w_0^-ZoSiDwJvrWov|V`zBo~-va0>X3_>Ys5liwSg%;I1Q!uQH z6ZPhl(`MRiUW+;+^x1v%uaOf`%RsRX$j_g5MP;(UlIFCXF~ooVe*DXlhH$`cAFI|& z2jKl{Dy?>6_4wwskH5M{kxtGC@^)13e3>z49pp@IiiK+v2hd=;qPV)#1$tkA-%5G-k2(Np%2Ijm4_@O`0-Mt(6SxRZ4 z)xoy2jA0o0Y~U9=P3XeJ{rp;`-Kdlf9O>T53N7Z(#mZz2)!~iw?pzv&0URs%u!Nxq z|0<5V4X`3tAHztNpH_Z4(Ov>Wwp@e)V_*=RYBhL!8B2F>0-S<@&AC|^yaC-lX#P;U z+A4yguS^^Xk``i83HnSElp}w2r~_TL2tx~;p@3QoU~AvhfzB3!xjd3qbXb?|`m=7j z3@iqd=E`V3Hy}(W_zQw@#_Z`#&jD>YpV<-|D(EuI0)W93f(C7O-44-P#1vns=F8hj z6f8BcURPc`pE-6j{Mnd}+QlDYCECoul1yBIUFOSv_1HK4@6s;=P7%N#j zryQPMJX9ISF*1YRqSi2{0tO?RuSyM#sw4{N(M9s0ZlRVeWi%sp7cpeAqa5&gL5+-o z-wD#=Im_5PhrrVWeTHrg7{noPsVdKg!r&9I_sbWSFXC#EnPArM0^g7_mPaxoosU!; z<+0A^ujgI}^T#1lcPXP15Bk-b#sSC-y4kp*?N5;P60?H~@WP=BGcz zNt4eM?HBAd-m*ru(&ioJ)@YM)=oZPeLuY1htYl2E{zn;DRgk%wGT9UW)5B@N>_Qt< z8&M!ukrfyXwU+BNOXY5PDq1fNwcuSYD&jOslxGk*#*ol7oY}Cy911KQ&mh5LuSb;| z08DMGciN2(7~as^nZvvt&OP;JFxcREfFl8ZAXb#GYK4Y^ajUCl>l2pCe&24BWSz>oR4LaLZ6nowD^WwtAj(p zCLZM?wTNnErWO1xoVqmw6UoS)RYdgwiM-c;Gi_!0^m35K*7;!Wvn&I-x@umaBkt;Q8vA77rfRJKt5p3FWT=ub^Fe1_iexS z+G~ne?Z5V#dK3P|5oMkN)))tDali^!k7#CRK4UA4iDzuoKsf@|vByue^TemGJ5{*IZn!6za{% z$ZNxV##x(0BjnF-po9S!=KYl~D__p~=n$16-OEyzQVIl^pkpyj#vR5Dl!5wz{xt>D z2GGyd&Qy)NntV!&MPSM~9(bVZsC>KLsJaK;YLQR(aK=Io?n){U*Px6aPBUUyXV$<@ zptx4hYb*;jGI*b0tTC&6N%>M%WHl9usP4d9VA%^fXXMXZ6{SiBQ}kYz$H9?|Da+vV zd$5fq5OV0CFU0{5-csp6%==y}GSHg~obq)dx#`{nbJupU>^d;MLyF6yCBQWROLO%x zjD<)}yD|mybnu$v8Hei414!)ZIq@6_T7mTjmB}*JiduMv;NPG5%*|Z~i&G{#9=V{bEH6x+Z5Pb?{pZ9ObwKGm#<^wmqWK@ z5e&6cE)B9GkrnpN>L4SrQ-v`R!L&a=n8s4)S``qeLFB}3JC!O-T|2y^}6*6--In?Qr_Eq*Sbo7a=Idd_|}(P(91hF9H*hl()EqQ#c5M0j=V}GXpnwZHdi@ zi!kqH*r57__4)zu)Nch_iX&ZQ zFo|K%JIGttf>t+*5c7ZtBgBg!0#`Z!3bs`aTC@uK4RkXWo$J)bc@PjLRsMo7huMY| z;Ug${RuIgSt!;;(SXgYWD8{J-(?b849irG`QH;FY zkU*rK17iR_1THbs3K2`NAI^3PjE1F`3OZ1l1p>mn2&JYwg&`U_e~oyT0v>@HxHTlP zP86A{)WG&Mr;1g#HVH~gAQJ%&VxkRDGvlpp`TmedghvX8MKhO(8u;8{A)jzu1tJrG zZ4l+qKSF^+ugAG63Tu z1A;lMtZafyE;3P#2ktKSW|!Oq)+-vPhS&m4Id}#OkhAa|e`A2XzS4jD*Nge%dZ0;5@+a#=_T`VBa({;*SRl$|jb+zXt~GNrO6 zC>jJTg=wY&8^QvxWCbb#=Ek8;2xk1EJ_r|sPu_qDt5BAVUE~IrUdk1W(?bwH&?}se zkOUS24OsyPo=pWAm#YINcu=tdA*?2NdV#kXWb>sWjL8$Pq5fYNEKL}N5)fG% zmH-n0^T3csP+(J7pi-mtk_yBCAzlHoJ188e#m!2w2CN5ykEl_y)o@D{=)!TDCxkT7 z33SFGddlX^7!`z$@4zAzpv40!f`Np>7*GyNo|Hv4j5>$Kmr2E;O*j!^@>wqBfFS}; zn#)GcYO>`wp0!eX>wtR%63DUFtJDrYXcp3rc}o5ynB6 z1j~}V!@^958O4=hIxILb#e$(mZZSu~%n4ZN10zqJ9gH~*HSBLlrF?98BaQ!Xfe{xW zz@5Ra3X7e5pfBc+!VjdkmIUd+aK!oCyr2$$5tz|>X?ys*gm*EKvJ?&a_Q=vHu8d+5 zt=DaDb*3;>-u0L8J{Ng4Xj7QP=Z|cR0`D=kGJos{kC_nfs{-Dc4h`27N$r(4m5-xh z%Y$NU9f9T#d|tgS$USV1 zuwk?|nu&-YE8y%mM93yuBB&&EOE)Fu7BODT;ugGb`cgGhQI+lO#-=b{SepYzgB}s~ za&Uy%U>OdU*rAcoyJz7qL9r~FQ-rBIGYAaM)nOKoJ@G|Le^vwLuJrnvNY^d0^32y} zCV|zwI$EFxj!Ra)3+q;~{AJPinY}@fk#wgs<}ae?2gHZK`Ng>)_{uCg!&A`PXgW~d zp9^zuG-Vyu;khr#UK|9i-SS#dK7<{3+v@An0f}8CrFv-gJBl9OtiKW6brgK zuK^Z%SzIK@X5AO72neuk3!5d{Y-tJB@iE3;uLf@hTO2kfmF+lTBV<~zd4lSf>N`H5 z5#j@$Ew~L*p^=~v!wLn7L#c)Vjew^Ru#irD%nLHvC<)P&NRLXSLHAC9H9qLJMyVsi z^d;WQ)`B)g99O{N!Ysrb_V~!yG)>xNT6Ic zJTFkel*be2HX$^E8!bYf8G!uF&SWU5lY67UNe1dRs3+`onF0YQARnd-oXVU|3z&di z6G6R+)W^au%l?I9Bp?uMG-AVwzdT&2LDzsS7%XP#9~aP;+RO(F>+5n`BC>~wY7Ljd zgWBW)7j|U)N0g~h2GOR;K31fxB;Jp?;w(0(>daVZQ~ z@A~08to_vKVYLn>3=jkf-bsZZ?1Y?nYHtm(V*h~9SwLE@U&vA#esaf*h=5lc4kp%! z5P6;}%O!j}4sWOk#fXe{12%6$^otO)fze+q@+RB{)+5|*1zTi-O;51T4tY$6bI_sP zNXSO8cQ1Gi7ZEUhRqQRkTMlyK_2X`~gydFx9Je{F1`g&Dt?t$5b^Mh)WCMK-ogZ5G zgI#0GrF2+efDIM5!W^9-1H zp|S(}h**dp0?htu=2b&Sf;}BDj=}!pBn75TAWX4~0|I@xK!!dS?awOD@_X$n@)rf0 z9Y8j)`dz*sVq-|M80-w``13(kl0S=L7?zaBl{@cw=#KeMxa0MHXs;;g;`N(+ZvJ_~ zk$3yD;^paodAT2$A4=JI`!=8JeV*|72fSIcX3Stur~mZicX&Slmz6*L;fLPu!>5No z^9k>p;nU9#|C9G)@$~ss-nYZ2U;O@!-cQ1(U!6VM`?Yxb!3Ex3;nT0HW8N>qr{7#s z^1dOSUiUliFXHL9=XsBWPrv=A=Xei>PrqCGYVW7w=|>;%jtN`z`_I3@`*WE0$i^ey z1LEnu=Xm#rPk&tSHt!+vH2z`luj1*0FYta7KK*I+>%2$9r$7J8HQtP{zDH+uyx)d- zk3M+5_nqKr$HH3|d3T3T!!P?A@4oP9@s}_1z8^j>R&C9%B zhEK=t`h)j#@$`@H_kI^XZJhmb@80lf)2c^1KJ3)PB{^9B#`$6SM1LW7(O{JhH|^5a zB~U#OwVH(r`u6Tix_i4@z0-gjbk_CF|bSxuh!Pa%QakT3_6*4xc>#OZ^;|0HpAeJKzqFM%E`(L#QzH!8}|H<_U3d!t5;}dr1 zz*c5FwSw_mIC`Noo@xAi94Y}Hob6GAAk}PKH-}|C#=u8q2E04r83yI&=+Bqv&sXTr zSJ@vvD4z@uFeuUWN(b%}P$;4`{M7_jECLdPY)LFT5xDzU^l8)BdU+hdcp=LtOa?xAH!!wLXkv_9?9arPZ<3+ zs}2o}&^@=r2)D1pT$*Bx$rwpR5;0mfJ442O!f0_;9U2(nq(vX2<d-(7Lt^@9tx7^GhS6dfqeNsrmBn?RkoiPb9U91Bcu*gi4N1r( zs-TrJK2#^+^FE>T^Q<~F z(7`aWJ~|5pIx$3MBO-|?ESxiVuXuh|9U3TL_*@@_s78+Lc?g#LV#tt2PAHd%)(KfH z=~JKCoK=SgTDZKRkJd)fX9~*lXbh{>Y+Na&5|O$ns}+4h>in!aG?2oj7k#9n{VK$u z1=r2cUW^!4)UOiCC8G7@td{f%t$kT_XrP5lQ~GFaP3l(ytwOMKB?jAOxr-&dkceMB zt8IP4ubNed27b7hmm9xuOGipHM8QvaArZe@vf9=s{9ck(hX#JQ{Hc%MNOJ!R;fVFS zb@6@|7EHwJU$WZLC%pbCs}2pkaDiAKuV~yvXssAZ6gLssiP+qc#dn{u`EXVp8ra}+ zxjr^2nm^dr6az`o{6V=yw7!zS{s4tSunQ~(o1(dt7ZUON zX;$0%gx~*U)uDkOZotsTFB)kHwzI{sqDV`SnTX4rxr6uXXJ*x*feUU$(Z?m~sRm6i z;6E_p6a$DnRi#uSQk$|`(Wf4?A*&7zq;Q*#K2p*3r4WOpXeO;M$wd+|IyZ~|K4ElL zRvj7`;pQcMj8;Va1HO4a)`y0fOThCIQQ4Elai37RHmeQ|RB#iQJ}T>?s6;o>$FNyW z*hEVtB2>xZzE22EWYwX85N>SKM`&3Dp`;--#E@Y*iHN)?i`zaS^8BniG!Vhfefo$* z^)hRBAreiA^&8U5N~uJo{voRseM0JWS#@Y2g&QCBk&4E634?IAeGDgx@y5y|qV$2R z7W4_F_h!|hff8;A)kkRwjWF1W4|CjR+_KLP(i746Viu=;LgVvUb!ec08)Eg*;C&`& zHH@urW*YA^No5jIdLXL>eM0F6S#@Zjgd2tRQR3D-L;y~9#n2g!<|U%?*DQ|vgvy_@ z>d-(1H%#lJ67M^ab8|6tR)*+A$|Rz+cHZFU6|1u9&_D?{lIx?y=UX8Hcor`P&mt)^ z5tkiVJol;h6te2jzy-I|>*K=LYDLp=w?hn=#d2;UGEdCnx=+YlnN^1dGI+c|ADM`@ zf%dawi!of7wh8hQQ7L6{+$U6?l~soZDtOF7AC;ldZpXlw1wbTX@Z2o^`h>xetU5F> zz{4f!7_cqzi+1kWHL^FjwpnVaAIqbixUb5|6CQC%=PAAum#+%rdBm7tW@DPfZ?IYU z%~>4wNiuKBszXCEc(g|!g<$;(6?m+{V`mfaH~~9+i)N?nJly@u zPS|<4$CaI~^KfS;J6Y%9K1Oz`&cj`M>_nZ1`_tHIIuCbbv6FNj?lxkl=setA!%on7 zxPye9p7U_G1UotB;f?`zYR<#eaCTzO!_{7PTF%3jOm18n$5$J!cMYztgpab+IYtZ9<0G*X>_(|;aCU0MM0Og%I6lu0Uma^ zVF6z2T7&}*Qz^x^;w>>{{E`ZstK}!1mIZgh;%z_df{v7ziJ1lAaoDtCOmWI*ouWrR zyb?ByZOwlW8Xw)7-}@{P9-^b$!Qh-MoG_i}G%H;?!Zk#9v$1nel53>p!;Vp2L7Vxnhu7XTJ_GIIV6=YAaBmo}{2z3ylu$g3( zHVSMdG5?Cn;RG>=WUBo-<96uEV8Ir+0zX9n*BIBT2w;~jiL2nnfg-?uxwZ_fTmCVX5?9Q_7a7zaJyb|4jqKKwz%zz@ASK5*oxM-H_>x{wGQZQcJaXhIl zn+_$HMDj7?=IDxK=@z)01o(lG!ue6e@e$+76>)sfmPA|}uJK`WUvilVPVyDZX?cR3 z8LUOA4xOzj8@|$QkL-h6@!@M5v2*Qm7B%Fj#<=SCi{UMBm;QFRMhiJn9k%~5u2|_4 z57?3zxDeLtfk_sGdf2Vwc<_XE%(SJJBGD{eFetZr?Un}cx1Ha5za7GE0e{NS zU1ZFJBBmi*5(5|0?ERHSOeT~>0yxWoXGy4{bz~5_2A`ZTVWw{TuA>l_s1Pc;^i*LZJ z*lbGAu|O_@3u4lu7^yaItF6%sua${*EbrN2Z0ME7a!Kw{czqMxtiwLvA;pF~5s7%Y zaa~F``a4D

4EpDldL>0@JC@k6rPckI}{? z`G!SI;WsI=Oc7-TD~&1PrH%LyyJPpI_yui#4;|gq4z+nphrkXk$Dft>vl@Ta!cY8d z7p_)w4)YI3&V+l(9QLhQ_zDCDqVXb^^Wj52lhrz0v+vI>SH|HsKKR!nUSXIppT6A# zbBwD&uC%;WuT|l@NB$7pvnGIGk3lWoW?+egCZxdb`|(QyxnmBmd#B4_*}Z=3QlYD7 zlM?-_ZFdvegt}WUZSpCU)-iHVu zakU+|+RnM+V_2B-3ykYm)WCVRB!sOYxmbvn`(kV%H%-f@`V!W@n0zapkFB{jTNYP~^Qk8kSskHUT7DEIFKf2z8Pp!eJ71Q{3Y_Q#)4VDw@AHg%nFmT|2LpfhYq zhyn2^$)w-Pao(kHDzE}yx{3B&KTIXuPcdd+v-|q= z_jFqlTzc##=txEn|WcR3q(9hOuc$T$j>=KF&y_I%55w{4co{zMl;9)*yr@ zy9G)vxd%TnZfNqbR6zBYZs8xc#JDDg6od5yF;0JMT)Bes52qXD1y^)x@RcBCn{FhX zkX<+|JG_!Y&C^}|p)C_34;&DI>3rjA6-?(a5~)46{}GoJ?1NqKm0h-z9li_OhA*N^ zPHkcd!ud4g2J80V6JW)9!s)=bp7^%`;b1R(SS-e;B7tqj3@H*g$(Dq$K3hnL{ho6y z3%>vtfFcVjA)myw$GAzlVme+Clggtaq-%}YQH1nFTM`2o($e6zm}D8L*(9R2af5V4 zv{@06!l5Fen~b?pBvi8{5topd0QT16oC|c~2v$<379<20Gi@6pxFAEBi;M5unrp!Y zIYqg+_-Gz3z^!JV0XZse^&jJIwf3h&{!f3P>6wFUEW=Fw%TQ=tXpUA9apB^s4t(fo`+FC1VCX-x*B(TT0$+{9ax3>feiM%Uf zxz?CRMJ!LWB_SN5D@n5bp4}{jV-v|fvy?;9Y8y90S6T%PX+=3zgmjZJYl@I+wj>5F zq*bixRs5bZoNg%|bjy`eHMUJ7r3?w~b;eE872J8cf>XFxMEGiBCKVCB%9g~yMYyiv zHt~uyKGxuquS}W{Rg>*hMmZAY$Bmn)E6NKsM48?SMVucsW>gX9hipjzESitrpA5jHDuezJ1Vjc~3A?>ojUD#H7wEs41BEauK)`b`dz z1qs2$Nwy6UT#zfAi;Fq=xuEGyE-rp(JINAQ&{Q@T7az~V1q4LcH$RU`Kx74mETU`F zJRs8hJE0dZ&X@)AfXJ~(eWP7K0RT7CTn^HRGomxm~rI_%EjqMIShSB=!U6;>Pw9qri*GuK;&MM%=Yn)WE-r4)&jsoCTwFXOKNn=nb8&H29xlKmWM4QxDjwl!agVU)*U`5w>Fo)g zja1LE^8`=KqHo{{BBs4O!Q+kVQnbo(jKnm0fei@CIBf(+;s@u9(;B2Iz^j;b6jw?U zVo+!pgHZSCuQp~tL39Npk*Wpyza3*S+tPp=wiC9L$1@4%^NpLSi}RKwoN3dA;E-b` z!ae62^P|9imMsYpXxKrL>-TnxHMo-BsJDu65lFEPcjnaKV};7vVQMLo*fWirrz^43 z5+#<#vm&}1j2Tlz_f%UF0~g(#rVC?AR#!ZY#PT9z)^)|QK2a>hk0ONU8?&JZ;kmXX z1}=mJ*cU7CeZp8wHIh!kc&l*}bcL}gQ5b?RMIdiBWq-NgN8!$0{c7S`%&a9lFGxz4bhd#=0vGT z+$oZI$e0^NG7s947`S8>Hr=T@?73;V)d_j1NI4{z<;w=;`i>;ZCCZy3mL8Hb@~~ z<6h$i>7p15vrR&n4Ql0ZhX#(B$7Gmo)AIg!;i}e-h1s~ow8Ly0j2Tlzx7L=#z(v$(Fe7G~pO zNeQz(!I%w22p8It7`PB3;WWttN7Bi9Oc*yoR~WG{TV#w-_>ZG0>`2L&6-6M=vL!Ka zfrxmTBoC2H;`m$R2Iz_-7G{fzBQebOGGk5@X}s8$#K5H?$I>K;$XO(ncNsTCS1PeE z8<$FUnC%_L+$fTHyDf=l86wXqQ1Ut%#0$IFW8cZ zi^U=$BSK5$j9ZWpTztjWu@qd;Br6ve@6OK!O`LOa@$&p!P>>`S7ZZ87fH2#yk6M`R zP&~}GjBe(jLnv@?w<_=A4feC0u_D9!=Yh5tAnh001=>cl=oW;cuLkXl1{eruyNybkt%a98u&q5s_|vQ$mKXg}$`IDCH*T~p)?4M}KU98&WNtZ(VtVx&W2O{I z+-^%kcm}tTF#8=ZTGFi3KCDDxDY+!3PZ&2xS4_d}Q4t$eh;yh2=ni9c6ajtMmPA}Y z7QTjX-DtpCkPuwdZ5txEAXS`;i{1ITAhVl`i<9zj0j}F!N6mG+E$+H4Vy@d5e4?rd z|B^In;I=JW+1qVT z7O1sCP%j5YxL_S)78Goo+1U2q8D11LtJrG0u`BLldEEImZlo^G{Q8N2p#bMXkU$(N zsK3UTAqDl@ZAl1^<~9;sza8IoqVbif4qW01`$mfi8{IR?ac9`LiMnDtJ$ZOU#1`jV z5#b%i%qb%Luq}zW2rYa$;gr(wwICt5sM|I~a6t+>7ZhHrU-f!otug{`y;Hx9R zy?pgG#&szwW+fx>SohU0F>YwGqE|rG@ztMTT)Besh1n?g-viR})l0?=(?vDISAUjq zr3#ui+L90k>FFepG|$H7>u&5od?bXO9ol}GaT|28&kSw9*tl8+{TC8+Y4;ZOzb~^( zrh`vH1?P<9^)o-E47rJKH*T~p)}!1_RBcazj;PUhtOU~>O)js>#H(k{ zIA#X^cVpN49DEN2{(Oo4e1-memHpwg#JKop5^mqe#r#VEqWxf=Fe9o91ML3@&K&NlCEDsOkcMcy+I*^}KfYAS$adUOiKRbP# z1n7&s!-8)`AU`qYP!Y(FZApkh@{g)McwPT-U_$tt%hCM3*%>3MpGs z7aKFBh-9HHiGhn`F=}zA4NIwGaIt30=EO5;5S?w@7+oRl&=^E9ew6`qhB0@Fv_@@7 z3|w0C=vI7r-sgv@B%h}lv#%?kQ#9lgaHt68$;NCcg4t(FA}$zUIo@~^nkUmmz}cq$(Nm;Bwex@`hKJAUl>0PuOZ#-AD>c| zZDkG1C0$oKXAO*#dGK?TE-8KXG+k0E@JqR;^mn#BMrd;CF}XDPUHQ2nb&!jTcjn;& z?8#q_nmzee+@7qI?MWehbN3Tq5TssI%dN@}k^GPBtjdL1^bM>Eg4@fgJkGc-Mg5(_ zNKB(uQLZDEOpB6B_GR3-p~?0|0aa(^!7;8}LHU`}jk0zG{3XVX(?vEj0{$Z7Y86bM zZ;7dGU}(r`9jTRy6P;Q~a#vxHiVW(mZ#8b6E~xx;S!m`+(G?;baGXSJ`_0D8C{Vx2 zmV}r=z0sD0u)8GiTo&)S`MIE>oQsPa@^e9II~Nyc=HUXY|074u`u`?w{g*Q9@7Bsr zt(3k$_>Wl)=9d3aB>fjV%m4c<`UaLCf$e4ae`8#iGN^yaNIcdp|8Z+G+_gNQ>RA3` zjVo7BUdKpGBg$HP4lXusSh9gqx~iYC=inmaN)v#bW&7{xhMWb=?QPl{|Fv?Vcc*(@)W-O_=g+o-ha<8E=hUW=_%Clw%BEnhb% zUzG1)OBq2494j(gV$7Q&vte5jahX|6OT{doTn`Hpf{Ulxc0R!cIhwh+I5$5RGdZHN4q?6Rdm((C zv*DBuz$Zdv3HeeEq4`?l7HXpD599YaLp~Hu-8HUQf%cWz(0YAcvu52zUb9{&twZw< zbg~6k_F>LrrR*?P9WGGs_T^7^Hky?w*rI*V6`$PP?Qf8XG~ID_tSCZbtyG}*68I+p zH1AXR^J)C~4E}r;exw!gS=08}&c-yYh^MTBzZ+Vfx(u4AOn5I8Hj;W_F1zq@#zp_H zYLD(vk=7TZ8KeguFa|;&sbtHowd&2N5*m^7;i4c{ zp^~)SX3=_3E=%xd8UC!mpH=v?27lJUkEC^`?PI~-*PzQVpW^D()cyZr+YN;tpl;X) zJzzmXa6#^d1qm^4n8KxS^V$>a2`4jVo7Bu1`10 zS}S9(F>aVHsu?R|w;NZgpn2PLqq%&Su))`oVU=`?pHzT)?uU(=tBW!JxwcVDq3`5Fn0V+7(DvKc@pQP{&QH0uF%di5?YjJMO=R{W>OK? z?`%m7TwIGfjd7d?Bnd2*Myl#ZISIBY5 zxGqJ(%wr^`M~>`@G$p906LLJ;xS`1!UjbDo4bw$6BjmWx zxKahpJ=2Zm(mlaOfy98LnoWMnA>*d%;>#~=QZ!ycVU&X>LXB->rWE{d%ErI{p~fXn zwOTKw1wWKrLjQHf4b?@TN343IUx@RqNaNMUOe)fNl`RS3oV|hsnr5@DBgFi=qhg4Z zWRd-4YCehXdL?=sJtn{`=~LSits*UOJd-{TR!C+aEk}sa-~#t zTgA$FHNIUrp#X{Rd&Z5@6(66UX^1a@IYoZoG3HZ|-#2YZ3|xMzWCUvUnkvGSG9<;> z8#5f`JdUi-muZZp7_>nV!iJj_@vq)@Pjj_-jeEb$q z4Y5faE7CgAm_tQc$J>$^_^?~vs5-S81S8XoUQz*)+%?9H(v_UP+DzbHk>4(3J{9?0 zVM}7*@>?Okp%`{_*=tEGK@w~jH%nK77gAs{WGUTmN#b7-;gm6>iU>Vh5(5|Ef=0F8 zE;gKYSr%L*oy65OZi243&d?T@;8hXQD~;Jxg!FP-5(5{~@>aQCZ)fSrgaRbCj~F*f zS8V!vGJ!coejhaEQ<2~MY)QoBXAvnDfp?nkTaXZ3)NI`=!39Nqa&d8Oel94Imy3(j z@^e8^+gx1C&cg+S|Nnf{_8dPo9{#62$DwU(72MjSGZ|kH4i*5`ZpxU~@C5(|s~EFe z09chp-(cQ^0QXt|SZ-XGqGFaX64ST<5IqSa#r~rir0Fj*ZeFscSD@^1yX*PJ^(wHQ z+XL3Vo|I$li=33(?TOV8OzpE{;E3sgrr|rCm|Ke#nrIrLu%E`6sZF_~VVbm*f>Fu-fb3sEs7Z<~MxB%<%z)`av zH^r^TW_j^gSdT(5M5Jj%U`GBi3juCMo{e=q$IgtrK8wDA89}6bnUU8R*QMyY+Zl;z zG$U5)$p2;B&}4(6fU2{O{7K`=6_h_V-6(6VBj0b_FkMtL){*Zsu2ezu+tZEa{C#}V zD`^y8B$L}S>$nULHP6uZPmRST5|mvbvHPb08T zFm9A?=j9*l5gtZ3F9|J62sWj3705RmbEiPQ$(Dqey>DP7QjZ_nt`9F}vMJV^6_~6! zRar>!Op?}B#*NXHR(xeRYiN+P1mlX>E;nXV5!)rUB;sPT@biSjO5@dngy7E)@1HlWTtWHH z=|)-0d4JfrVY;YhIPVV`SE``-;B=$8^on|O%E7BQK%(SN6YQOT*6I#t{ddeD_MydTRWA)Id9NZn4(&wE9j z{N6$+$m}a3*>23OB9c>VNeI8~WRhyXH-(1ZX?L|jr9E}`(SX$V`85M0c)ZHVB4bb2l>eq?J|1Q%qdb8+#R{9KSvmWzvj z%)8e53J*zcK-c)v*;W6_lR&W|NdRZ zbtyXL9gIY(fldwV*c{elhrFUoxsslbW{|4C*SLAfs$PMz#~Sb5#`P+&eysa z?bBQ14adePp95#D@y^(M)Yf=kGW~130-BUX-e1~w3t>N~TjbK*U&+q}jrm+$ygd&W zU_btP)a=K{p+8?`e|Sd|rieOPE+eo%KNqA(a&d859xlKX{pP5dqPyaz zNZG9#jEzK_^r@_d^O?+dv5NcbY|^`KsnOK*QWKNmFQb8+#3JY0bFc=V`QkB8&dL)onw^n*e$L=w%& zWiU2+O>KUUbvad zbZV_|@-53n^Boe{7mPvC71;I4&IH9uNdhbAHB}Mo=ZssRi1o9!B*en!|E8YN?}hT! zRgkvRgwMG$u~()V)k>+-mIaCcQ=Rz&&}TM`2o>2g?) zIp{XwvkCPg>|QBW>or-NNd-uhE4O4gaCsao{}NMCCNx43<1%A*6)`ThB{6U@E@0{^ z;erW~PC`4+xCy%B?{TI=6Rat+I@_2_MOJ6nl8DR7VwxxBt7M`rNC+1F33;I z#l;Krb3wj$E-s#xp9`92<>KPJJY2xsea0-9)gF~=is#LRnxkLvUBnh4gD;9onm^dM z^17^n#KXNyk?u11vG|nltF!1Em=Q#^*F61I#&s!r}<-0EcymE1>x;wQ`Q>Sr6|8ujKnnB6sy?prN#|S zwk`^&I)OeJ&|;p4Bukh23_ojwoHUPaOgzn_a(;FD(Jt6pi7%X^uI5!!V7dOwMx6< zRExpaHDmaulp(DD-MG=ZSZ}AmgJOBu*ECg@6>+@Pm@`EjZ?+{N2E&_3qJ19>^Y*&q z`(0;BvcrCuO2YY~G5@;4IWA2&0b7bVK5xv6B91!=%jp{(%fq43IeZYm2ij@KcqbJg z=pQz2t}gWa##eP*aOevOOe@lO$e2Av8V}l%5QF1KB+#_MVSC%hoTdx1k|o8{NI1(+ z%umJJ;nw2&&Zl0k0r(&De@S$B{6V$EM^~%Y{Qom$2x7e?@!v@7SALJonzb> z-QiQ{C7~Fzim1*sW=#>*>9!;WE~@Z!tR$l_m4x$jWA=50b8;`?q@Is`iZM@$RQB7F zh)cyHbRc3NWaKPJ2rkIyuplA0AV<`Kgy4dv0Tv_#7c{lAAR)Lo-_}YAE@&E`i;LxX zxPW-jcaB;-=yCCQ&c4Elg^ zU5a*jFC+0-4+h<5+|Xpzu7Ii&4EnZlA6CL0p9gQ_-B(bFG}y-U`s;S zyS26?guNqq=dyRdx9xR;3mVC}xVSq%7o@dwaq+G^T!8Jr`>5Iey>r1jN4FIWGuz*C zYpr@yp2h`6zmwJdxY54>$vy*qEOr$%v*;TbeFU|a(XSiVr3~mQBk@=_`fo69XtL2) zK-Dq&uQje*LAg8KC~K_%eayIFx~OKX0DZ)`QU%QqPCJ_W5)_I*FGwXz|83)j>7u!c zVh&uZ6@qFxF2cUwYs`TH?cLeX_J4V2Df>R6Gvzj&Vr9yijD1*D%_guPHEyad*e4}| z&6adZQ8pFy|7gsTg8uJqNeJ)iHzdG*2dw8eog>AP(~8BcMKbqxPwvkYLehUuc3;dp<> zxKahp|C(+zhxegcxi&$o_;MDx9}gNgQ5V+{?tVnITtQ-vgC)H29~m>F;C+8K-u?H+ zhod_)BrWdCS%mk3t^INLRPDgGR<%;`miCaSyA|ddbEbel%a(-jyJj#FsaJ~HhM!l5 zQktr?T5t(_(#D^(LL|BE#*Nb*Dd+YYDME5G_sRe|#h6D$h9}#S7`O~al8>+#9XRJc z*>oDQ?{)VsPI7&caf5Z`$}e}%8j*>I@*^!$B)r?0TSdZG+maZ#gx7|nbgWaUj>8QN zt)y|9UW_E#F>au)MESYdEQto2SmP~FB-u3PQjuicmc+m%xhj-o+i7CFDq){xN*R*j z>y4YHE5md2wXMXvBEZ)ev#1F0c3Tny7vO?gecS~hPSj-SNXe zshTlNyG<_MQ~Td%4yneK|*kGpKb6!a6!SETwHuIKNl2$%f-bT z^K(JL)?8e4@^AqW`|lsMi2aM>5&Iz)u}|L@du!Gx;*t8lN1`vci`2g~i@rgm9wF@& zss9_}x)i1I0!CsQBlXeil%*}3(G1e%?=o&)vMyJk>~ZnNJB;g9V10WJSo?bM25Vo| z#T&sb8g1B!z>e@nF5Wm^y7r$+!d8V!$$=9?VY#GR{O^J`diTK3QM!5K;56O55ui8j z9xgOtlYn>EtQj+|UO;{Hv$lOj*fQ!Xx%Bs2@^e9oAQu-m=ivgZ$UR5Rio7vyMd;cM zCiz087LFTfh8?W^E;%J*M!+q~Td{(-*;$m~Ecyl(1>x;wQ5G22rKrBSjKnlr6sv1D z&N6OjvTad7)mi)9VO+U_a$&krj-05F%yuN5G~)HfjnhRo^Q6UI<7yR5ugk`?|0|O7 z@v_DP?vdE6RwNUm2aTJiizr|DRrDOYrBsU;_v3;jBh; z2kk$R{HN?3w1=|j8#rhPZZ8MzLF2lVf&C*!;<4_atvEHqtIh+ej)S(;xN-&MMU2EW zq8xF=vK_Ruj2oA1uaxfUXF6y*jH^{JEo5Wbe+O--xO3nB;{K=YxqP3bS^Q`QcYBSS zr;DoOq=lNU5Mhl2C7iUq#>^;KUuR1qVt7eh{dUrZi~IKP-L?BlCKp*Oaux~Zh;c)7 z1#>(tdy{(>5loalMKlME*-=E(vL!Ka(aeG+Fj*ojg#__NW43h#u`XE<$c%#j8;rS7 z@PDl>iNWKqT)Z_4Qwab6GG;p`{)ty@ebSf<1^za-S`U!AqoCuOEot8#tFIl0+7qHYiUsMG(Ap zMG$k18Bqi=%a+981yO7`%~pJ9@I(^Cc4Ou>heq0n;I%7)IK`L|MGz<3k{Gxk*1*?@ za7Yweov~J_S!uM32c2psCYjVyB&sJFH&0ho{BVTgRHZPj$ZoeWXNv5uwk0ue+0Em! zlMPImO0ww~v#%?gjmd^3U`mli)0h)Q7Ij+^aamY|%_8wXX5TDG2rf>wHIae~3Mu5` zVkkcs6h6wu#r?KHEW`q$kY7J)QOGaHqmc6_JC#DI-jvm65PAGuR`2DJ$8R9Xd+j2R zpUt9g5F|rDdqp1qw{cy{VEz;%F^w^?=$;}eC>G5it@*HV^OCiu0%ecQMh_X+tHAnT z4_N!U*@(4I-fR?ZA%d|miemw`4Taw=4Yv^O_SXknjly#EF)xy@(rJ~QhFfI5K&0FT zg-)mCioHs^{bSVv?Mk&3l1SRkv}!vH!!`J`4u3Y_&qnw;N}HS7gWuc~N+IQoLUW<@ zsh<*0R4%+{3X4TOGncLSk?r^pT#(wy#lnJs7uGD+7xK8=JyWDmj#a z^}0T*190p0OCr8Cp3{N9R>*L0) z(uH!vmL%0yAcieo_H~{X53Z z)rGx~0ec~VVMP+(G-gea#67ko#0358B+P!VR`&cF$}t5~H%nJAo3jLy@+FkN*aG=| zn3_{h`;#q+fy-iUr!fwP2<0IYBogx{4on)yXGw!IrVNeajoDF##&NbJ;^MGypoI@k zs?vgl;Ntz+1Jv4L&ED@Gj;&f#67`7djq%eRpX*b41hS*_guTXWC_UjiMk3XLO?L*4 zg1I_q++1DMx2L17WvyDqoGF56*pd)~VTxoq?bhlI#;ohgWh6r`DaPux#>^<9=-QGP zxF`aC`nIHbzpnYaEw6P6cCJs$!<~kTEYx$9RyD`2UCLS~5B)hyIKn z&}-SRVPp0bX)LfMAqL1?MxyVx2L}2vLusCA%)IW%IH{L-(lqDk#w;l!*=|cBE)om1 zCp0GwQwtJ;3(}kxBm@@}^s*o!xOkQA99D2afy`W7+?1aS3R>slVpkq6VD003M{Vun z7>r3sU(g8ygs}1`SkH!ttMRS#KJ3y-y0%kZa!VUkuF$W5?zp*7DEbA{x zI%$CmYsE3^x|l}ySqg!_>Gb}%VZ zbZV{ST>^e`5d!=P#!c4k?GYy%dpiJLNMu!!!iB~xDN=ZxEeX;6&mlpkb^oIfX)PHy zN>@}TC}Trwg8D3Dh7>{FXiH+?f?8jy*ABYPcClSALjNt6>h&gEpRHbPnN^U+*vpI? zsVlhCRKaDit&Fr68#AT|@P)P{1}?y%hEppx>v$QdZ11BPB%pT~H$qoH$EpH~u%!s( z?Z%8K0(pxqiGd4b7(NjJSJl9l2)7lxNJq{hp?ul6A-Y1@qzXl1O%cl%j9F2{@;O@) z0~gB@X!}$hHs%)LkWsx_l?RKGOTziJadUKq6Isv*+=e)VihO=y%#9+SpV^WaxO|p| z&2Pe)Ri_oxW@{WA=5Wu}-x#0Yi!$ zo?*;|B8R8hk{GxgG?sh*#+Z3sDXdkckhZ|{0%Il=A>3?BA}$1rwE(fGL2(ER5`qf~ z09lX_Tu_A1f`s7WE4Gm=!39Nab8+$R{9I6kJ{K1+%fkgM@O<~EE%2<5FYt)NEs>*R zlI08*dVY{Kp7=t~79@Xy-9pdzvgjKu^dPvs7J9y8T$iF=zR5_W1{fbB3qAAC=#TfQ zfU2|5Gsn1c1?8EHL@LVt594Yr^lUS3Sh9&!QO#KBImx(E1G2*k@kG_eA4r74)wp=eYx#`F((SdWm^)WgS#Z9v<_~&-ms|DbRhy-JOpQl>#=E2ERQBb zuQG0mu3WYx%SC38Ln{_TUt!FTA|2nB#K5I9Z%-XQT5!g=zcD9@EZ$>FLR%KrreNq22(Dc>hR5|}c|E5e#0m3xet zQKa&9Mq(P>ouzKg8LPTQW+`g$RazNwHJfn%lW|jZao>@woCNL#g=0k!j~H{O2;#T4 zB*gIe70I&ShGgNG3)>6aglL+SLvlLq%t5*TkrmJ6@llBKsfg%UW5yH_t+OQ&7m-CM zK*Tg?#9ELLT=eibto7)Ey`Vvz+GI7hQV~g~UUHo=lDeZg5(SU;62X|#F|IM@Md=v3 z7>Q|AqO+^+M9frC62aRrZjvs%k^Lfx@D>8?roD3JK%e#%${fBW2zxh6l2xNa9{&eiTXE zZA)U{l9;WoiBb~DV#Zm6a^HGd4#t=wj7M#e6qjB6(UwG97#2R4aNEd7uplA07?j&K z_tHwU6!+PJMCuo(53FBA_Q^#RCTB_M58I6yQ3mHJj6|xpmb#8&8;I*M%z3vG&BBWP2` z+b@i{QSkklEeSE+equ{Pj5m^UAI6&n3Bd)eEL)HeSkSt@1qs0g?bWa#A-MRf?YoC350sh0r4NX?(3aC2!x;n;{D=0Uo8)dD1U9UH8 zm@cXr`?_9ZT&aTQ?bD6s?Cay&#HS?k_fB$_LY8=^aQB3ro>(a;%a zMKG5cGouJ*r!9$r3q~9zo~pMi^_ny*@ReK=&jI7+=!z$@EGUVG&O&n*6$zD%`B5a~ z+L9Q!giv`=^ApbK$1_PjuP|;1Y@*_LhuKERTlIJ;qJZl};o)nxNib*>6%^?D@JeH;Qcj zpDl@j%cjQy?4OJo*Of%%__2^g^1ACI#!M&z_^mC8xBx6dnIalW(^v}qsDJkv{9? z7wv<`|83j`UFsxYH(ldB>dyB zRbtBo(F_vHYmFPBE0$=0Qx;2vJ4G&CV}2C5ywaA$z~wR@Ti&WXJ2qBCGRfp)#tqPw zNi?jf%7k&INaQ2N+$a+Hpe>2GL@WX@BA!K_h6M@1MGv3P*678ql92=7@(nN4Lmn~) zRJVsjE;S*iM6O=x9S<6FqV$d**^-FM#X_{AchGdpf`s6LCc73S1Q!&*uplA0IAlAu z5nNEPDi;^m<>3ONoj*HjyK&ukv~w7vo$!Bg%8A+2AlCVW$7RgLc&xLAWb1aZ&I_~X z8_e|()Lya9#~Ih94Cr$hiPR}w>fu1^XpmK`bKJP0$vRX4RVUWz7+0>K{LE~W`#*8k zigmukxM8}eX2d#QWL&9&=JRby2*vwc5=h#N*t&OX$2$MrxDC44XU00;YFw>?{+kK9 z>5Fx;iBQ!!Qt!mVY|#wzwLWj$JY7^N&=y#h0!|J%OB^5(XuH#x2?gWN*pd)E{J%&{ zeedD(t_90_<@LMdNKcqba(LL7e_c7ym*qk^1k5Nxc*vLoMFLovG~9cV#9a6yL1f`s6LTn-Bof(vr^EJz40$ceWg zA-K4~)+z}uXu_6@i!<|Z0rUM|9<}-Y^WyXUSuh?YPb8S;e>iLS@M-?bklHPF)BF!) z(Kj%{h-I&7{(FtU$re)N)s>y6#r{%WVwt~-s&D2#;B65Lxm3iqG8hr2KBI{t8_R;qT! z-HA$-mG)*`Fk^<}&!2J*kGqX_xqJ02e_qLHurn&V{n?Y%`dIf?e{Q)lKJM1wUyC?_ zFkybJGc^WxjEr}$hHl%gw1IHFRz1?a#UFx?PYK32Of#YJ-q)cKetq6Hc{WaK}5NSJvxrr|QUM&B{S{bnoT+F5kKL(yK=Im7P}G z8ELgU<3~o}J|B1(9j}*KqfrD{;|t9eV09N%d-Ve9V85}IvrxPw=Uj^SYt&WxJ|`Q3 z5j9mG@1T^W1&L?|0kH*oKxfSH3_9O@xVYVI)|@H`d2Z94=rk+5BMv#WQn?OUQ*PH^ zh$AiFLK$cy#`P)#Z6hO*s>237(AG!0S>Og{4Ynu72iq~zHQ2nRP&M`c-kSk2?=ATA zHvIW_{CNldyc2%hh)sXuU*W&$(lq{o!JGBCNuNtSz6ubh!Daz|Bj6}Nf z>brkuwPyMke6Js7w|c4$O=sH+o?-hqTXe z7n*7xU38ai!EsoKR>`puOH9Wa*RH_3&X$C5q*gN$eUH1(rKZaw2oeeXOO2V=MSnPo zz8cuQ*tlW^_={{w3>^5Cf%`I6?YMytBa0!q2nl7vcad=$bbEB>M!xfnt5wiHm!O-*{Z0E0R2omI#AjFY z!(?(}o@v}PT|}2`p>q;pg&Y$xvAV&yZUxq-+L92R`g)Q~S{%W4f;+zj_!pJkGa{Mr zf01zmOz{u-Q1E}gaor03&$T6?jlZ>08M?GytvB~HVL?rDY5Zsg3E{2AtPgTTGhxOuwZ9;<*`h}5p&{260L6rBId zmW1f;pCnQBTiq<6mMi)ul1}1y$hZl*;@FTTj>KJi4;u5KNaIJgBnB=GK0FRN&DiG2 zXa>n+$>Rs*PNohI#+EWXhK(6f1hT-EL|h;iGjcJhCuL|sLU2JofdvV{1vz{cBm@`a zZd;HLT+kHCf`s7W=e83$!39m1b8&HJ9xgg#9e+u?UMj+ds$#Hh3U`B@hP##)dfV~O zOs_zHM)A)q?{xaJ1OFW3&7wa)fcOIB{ht1Olm7e||IGBhO;10eKfk6wchR3;;Gfyv zH}KC)?=O`22>p4G{`{2w97EOq8J}i)4^ZO$^yeW;{44$W4gGnP@@C+BGriy9(`@fM zlz2D&xsU#QAOFns?xCkY(VwqV;veYgd-UhK_-8iz@(Z*UFD-*7JkJMzaN8dw;yORz zf(uqa6DPA*&+hn(5#^R!qMd84?#*3Ff~B5F(o!hZZn`e4?z1g(SZ*tW|3>(`6t}T0 z$Dft>vl@Ta!jJ1A&{(3q1dT<9a9w*fBW133l^&C;@nwu^Asw4oLpR@Z`M| ze{O*v*F(WTq2c4P5XuD${csE9KL9_jhjPHAyS72nJ@DgtCPA z;m2jLV+q_<=;3ZBmx%zAvUe+V{H1J5VzFI^yXD6^mFhTy8)1G0yp6s7Hiox&Lg2*{ zN=O8dJ>)jlC-4co$Zf1o;1l+d+gRri zPuNSu6Lu4P!d`P5>n8Yw-R3sdU&Isk7ktA0a~tb8;t4wrK4C|?jrAb$gk4EIVV@FD z*tx_Lb}oFvF@78CW#S2Y89w2_zm08<5l^^FMm*tm8S#YsX2cV2pb4Kk{vzB33q6ym zgI4zyU4L1y=~YS{8n5F*?YPr+u=D!Il-Qqz&3YYXAxEah>ea3{7chfQ@X^!lU4Bz1 z?%3Mx54S2~Rk$~4=UDxq3p;s(=S$pb{SZ9Qfs1-zqPW{%IPSuCOPUVfraKQdy|OKr zyV(}M-TsnFYp)wEbF06gSSrJ)f-PgPN!VXhbZYh5r6Q#>=Fh8-d2R_#Hr?FyW&=N0 z&*=CIN@b@8`?cLRYsx(S7%eitRB00<&}RN3yvGxnc3l)a!PuU_l#V~E)My|{?>*p- zc?+OA@4fIZ84&M-khI(T5dQiLSmUp2Ue^Es7PsB0M%8J%djN&07Gf2o>}*cLv-c79 z>POix?)%;C-2wl;)%zIyg5LWC`va|>gTP5`oV<3R$82+GQf0T}hy z1g{1Qo_sr5*I&&E#4{L~t^V8=bSL<*vA=`uQFE%rT7BGYf%SuXy0&f`*;=WM5QUK# zg>7AbODw67K%+|)c|SomN7*uQ+jXXbwc=h?Y>ro

DJakVA7ekFdmLS=%dTy8u@+w={=#;gvNj*Zefx>4J zP-yP4Ddm<%S?JI}vMw~)s5Bv%Hfl^+l1^suRoEy~IgO912Dd%Q2vHB%BUa@ajie~& zKW?X4zp@WKm4W z@n3D?#S{GO{ot3!dT@GuuRQj&(J?&c*K&TTKIBi_Jpp~6+!^E3RQXPR?72Qnl};Sz zrg59$gXiO%%ks(=c3&LNjfRYCCCqVTV-Xp6^F;kXjN%ie+_3t9 z-+0j^(@t@-g}UH^?Enf`qUv}N43&l^|5058!zuWqxCn+Fggs#g@bKAuaeo568TaYP zeEy!1M18hMd|WF2EXN<*XR$*3IYsF@L7)Z}_D) zt@ofs^pP?8<9v6Zc2F>UMD+y zeN)OJ+>ml$-_9*J9@yEt!@MTtF@ig}Yf{3ukxakfg7Xv|{NDm++=lWNfS&qoD1?~P zZ74zO)6SD&23@+9)VAYoD5CYW+fd$&7GiHhc@H6;a2v|WFs|~#4a_8)cYuVxgl-4n zHrq7JQ7hh9QlMQu6|&s|Jnkx?cipuL@=W^ONwwmL*t`?Gr7qdv@4GQ2uS@gyn8wEd z)vt}=$Yr{g1kOYLz+qq5<;oA(QBwh#kuj{?DvRPF;$&gMMiuTBg$1|}y({VXMWE;7 zj96^5&m6@8LOhvP&eI|B6Adarc*+9ZszA3Y&^_v9x`uHiKxu3pP95P}p33#%5v*At zO87w}6cd0|W%%^QIiomFfENb~sB||kEpa2Rn59Fvq%=am^qnc6f)b3g&+zBJ@aO0F z^Yi@q@BH~6{P~~!`6YVF8&W=ve>3XX?4R*SGpv!@sANJl@?P7KZxG1S*(3Dl490su zj}4QJ2)S*#D`mDS-^sqJfix#oKe@#N!@SH`rA~K%RB<8=&g;%Yq&NmfY&O=KL&rTJ zw<>ZVTSeS)s4IG@(>g2&7l#7V{Q`VHv()K|7}JLKwdrm}T>@t~(H@OF+7Hgl7F(X> z4Fiz_-_?~XI;XO6vP2o3JbT3?LyOy z85Gvy8bDkDXdZ3;b}Ryd0sW;DD6_J8U1u-<0r3yf*|Txibm>dfDVk`^u6l#DFN1nfD;5FO!5nrSaGQlxa~E35&`QZ=)qSi82~r_O^B z-5e>#N!8ITxLRYcNU~d0mBL$~s&uj|G#tlM4~@#3%*rv`=?dLw)i`f!33p0y{=ixv zL0&qBO{EH*f;*h=$LXf>!V7R|DpfVJ4r)9VSPBr9Ii48aA+?bFrMoJ z)<+D5Xp?NqA^l3_@PfN5M5 ztZZ&$j@sZl!FphO*|oFq*og;aemtTx@Y9O{FGRUE4smlB@}dcYZIe`!^;`LQh;W`| zZ#2_K7j_kR^u)UnLNFQ2R?1>aH`HS?RkT{%qs6JIwcX&R`Vd{DA=Tn84F@)F5Wkd% zZLHyXQ1JSXP`10f4_7(x-J3lity}&(kh)vpK*sl@p;pOw1!No|!%4;l4{S0HTY^h> z)5)4bp4hQ7M5lihhiTUZEH?EK;7gdPND^Ee=A1^9C`wH6NK{NonNc@5+oBEw0}1`j4F=bHnsIfBbK z5Lxl5)=byleaJ@OY%SA@QcOzySdt92XSZGSfEibsw#L~!_%cJr_K!& zW@=KP;ZwQ9?8a>($3TMIyAOM5Ye+JMtUnB6Klub4s>Tn6fLy8YNWF@|2|qw05>W;I zwN219BeR+TAx5UlQZkZGHZAHT6u^#SR zp__^5G~-MW3&-i;(tgSt28^6sCC#608Z||%yD43-s$gZShU3T|qjHEp$tuo|wQo%8 zHZS`zxE#{;WGK{E<>0~SC^j<~7SW--!Oh3PDLh!FkE^8kLP_c#^7vMCm9gMrH3~Py z(S*nWi{q6^y!>E7%=IOF)dG5}W~}12T|j*L zV52JE$^KjenWD%2@Kzegb02!!PHyvK*Ga}@cY1`6Scj!;;<^aL-f+rv4LYXeqywQb zuSgHb6Y$Hp_mM7yq64mR0eR*YOmFmKH!MFSyI*8UC`TgeqX$V_hx?>>B{~tq$d~A? zNR19nixHzep?Rbj#~B@7WHw6>uf(T*YI*%b0+?jqE*2_f9dl)po95ET^Ax_F%pihC zchCESGhK7Wz)c~{8LazZTuMzwJqC^M(;Rj*HAdz4n3b(j&*M7>$(*mH>8t^MB#cPR zNmV7+Ih@CBb3-_cXsC=MUZA1KeX6t$^v|c;h?HtlLGB%p?Lim{4Gp$blk3I)TAX$^ zSj0jpTD8oToT|`q;?(7Yr{>vVTn&kwnha`#zNEdq)OPreCj<#t2mJp=BDD5=OA9Wf zJ<0uwVk)UU7pN+o>>C=6qxKk;C#OC8w+DxR!W41!5!2xmiWzgJm|dqJKnzf-6}n1< zMyV7H(Af}rYQA3{3k|Wh1-9n)Z#9<`>+D`far+`wrIY0cK}Bv%D`6`KPYpBAJm2cICNRA3BVA1EHg?Ih5XNKzy*OaIm zxibZ?gtbj_?t)vdXX6@TeX2IWC1Vzh9sjtH((>J+<)Vb;F5k;ll}>h*hT|w-qjE^T z$uW_*MlT1uO8!k=qh|y-p-^9gVKhw9LmXNg6&d0f1BUPr=ie+toDROCNUT$n;~Mjo zX0)dnq_}2hG#|`dsmkL{FAW4SZpsRa^_!zB=JqD6n3HHvriv!(sK!X4=}6Yqs(dH& zH4u!^_L}z@Tqn++Z|;`;G$bSYIfN(y_E!WKMqnZ4!umvXv3J|v%q2lrY$Zs|h!<)a z6k&EosIY;Kn3vgv5HAcR{z6EJX;EK9i4BfAE6U0n(-%NW<**gge0c3t_`vo28qI`P zYamSuaq}Hmwy;$mxZ&dhTik<+3r4US6QUM(Hyz%JAEm8W26#A|*)H8EtT|i(=?cG5 zrAMvf^fM9&Ed)L6moY(|>!+%ju5!-L4`V%{pTX)Nx`P$h)0H!2`4Yh_JljHX}N#lyxqF)_rEhN>#p1`~04vQU$ZP)iDf^ zhfAyJ;L2`VqJ;IRL3mdwucNWiZ9`s}7BN+fJ)BW^wK@vmj;bDcVu^%XuXP92ePeg$ z%5**(3537U@=`+N${(KOnHva3dM2q2lcujj ztB)eke5EP;NSi3UwS7wK!i>=N{skc=Rs3jrt6B1IlV*v?9bKhzM^SBe>OE#MDMfc? zP$!!-59S8lO3`n;(X@YOinL#uOuI`@cO*Tu+t27zs-y9at{qiMBFo@!$iVB$?292U zM~l`YUe0h6&R(t?E4rH(>G#%$_a-dTmriezwX{Gx?wZ0dmixeK6<0giYz?H@2VMvt zxU-z0Z3IXR)6r8jXr~l$sZzlJv!;iU)Gfr;0~(7C7Kiv90!X0ICJsu-1r88i6sZAR zA&+rsHX~AJ1QY4A8Y;qj(z13r_vszuu8}Tz#dLIu-y)v@N3rc8XfYa;iR`y@s#te0 zOpEu)PSETrKLkY}z_W_-4tsAHK^#vY$u?1e?v=&S)KrYtZu7ZWv3N|Jnkzn(#bxNA zsNmsIgm;zQ@aF%Yfm3CmR`OG{ek!GP4|uOrRhsnNFa`e=G6l4AC1MJU-V!ne1{4~< z>9HT}h>1Wk##iC7ABEg}Y{JbFBb&ttE8aEPm+`N(Az0|3A!$)U?=&kfoC+(sy|`ZU z@jMNr$zC*Gy9FurAhm&B15;3=`&wm|Vgt7yd7O1e%d}xWc&1+0Kpzh#ZqZed(V}3R z`WH`q+_o7vI$?#$_2Sc^uIqPh-PXH*+d9lxRnS_H=|?7ppW@1wqnHU298uc1qrFHP z&U>rolwzNVR&Bdv7KRB`PQCfH7Hn@qOW{yf?2+M{QIdAZ>~aERE`dtkAv0Tw2NTG! zo-o%Fe3Py7wwPYUv`%Jll84x9oFuOKW7Jnb-NOk3j}+Z69l)sV2v=}&Kjg1yUW#0V zR&doNFp#X%H9EMS;1=4vA#XcdH`&xUo9TU&mxBH2eV>m@fkXvMsFFX?4w ze{r~u1xnClZdI?z*Ydb}qf|n!8Sf~^v1i09Z{C^NF*cmpiECP`gScf|8TwVUwNc$x zrujnlJve_3@tB;Bg_j_u57OKO-7BLz0U+-JzCuO?R*nA;Ql@*?pB_)|n(m|-H|`bt zS8HTu@(7T*>46~RGBtQk(~3RJAg;TQQsX%r%li`hu(fX9GaQLA=;wI z_wDh;JUj``EtFxHXdAOOOtc|7VwjAsX`J8?IE;vPk-A})q&nltP1ZP^|n%=^;-op06PPvO{QE%b;-oozQLT_(jPj6vw;fBJ# zUDFEt@&5z8g&TVdH}w_{?mDq>^RAhNTk!u|dkeSq7H+?r3#_-`_ZDi{*;p?eEsXXSj`bGCdJA{<7M{~vxU08tcW>djf`UJevr0Y& zg<>DUBRH#s-pI2`=shD@w)d=M)AvAOpjo|zmA$sPHNNPhlYIyEFbD|kNjqh$;Ride(Eq8RCAok= z2%7#&z)jl`6SJRCAcL;WH63?Soq0EIBv^$WB+nNL_9o6mZow-}>^iYALo9TheQ@)> zUK}AZ(U?J8q%X64gk}BMxh?w*`xbEso7j@NVC+FNuRtYz&`r~}O%*ke@#=L8H?mw_+-!1C!m+9&AeoHrI&&_Vkbe*^H zyp7%Gp4)xy`Rf#Zai27*8_ZT6G!4;CCtGJ$VqNrW<*r%aWprahXuVnE0*gLj&XI5gstcCCG4GSli8Yt zk=kp;r1txK?gqr9cBpNG$01)ey*O~L;iBTC+vEZ}SxB`MfsmK(l#SUK+HkGb-p_c| zwkHWonu>x>m9z71z;}9PD zTp9W}&OfNrVt7f?B3_dB|2B;43P*QM^DT#kH5T)+ohfHItkZ^_^b*GCXEBDoD=l+( z)}TVsf}4nXDdm(O81`@sVsB$UpN_}j#I!C^ zya@&1RE8f&m8%Tq@P(fgNG}76L_ZefF{_;)DfV#G0mftZi`Lj*gK_Mg^mrFN-c679 z(&K%2cIJ-58=f)dpUnT%%2l@;w-yY@E@!(svMGdqet=BBwiR&=1mX0SOYP4p~S57+a zlkOA$Ld;T)IXGw@dVJcfq%d3*8+vqwV~<6fkoDYj7*n%cVGeU7Loo;Y1_8&-S)pT- z^jq`fq~I+w*mD$2BiH;r6VEu}X`MKriv6r0)P+vo@J}q*J=o?aUl7 zdm2@Bj<+$LnhBqMG|oTM^|BN9u^b)Sq$wf=<;Nlg%1!5kJZV9PYVjdSsMgmUYRPcw zzfm;M4c!@HB|1#&%wfIaBzn?w<0Klq4M|kJC5bAShD6UGP-*HqIf=Rp*zrEw1)<7L-JH_AT`Os!mp#ik_$}mqIE#EyzS=Nwu~))Jm77c2&(|{Mf;cbe3dK467dU zcuUc-$+vVP1>G%uiyok;ucqg5b7^oG$;j$t17Qee{ZS?9IM@D2MiKu6{;-eJGYmIE|FmFl{!Us+t3r3Vx*_~h2Y8R0w8X_gW&}h1jB-owH7l|A z(65!dW~PUr3-@!|z?Uf@ucX4y=GPjtPnwOmV)hBMlEQ2*R49}KzVJXrEH}ofEMgG3 zAyci>PB+XQ(;S;vk1Up2(9+%_F0v0!;+bM?P1zSsBpoPIVVY$0JV?Nx6U2pb$;;Pd zMv9mi6iOiJQ|ylaC{P2~Zv!*89CFZS*jy}lYs|(F(67+pzzc&unZv1{{GfdF9C>`5 zq+mgWf{=KM2S^V1pID1RtH|iaoM8`}w+3k7AEpi4e^6Q;Uyv`2=EwMgZt4OY0$++( z^{_OC_9E~Tgk^Fwn0$K%Thwas%i~i6itWN`5Mp9Mt`Z!ml-FWKVIDiI4nr>v=M?w6 zfek|856jIbrl}Frm?%sO7x|QC2j(tOo^PI$f)Ts3xN6ZNq2;;gfhtJ8t5QGHRgdP**H2JJeSXmA)}HS#jGA{St>lz$|jEmrh0TdZ{hd{)Ld zf7dj=US>&zQ3f(rT24>ns-p1JM9v#ct(gklDUby>t{`q~>gl0Oo!r?NX?$DlqBFV|#Bee>>@%WbX-bwwdci+Kgu!8tr)RU790a~8 zIP=q#KKG4k&P(Wuj$FCw1feSD8aorRARInJ>7bRn=!iz63nIBhSg|ilC1N2|ZYNX{ z1uhVrx+a+brh1b34-hk!epPEPPP^w=4QFQMcRZ< zCK-*(FF`mEv`8@qP29)E81Uq&ktma7<)W&zn3b!*-0A z=*F4ch2eIUVVY-PV}Lsr1!p(GAy~rrtX8IYh!dSf$kl^&;B~}ZtS-;rHBAhWVVdU9 zwucxRwFWj1a-#<14CtC6)n-wigSCcSZXQs@np$yyFb_=XeOPbH1tyM_4g$nU)zJ$1 z@MO3fCFINqA)&Cadrb!1miXgeFg0o1m&1lh))K@3kvD)Aw?L9T4U;+E6h*S1<0Y2( zMIy&l=|rB2*jMhP^=fr;^UAs@%}yy1Apg!bA%AuR`H+LSfE>gQZ3eW@vI;8jVe>>$ z7~GMHVQuAWuB^?*{XS4jjFvuaeHh7RpQgK3V?G(LZe?w? z{gy#Scv33jGD72WWt=fA)sUObflecl<0cIMnAUpn5a$n+M(Psb5awAZ?#?$-f(4YJ z7&YGrX&K&DrB`Uln3MNEL6t0Put|F+srCszd-V!+i-V*zJ z{Ob>x_##!V_ti1U;ni>pbuB-^PD515I`L@CK)#jkLZB>K7yB`iV|Pz9=HmR4f&NOp zT*KXTU5%Oa)1TP=h7%jJk-n%Sn4j1+z3%hv1dzs@=TWUL)`7pfAD_nN;V$!a$-NxcqcYo#M`S|>->1x{{(ari=k&f&xM`WkdfU8N$nE zO~B`p33!SKc-l(9KRXiel$C(9uL;_Jqc0~TyR^<2X36NhBL0+T0 z{N8BTAYFML5Lh1`=_oG&1Q%ESODoEMbtphtD|^6ioNQLe(H=!CUmDT`tWPH3{eZ`w zz$2Z2wT=Y*)=I!H1_A<9f-}~Fd1`5S#ohHBCKBWE)N2q+0M-*z)-VKBuk2nJ4 zi;JTGC$laXt-aZ?HNHq8+FIPiJD|SH5h@MGVq`d5u5H$8^&vNa^+pHn`)?Y=@u3+X zcky8lqcIJmfdr#b0;4FMQ3%c`24)oCGKw-8g^-M5I7R^)qfm%ZoWm%*U=%wr^3#l* zFnf~zMJ|nz3t{9R7+GdUW|xtPV`RS=nGZ&`fl;?))aMwfJRj*Y(owE}jP#1{4B`qQ z)-sc@_;L}>U_O{-#F;wwEn%iB7`57V!N{#+1>Ee5@sO3g*hS*RwKT?RSGYQRN zT1UZO0y=4<;Km%j-54tlChp@)(r_;31RrWQI_TcDN|jG-7G_}p${q)EpiN&S5}Ot> zH+5Y01(ZS2&-0>j^iN{xIF7f^<7Ahb#A`PGSuG;Nz+MV`Xze(zR2{(i_q5KKy^P+? z8O|RY@J4EdiR)-V4HgW@<=MTB88{584~uVR6^a7`UK#&dAOQp~=HP(+KAa^pFtO`| zMu$+|O1U%!4$)HYp!rv!DPoIU>fKA+!LBEe{Zj`H@lz`mhmwA z_40Lkx>9N#`wxH(XH{ZUEIj>bYBxjoTc~A3k7V0*R2P3p-iELXxYVoV;3w zxIC4a)kqoYGHz>YnSZ1>l9N|jH27bnYJ^x`D0hPPq}=1jp71zbHPARs$Z81r$& zSFXQA2R~~~d!IX#-(w>@)@w#=Pvcn$Om4=};Q703O&WncjP#nJ~ zmS|Dr#KHqDgKwe1v~a{w^lwj(lVqTfGnoHXTbowqf7t@znPz_1I?eoLFK}l5 zViawG^KG1w%6!vQFR-;}WqpSQLc3XSm>}FgpW}8lR~#@UaJ9PxuCP$!s{U(|Bw*rb z3SyJ3VXGi6wm@jNAXaDtMD{0__kFKsiecDY49r4{s~FBo5`)Ij6vB|LS*s8RED+i) z1j7qpdqbH2uW{%9t1M)=@;}iKapX+aPuN0pgm$yOQ|mu<@=BlYRgdxomu4sU zxVsSk!9tL$5Y{Gjf+jRgas0ilZL2u`&H|y`;xPOIT@N}&o&mEYrYxRvm&H#k)VRtb z(Jz=dnu7SDtzoMmzGs2ZZb2;5{Q{Rl;9jFKQwFPE=o}rbMA246M~R`SM9*Y@r>#vZ z`%kezh_F9BDJAn)VuY7oRE{=Y;1C;2sA4qk1hwBC>ULh#3F=mNs3KG31hvxMXMm&*ep*xm?~~ z#W2jC%Zrekp3D0SclzJl7W$*Pyic`=?$})3Kf2TVvDVWYpUYcF9%Wn1!nz+>I6=xO z6MEmb(B;@Sbgro{yxNba_6!`UX*rSeKenc=KIL0UoNje~kB{jz71_v`;?x&8yYCe! zI(hdU?VcM{IGfIKfvf4um)Q`o@_n%dg5k>-@S-iw@vRCgepV(E5Z2~=%wKwDV6`0x zIOhDeTF7$k3l}>|rWtKhNLSl%u?p!53xswH=~*#CG6sWDN%`)Q8nMvkDyhpSA*l%N zrnrV}2wBC&ED+i)uG3@0C5DQ=*`5B(T}Y2wC~_6jd6N*5#Ml(gYiwv(Me`~Pgm#N& zWs_*kF>**apLQ3{KUrvU70v~Y!U^GQis$1tM6BZZ2MdIDizm}0o~Cq?*?WHFE})-V zsB#t1MUDb$!rBzkQ#MqrBKnC1!XH9JI4r`;Vb6B09_mADU+f$&tU=LML~@f6k%6@- zqE$9jtRh-zfzWOdo!QijXek&iJ3;-3JJdJxqE1jBbB8L@Gfq&S;|LWA zG`^O!eF-${cD2W2I*H7hIc`^buSMVD`wr2aoHhGf3rtcWnKgSSFZ#@7&At-DFniW4 zLT-B2>`U(Se=&*vspmGZ0x+62`+bY(j?J3=#+}|@Iuw2KoXLXuM>Ox)4?bog%C#S?PZCTNQ&TD*u{Cd%%7-iv+AWn+45<{$#hP>mWfxF!$aHoY5R|y0Qrl@2)sWfeZIoDk-*%rwqo93~({)DhK zrE`uA1*>$rED+i)oh62JYQ_E|rtiMPT^6@l$Z#}Wjnk84LAaTmzuDHHmGd`RAhetF zrlrDBzBq(W-jm+6{QpnfrEs5xBv&aU4kw!NG$ryPTjN%VJl_H#B9Zi2AvxJ4GF$0I zLy5%nq7tge0jC!Y<-^m9N~mI1A-$-C`tJ@2c?ng_)i^q47glqWQv@l+;wx zu*`Od;!k3_g`7ciJVfz_7Ilm7Ekt(m4BGcBFiC~w4BB^i(U@6;sdF&(42cylO^%>5tB!UDP7FV`tFLcc*t_>*`W&HoBJlZd-d+4&P~kK;o1hX_Oa@v0leBC9ycroUC8-LaC+ygZ3QfAl`1F!d0hF zi|0FGW`;t4X=~2P_P1Cdw43dQzVn#R92R`po$vo?A;XpL3Hr`aGa3H{TYFZy=b=s0urk5C{9qj-Jve#MV+87aEB_Q9Ve(yI>b=K0mPvE_`mkW zplOF=Z~c>~^^x(X143G?6yG_BCC|&pdI3gJah2f_=z(I=i+j-{MJHie77L7lO4vdEHFt!WLNk(FB;=8VnTj*f02CX<=HU|v-^w)x#_a=!PTk97vSf-zP|n+K;JAKV(0GMR@ZDint*dHwe)w#z6q}Cl*c+Q8IyZ zpM@w#GtmeZo?^{J)^6}y*!?%Qwyf;_YYPMyb~_sPcz#dcZC=~+q&uI#Zo%A@&x=$J zht!&oG5GrxTN_sXeu+b9sgsE3F_b({}xrfnA8 z@2t}EQ8djdy0Us>6RWNGnzEQ{L&7SHSr!O}u21JhTWnfR<02AEF#GDo(g5zF$Q8?j z6;mviqh&`+bE$Rkhb<7=&Fpo=Y`)aT-8#L}T@(*n$a59N`OVhJ0cBHA58Cjs z3hI6fgmw#Rxe`>lGT=o$#z)*`@*xW)t}V?jB4P?of>siUVrYutWLvXVF)X)0Xtx-6jARhmpReM6;9@=`i0j-1 zvBN@-YgdTGNO3rtqPWJ^uvHYBEfCr*ij$Q&3dMnDyfo@Ahnj^LS2+aRX;gg%+^C$z2w2u+Zcxi(px(DT_EfO_99b z*0@z9ueCsEw@6kgkp#9$_{5QlkIPNNF5|QAQu&O9ELW+V6BjZiplS-{leYG)g8766 zLc0ZXrV@WcUT7|I30-@bP2n<$JzIHf|sjp*Zr1c_qVLabLl&dge4OT3orcmy&wQd#4 zT^0xtp`@=1kV^D01(*=@kqbO`a2dajPFInjpVfzPg-D-u;lFW*Ll&F zG8QaMUR$yF!F1Q_NN)PtiUnvS&1oC-ckrSy^tXC;eR^fYm{mXD!Un=n&Z=*;5aY_R z;MT`vz0MMj)U;gN*llatYGc=1AW&n{!mQ;*WBT*)OtR1P`@OQ!Uk{@Z$4Re47Svt& z9t>Vn_%5(CIDf0HaVzH!S|GHW^D~A$zo3_q-0#l#ms&7)Wqfe2R|?}fk_O*jVr$#V z_ZM0qw43kE8vnRE00ns(%GZGf#@eWwLNySX|Yr~GSW{eKzs2u0cb_l8@RFRxJxLKt6L%(h?o{_BQaz=ei5y40jrA1}dh<5c*U`IYU}xf^Xotir zx3Tu)r`pEqz#iFY1$&%2ZO$F4P&Fs07dt{lQvH9iMX#mm8`?6!o+Ji}r23h0roc$C zYpd`fpx>OLlUCs=z++G2k!}?}U|~SKgCbreTZP9hFb%8lUS71NY)wt6KN-U?yJ?7! zo1Rktx;y<}Nuq!1DRs~vJzr_&!%;<<3f-~W6;A~4G|ytl`}Yp4k-q;of;BDQuGrNg zRwQj#JlmZcXYryj+8-x7l-ifGE8A@CTVvTRli~I8OrvBp1=zEbKk5Z5IU?JN>h1!l+87XfC{@&OU8Pn$ zX_nKBt^Q>QAP#+VU{|r>WED!u0)aF@nu8)Q8WSuYkF3s!$cpdCiwNqCXuR3an! zDSv7q$+f2h*XnA~*aW3LDC8$wnoJz{~-ZYgydQmWRm&Nf(SV6MjbXLlKW%0iH< zj5bZCGlelXCG?LrbgUBkm<2*aLg~S=jLwD0OfM>X=T#hm7Wd8$t@_$&&6#lSiZf9( zEiQ2tv)ySKh!U%%(>l@CzE!TjcbBV>K)SG`Tt(QCUNjVhr5BY@MJStIR6_ldLlh{X ziUEQX)W3Cvim}{N?H$XVeN8ZyJ1urBSFaUI#>7Qmj84m8+ywx|F2o~!7?-oDT5Nbg zY)Br)-EM(Nnl6(&xA3AdfozOLaExP9hjA~7VVLQU<9l|5-1K4G3*G6zw=ML?U9k9; z7EzvX!Qz|TX?{Zz&2fX5;|bDE#zMj>j`&ZGqyNdm6w*{VkomZUKv&HF#LPjFO-lZ3n@y+WUv_V1@p2G?1bKRi|f9wSHCP%1Ace9^ylC*mTSSleABU zO?6)MnG2g9i(!~OY>JSZ9ya}%JN=Kgh5l&v`y(x)J2w0MA$NK|(0Y2~)4g-ISE^Y1 zf_<;Lw|vXO1ky_xBz?m|l4G}M7)x}b{Wz;}q^9MV`Kz|3t=9j`Nlb2aTzYCiK(;?$ z>aSzpsFyqHmCQJ3@hhD@?*bH^yyuN}&I@#8n#S}n&ZYzIupwdus%G}L#sctXkC2QA?lMut4A#`Ns(k|^%`C@CbWw40`4iP*!4!Ah+&pJ ztcsADxZdca?qq*BiR`Hzo6m97>y7>#Qg2>w^q2JR8CY-hHnc1t*VZ`N877;);dL)=IhN;b<7$zvjFu-3K}Lj>eMJ@*0P39DO9(ASTIR zY9?Aq3n`5Law0Dp(_dm-vwL@mhT>fy z)s*1U&XH;mf&^ib8E|Z~HE0buwoHb%$CHF~iNNdbtghN9kDWw`+VSB0k~mf;$K4fM z^H#=}ED%VoWK34%MPoYm@yH`R?tUYhbd0(gz2`#Y!S3+J2p_VXF)tu|SB( zAl(~D$0fQ{dQmCat2hENl65rO@m6g9UL=@d|(gFUPtxc;qKPR}^{u>3(HfhL~aA0`8nyY&J72yZtWiHED+i)jTIpxW0E~NcUjzSp~bbE7<;vXNGlFaQxdn>+O|sK zCJTg!B+{LU^gF`*r56qPo%Es-stCT*i%O_xI&^ml^+aCO391;}r5BY@MIs@+sKoVE zjssC-d4Ad6EYDvZ3bH(UGfAL~WUq1~5nuk%n64soKJN!S_5>d3IiC+(bTGaL5igQ+ zJ|DEeB)yh7pC@?HR*zwm&u98>48!bsp9s0>(`ny!r~jL6p+7o??|39V^l%h&BX$fw z8^F_o6+_-Lc+r;1ds4w~w}lUcsvO0yw@~HEGGkdqe0R>8p2qYrYi$@x0NBNg#tadUM`{j% z@e9$e<7n|-3pK7C=Hkf-Dv0OJuJc?QE>_t*#{!|@0wE%o^f*w4jKWZ+7nLF7DhC84RN?KMpiXm#Dq;pFs9$r4L?o^v5_5w3 zK1Zksnt$8gp!pXALC`#3PK`FL(?9t&QTrt$t0!a)i9Z z0+WSgx5b;VKMq?Lz4A@_Q^iAw`w(@?94C9Q#RQwQ@3I8F(y;rmG*bwQF@L zM=cNxm*P7Vl?GJ^(aE6hcZVvvgA>&A-JuF2;{XX&vwK-!?p3TmTB()>^vw2a!Pf*+{~#)} zhww-@^{=)_CSIF~@MKf}3JXl5+rOL_Z7B~^WBm`sFwAc7BIKr<`VY9%|9D&Ik7mQa z+9JARv*BNMr}sZwPj7rSeCEM$PnrI@XiqT(Zy5L!P&CbJId+N0G8NYIPMZ}7Q9E+o z$8RlcYgq02uadag>SXsR9Qkaik{`%%YI4K4=Qp&8q}!dr>s!R&VBwU(;0TVUCtYi6 z*vj!W76^tXUB!#W_=4jJUsei1^cV8wAurdTANH#GU>s{M@3P6clf5g*V7l25Aq$K)v5Mh5EY|<&W2B!ZA6#{I-L>$yD+;dC^vfmuqON zM77vgM^6XIN4;{sT*E&Scrf?TbW`legT~pbY5Rn17h5SryZFa|*IgN;y%n7Ir0p`o zn1z5R(qTU=VsxF zt5vT*e6YkXTEv8TaKZs}gYc)_3IC}>QK=q35Hghmv4R46)e0^&ok~ynK zC1`^arvSKP&~cJO(Ux&y@%h=z0dIJuQq5P#GF$S-sUugmh#w1A*Hi=DeQ3bo%4H6u z%8qe~L($f8<$`QxuZMG3%H)DWT*2tLg_^% z)Z-5T=WVWu@I7?o&4Vps^ZeC$1H7Sn_d9S-GWn$rMMLaJ=bU7+7+a(ll~7M`u#FO` z7~45P{hGswk)UFD{F^omkLL&D#n86I&reD4gkbX6__GcIl(PN|FB;>2V^Wsx(a6ar zt+C>aBWDrNiz zD>BBI>_rpzPTW0F=wz>J5m(Mxo#(Anhf=L~kMPz7s}d~mBko*#r9)AvLk|lEAIHFG z<&D0Vfo1TEJ{?JuIhwB)^L=1qIX@igZy#(C1J7Jt_dV)rvc+!IVz+G3P_-utLcvC0Oy^`taT{seoj)1}gnN%x!tdNI`tPMLgWFderL{ z?Za?U^WEk8@W`0dK(b{<^9Dn|;=m=z&@VX@4KXx51eMXMun6fzZT8XGyT%VRmi$?3 z0*=Ii#zHjU7;MaQC>ml%I_D&lMF^K(R6_l(LtrSOia^;3>L(qcVxaN!HViaoUkhVa zsgCKi=#5j7IpLN(#@Oc|JK2}^@S-t(@OWa!r5m&7W;bTK&f9q2#_n^^?LPPXb(-K> zYY1-4SX~@A*Nlap?M`*sp{P{DBMwES8VX)Isp0jGP@#rDi&w+AIK@3YTXWDW^;d>P zq*BNuT=@F)9`VUD)M=)NpZU8=%j~a!ZrWOv_z6Ej6BaW~MMUo7{R>H|0^r-aNrdq2H1jw3v=F}puM!V}i)3Hml;s8s2j7;nrf6bA;p zGXAwdLI_^Wf#d5#G&nG^3v8$rYk*uSm&Q=GqnaNDo2xX3#y&vs=uM~va*gtk!Z)A* z4k?_0SnS3cb3sROE?uel#@K= z4O8JMA(-4FPXbKG=wK-?8bfQGS#pkw7VhUl%~ZXTm-mf<u*q3_0jPrR+`z z9Eye*V((5cc0$S0i%O`A91xJ5^cQXDq_d?v)#7>il*B{0CHKz<9Eg+xY4D;k{WB)4 zbGJp8?7ud@|G?%<*Z$%#ol}poB#kGptz&YETmJo+Z5+lNUVb>Ud4vv|<5tTzqQ7^x zhA$0uAVasWP~my90-?g)gHNb**MLfQ-ay3+7~kQ}&$lJ<^SJEYk^?-SA(rJe9qs$s z7BOn+YGLuj`m@N{zMpaD!6zMx%I^3H!LH-5dULjW`C1(dfOMC7szn@`yLwQ;Hmu!G z9H^6>>xT|STgHe4|9|our{e!3_NB1^F_jTt7z|mC79692B@RVf#*mpe`gwD);-(gH zVivN01lVA~#SU~yow&fEXvWxLUN`DS1f}BbO+&$67euw~Y*EIGt{aL_%M1SV9 z@6(^9Y&y1d?wZYhN57`CpVFTd>_mFGfSo{pPGodZ`>whCUfNx=_(f~@Lnn*xn#a$I zM0Gk9W!DUT4g&trzDc~K<@|s`Q`fsXc;XYlC{2PtG-gD5E>k{dpz zu*9pu;*jxbF-p~{o`;h>cv^+Z3F;0_us=bgc}~Y6y!_6yFlhcRJx*JT$LaJ~NskOY z&Z5T}dOV9BU3hq$TB`cWtMKa8^mq*(9;cMvzZthWu(#sjaU$r|Un7UY-bs&l(c|6p zcrQKPhlf{hEar)yT&;q`lKbjKY~j5dwFuJ(@R!8$Ajgz`kpv#(DC=K@yZ%K)=wC#Q z{zYWzUqqk&MTF{KM6v!wr0ZWqI{hNSKgfBYe-ShEFJcD$A~krBb4C9muFx+M^@E%} z`WNv@|00IzU&J~6i&z-^sy7x;Y7Cs@3gAyXFwt0|GGU>&9Rro&JTf}@TArBQnAXq# z%&S(g|KA@Q?yHn0*i6vZn6+R0dU#?T&6#!;I(r-Qu?!u{XooiUVVlK-{=LP+oD+V} z#4_7*4gZ)o;PsdCRgpjGWy1j2TUgoKSXA`)dFHqA#@t+g0iv%WpLb}Yu^^W(SIS%U zn|fbkcBPMD;VP+f;nTZLs5j<{?Q_0Y3mhwOK z#`OM?5vt1OJqB%@1MJv*{L3JfEynL&wuGLIxty#$)jcC1Z6PgYr2E45g1%v&xS-x_ zu3~ntmo4K}70qlpevY$~@I*H}ng6Nx70#B#6h5YK90wYN6X`ulk~unrpQFH;-8>7A z>u2NfT6$#W;PGO549>-4QwJWm&BJ4CJ|3@HK%J267}dXE5nlb89``N552QPpK9U2$GgtNWA-XMj^N>OLrO4v&%&$IR^xHY8aysJ8;`%m!;`j&{UfYWo?BWf{#JBA zHnI+n_tN8c^w__ie$r#XIe0vG10F}Z@z|2ZW1-l(GeIXt%zX*?S zUW~_Gm*TO16E#YvoZ9(|%kb(G^jLg39tY|1dU`xbkAW-jcpE)_N{>sg#N&DN_&6TQ zG_p~cfIN2x1o5=1@%_Qgc-*=Lk5AF#%B^_35f6{M3o3T&HF))zZFtW;{l2#pB1fQw2H# zlPY}e5MI6g4m|QXJf6toarpq1Apb-qx;?!56&@b(LsQv1eiY@M!C z23vLV8Mp+oz&oidu>eyhIq%tZk>226sH=?go-)q$eVnWAI9IlDu2AD#lg7E6$GPDi z=Moy{0vP9<9_K6_=X@IHycp-?k8_I0IaTAFsBuoyI45bGQ#8&A8n1K1#I{cpU07h; z#eP2%hV&$Vq);p$%L>cuXT|D}iN?G=+^lWGl*HJ?!{96Rcy<(3*xS+F$7@)t(pVu6 zG~)Ybvs;j$-Ap@aC)kZ(o2+sWrP<#sR8`K7uaX@pjQPcWKi6L>l94tc>>{J`B0NN+ zD-$5(Xs0`-R?Moep{k2uibU1Z)2fClo=N7b9#mAP0yGhtrDMPNyIe8c@QbMajdNAQ zs}dUKoAdKN`3e(l4;9%u*v)jbkqc?6cq!_z>tJg|#b+fnOK4a6e6M;`I3ly{TTz=8 zV5tR&B+4m+Hb%759E4f_7#aB&!^n&JNzxkdu;8RJ7OMJ6)M9T^s>0qzZb4`gxeIna z{npB-G^r12m-CKcy?T)*D!CeN3x28wID}sjgoofo1a9X@_M}6|hS<#EyoB7;f8inE zT;v8vDhn8v!@ll*FNE6n2;^;WdIIES?jQ|8#=t#7e)PWrxaYdV6|%)_q#=Uu5wzRj zl?9gPyFoK`B@FKfIrsx`@B-e2ZtxP+my2eAqJ`TKEle8XK&9;EkocM%O5CVxR8zgN_RkCQVRv*d5 z+h`7GCIw!v$3p;GmjH+)mjdM-1f`D1O+Yy-0ScW3DLJ6DlOypWiut}6R9~A=T@a%! zMhM3L5R4m7S14o>U=ShvpoUOo5B1oFGgM_|`wdXh66uwXW`%&Zm5(Z%c!g6}qr#47DOyg8s}L3_uXghq zR9kzts&;B@HLQOP^oQ5F7!}xKL9O`4IQbzQ-$m6f4RD+#8dF6mt-(HlubOUlW*2@6 zwot-}y=ATWIS2`%-`Rm8ZRxCtH7!P!$~sheGaf=+l%b+3JQnhEG~icA@K)YKRelgu zStyx8Rd(y1#Ebrximts(LGK9{&F1oh{OYS(HDC5IS1E2Y$H0C78krv{gqqz)eptH){9it2NIrV#lVbjZf3idfR!bzB1pcbwWE?S~sE| zdliP{qH$$J%*qmH3baPcIK-()m#>-#yoE;eJr^n%>ti?`U@kbQPBadIxe5^2y~qg& zRJvloC{(x@Vu3tFIfZ|{SOHN^*`!C~l1R}v0Dv7qQbM2-$5M(&6kEgWcn&2qwro;wA!d ze*nUTkiLN39KtsV!hU3d1QHGq`fCBNIfQ;xX0Hh#IIyBPOmn2BK>m_od@X>X`al{h z@--i4yoQPS34!UlauUQqcS49s<&741Jw!#^T1|+d1$NR?v>KQ z=!(>9^e+Pp++O~u7j*cL*W;jXp={#&@eo?5#bT{k{STUK~iY(+lWlJ&jEdl0BznO zQDU2}#ZN*04~YB^kh%ec{k&I^zLApNf^oC}x&+f6f30%@A2V(-Qm1ME^MSL5VQ zr3SqCT~z&t&sJhmeb^`-JwexO?kTGOsgkO%EQwh^;mB7L%9j9uZ68rklqE2s7)hoO z0XLx*`>GQ(;zN7LOyue859*qM0S0N2U1y{gtOt z#aEuqp){)g%9Ac^CHNO(0Vmd-G-lRt#uKp=6W+7z3$$P<>IriDdLz|&c_EPu<&J|B)7(W37{JbuBnWcX+D!`_@Y>2DUyFf#WL<~ z;^1@jY7xyf=F*y!oLuJ9n1{>gbI9z_=$yVTM{b|^hyehElM~zI=)=k357auLMiewo z3V%b6V+27ked!E;;ov9^R^Lwvf2UlAZnCMezzDO9Jf{iZE5enr7N|BhA~1@63Xol% z$1$||kz!8lvB?QOV)a7fU=NNssQNtx54#p>g&u768Y}m!pTk%8)dvUjrApQtsQ2us zREBW&!8O(5QLks;w*A{S@7sE9&wf5xfW7_ofiao;?5_7sG=|y)S+>z5{J_ZA1a$4U zq!3=48>Ga$(cH7!++6b{vC%YZbJIEW1k8BlOmYX?+$NuK;WWPD#1p2SK>rD`9%*yK zMr`%W=@O+x4S}}1uZZaM8ElZxx|tLnZL<`0yx*gTv@#(XFeHe=$G zw4TL8d46blL1PB?_17l+hFYZ6Tr+k_3R+T0p{DXQ^VhWU1clY?WK&^tfeA{f6j4*D z$T|`fJyQQDw1q0-seU(5#}*<&hjloLEIm@|#t~dZ}s|!vkz{7#YioFWDV@*hvdy z{f6qmVJO&VFyK{*_5&ch(X)q-gY%`^F#M{NZ`;Q|Z^z1hZ$sw#qF*!L96EFeaO1J7 zmq)R-VFasV73k?e8pYMTei)4$*1=VCIU*$pH8SR*+uo^^@**7h$VzAwP{9{3uwO5lH9LV3Q>d6H zQamZN4Ds54PZ&pI%aF1erJI6FwZf(ui@4}gt-We4O9%wvWvHhZ?NXs(5nqNlX%q=u zmKr`ZH)I$g9$_XSPi-}am}-W-8D>y65@V_uskw#KYgEgDIv z;Oc2oK_vk25fj64%QR5vWS^^EmI_gKH`R}9FncMFJSM#`6`++|0?-NeS4BRmTws2u zvY-_0D$}aqk<7xzSE*E_1Yaov5XzRQ0)|aBOm8!RMybF|H49=lcuWXI46o7;)g%>C zrm@-7Da&Y<4O)zvU1ihF;tF)c>MFZo7S^zvF)?*)wIr6CPvoYLmW zQA}A>kw4s`Hu#w;9hl`v8H$2PR!XML1%i%Gn*a}4A zBS=oe%#3WQoHD7+Ak`)|6jAo2sR-3pLkyi0&FY+Ju=Xd!Qxzpys$jCSpHAKKa!0)q zHKlBQ>ZN?#!WeVwxHahKmd5kQnD^V`DN&R0{D#EIUOrTA0xq zsu`}+GHAe&I4S|IPT63m%s^sn-kvJ*WZr;Uk+2U_=kuk^L?GN)DQi*~hP}aRXM0uw zYRngFEW{EEv0mYB9LVulZ(};jfGb^%88n$c!B=WEX3*^Y1iSLhXnyWs9jgS47t?V} z@&wko%sxc**me|R9ke`c2Njq1+Ouov^*T!I&7`b@k0V9cPQ1ecmict#W{$cZVvUJi zGjKXEHpr--w-ewl1-UV6*uw=9*i_1)&j~D>XkZmJFe6W=eV|fr!SC&@P2^=mY!BMo zHIwb7KMNa6M4}SApVagMP7LY53LJ2ZU*~xU3qp#14hO1KxjV;+DC*w?9*2*ValHky za|09Ob%h|?PlR&h7DrMc0?E}B2j7TdgkocE)x#zAB>4%AY~$AJ5kO>W1ut{szH7E; zupY-Nb#(B9O*|wY{f_S7zm5PvW)qe^R68>G?*M8NOuBoc3Ce`v!(zdQ47(Ya^s-wx zKI}I98E3bPA9v7?ILcNeWN!q0XB+f^z(w-b_W|T=^JQ%P#%VO?Ubr#4aiT`_cgW9U zc{-7}C93i-7LStGUywg3U%Z5uaa&d2{Z9zs!% z%l_tLn8n}9@1W=0;N2u6Kx9D@+Hpjt>_`ud?qMGI*p^B z3A+uMzOf9>($3dQwG1dXC{70kmW1jCHAjdi>2-OLP;JRS)p`@>0IdW8#Zx892Am3k z)$H!**vC`2woOIfur73&cr(}7)MUD3= zp$3gt?I$=~1$g;PzLv>nhOmaH4C1h#ElCGN=}j47K)Jv-7`M1oE9ZlHnLk#r7@Qk%Q)`_6BOv(bL!QS*!kL+(<8l? zu<_jM6po5Na0TotSf$21;lQ@i9Es__*fsddcF|*;9@G+hDgM>V{)B!v=t0(*U5^LA zl1t(qM!;2$Q8=04*r~^Q1>k*D(*pQ_08Flk05>{v!4)rXlZ|EiCxUFhQaTF%aUZS> zpqoCqFJav7HWuPM7@7e>8i3BJo#0LtZ((9^%GFq|Ki^;QCdRoZDfouYuv-aBVZ(6@ z`viW;gTfRUIR`Qh3o^)A5gF{&_}w@d>y|c+(1BYxr(8O+O=<3D6U7x~S#ntu>=A&! zkG%%ZaX~+OE&eS6iP!OO(|fYh5m;N&tS=}kUj zQ)V*mKyV}iqS?!Yn}Tl$T8a9J5J+A$9UAu*0lZ}25rQi#r9*CVGeH}UE+y1p1Xh#B z>ey5z<=T{ye#cFx8h13Y{t6zQY>@Fm4(z)EQAzNdlYNEsror1L+^*1Wal+KsQJcPw zIq2)1LSM-R2Kw4~)b87)264BwDHC;Ig4y!3bak?h;oCN4Oot}wggy(;H$`DA<;`!% z7!X4Yyw_x)$E_09sM{sIo9gxAfkT{~Yc+6i=SZ&PA;X09869c_`1{0QwMY=KYK~cc)vNQbt$NmBA1|+8_fVE;9O!h57>- z1itifmt8Y{x{HreMIt$a4w?oI|w8A(9%#b@l4miiSv5sQA9IYNwbq zE8dAad@%G8sPaSj1-kGs+G~J8ZsQzUSRZ%z4;NC8#*q&)8a?}|FmGSZh-GBsNrCYc zP+H1|J52}1aeU5g#^?GSf*CesjG&f=jeQv3d$mkctts(uo;lwqBzt}{mYMx9ofL*k znc;HCd`2u9LQGz*O-*u(h2YGCjyRJp)Xig@uta~SFbjwFnqzS6Z{ahsN~ti|uW*%; z>O3{f=8^zKo*TmU(X)~_-6t0-9IUY=rs8WNgDd9O&Oo0fFUe=7|RR;=1Tv00x8(BoJ=4X0@ zlkqvPxp0qqgYC{e z1Qn4aQi{tUA|NWFB7{v)5&dNOkVO^&Q5F#q`49mS5djhT{{M6C_Flc}dR;RKD4AbU zeXHJm_bm6`bI(2J+;eGD=s|Q|;V6uH+qG*(J)MvY=eZ1Bfl=-iq`V+@5{HBt5 z>F8ubur0ziKuZIybi0^NjHJU#H_lBFBPUD6c4m?nYIR72PPRGlJ@Mvj%_=5?berdd z3Zz5(OLcnf8X4GgGOS7R3DnD?A=oI7TeU*F4C6OZ4-hq=w=TS>ExbWHZ$}*E%eOJx zSq#S%FiWk~?%19fGAi#u)7}Q^4cn_!0Yj{&ncLIELG>@3vRs_a@{!t}TSXB-kU?1H z^o$zR!g9SQm(&l zAABEmiSgDAHwE^aDUg~YtyP72oNFCN)>312JnJXSUc|-!pyRS`&S!yjK@RZ> zr(oAxDJv6_%*!OaMKQRAhnAgtsdXWJc4IJj4Pp1ah;0ZhefN9ma>MTcsQ8Y~*J$`W z9X~2xT>MoOk4Qb;GFE;V%@{mxRXlF3+=Sm+t6fYza99fb1vy;8tyas}lHF%3UDXzu>ppD#slv|>Q8;rI?kXon(n6%m3Wh)H=_2Xpuf!X3DAt?MZhFT@IzGezyK&5jpm$sDa0duzhHjTUv^<&=*K!K!LssxYcH@*}y8LfWc5KfmD1ansxj% zPk%3+FR5&53D3*G!cb-r9`eB`kORB6 zqBpU(!af;j;|9xx4daU&7Bh3@h0;t$QdmS#M}$UWKEU5@*UTtvqd+isT5EthDW6bP z9saI)poPIkdUn9UwLFrraROxNN0r*nsFD-mU$V-+3U4lJoX0hXHUpP(n5V0;Vu z3DabB@4?*}=&J0T25!-ShZRo-O4+HbbOjV2*iHvA5%<>SOT$1WgU$ajR7N^al~SUV ziADyQW;K&ce=u7b{oGeu1RBx^hmh^H*u>6ecF&_Jq%f|{VvB;SC8+9AVdH!))dvQp z1xyA82$tL>>DU(3GEKAbvi24lk}*TLW5m$Z_#G!IU!4cv0E9urQA9!E&o_ zU@Nth@O+9>omTk+e=0xkj>*r~M7SU@8VN$9y1|?hjLs^%!%(*Gs2*3}X4^|A4NUw^gc%vTddO9KU_9u7SQiYm z&RW0zWb5o>CyKbH3o$$zuLH*(H&c6x2IS0&^o;gsT%0$76fpmpqqK@pF+d2Lcrl?ruw`66*sNv8-l)VcC@3vIi(=P77}LnsV6Ok+q4&i|GFE(A4`Go#}#4vS_6b*^CH2UnhxR0Cy7EZe*Uf-&VQc* z=g%n4bjEs|4_Q}NcTa3|NJSj4r)4DlV>crIUkV~WuSC*|>xtZNiR|XWjglC6Y)=b; z|J;qhFQp)m9t22aI)FWar|$htH!!19|6jY&^KU8W`I^#0x3Q<^A@UjbLgasRBl4Rm zi2RlkNk_9M@;*B%W$klb=I9saTB7>Wjmb3gWWwcHEBuv zuWo$#?-YFbuJVPBY0sCJkuNEH&?aurI-Q3*`kFO>&)1VEc+ck1D65RSo6K?!XUi|z z60q-0H;yW2a>E`-@w54TDedJPR_LPHor^k{|Jx!gdx+fE>FA6Kg}!b?UXX&w)k-9N z-hNzka(MTGu;$y;~RR5rF0H79JONauPY$rXa_xw{+Kgaz>JU^{AS6c3!BnbHAR`Hg_A~GzAW?>lwZMDUdp#NHJ8vO^sIB`ch*4h|?b@(7wjC zivbY;E_9%Br?TKAw3wJExGM#{N0eSh5;%H~yyKBD0z|ew5=IdC;vWekU}VJq@-TvI zmVq~=VT8}X5^_312`Dg6DU#sS0tve7RP^;4y|3b83@T%koX+I1=6Bmf>(f$**1U>V z1{pZf+L{cPlD1%h$b`c=NeKb6&WLz8LR(~k-7oE6wJHl!UQ& zZwlzoQs@kgSRU=13$4}CBSV?>>m_g^?3w2f_);_Dxhb%_PqAa1#PYGLJU|G6sp5Iv zQ2MzPC_P_MVz9*WQEIIT7}hqJPlosztLMXXZYM529*7wQ?w4~#mCJ!)b9@UF5*aYXu zD+I#1f{OlxQ|oMI!j(8094eneLruEK4(0OEK_q@ZglrrK!Yfy&} z3hG#jcK2pC1^DB|d;A&%onMwLg^ zB<$6P%JP{%NXYPI2?4etl-DS7nI4d9*+Z?dqaBrM9M!8rg$+(Yyuj1J6E1z#I>q7% zQ7oQ{8JQ4ZmBgslIwkLk;aa=A7 zaWQpm?+hsh+1@c&9cG-hILvz-FmYSwS_~QchB^Bbh#wyY*P7cUDZDt4v?6wJb4Xl@ zIBNeJLzC5Ki9l^!W>`L6E+S4}gRA=bd~y`@{jj=%GqvXYTyvg>&Tx=|P0iJi4t3EI zZ;lh**gNrSVuQj6$Kz4*&kqKG6!^R7p4*5SPM6niwhs6&^@g-DN9o@EAb z`&iy=CmT*bqW9|L9?!|JCxf*Br-(VA5u0xZ<90=TXB73enE6E6bfGyYgN$T6&Sys9 zJ!x^i%$!Ej>85R1v~E+hZtsc~lGi6I_%jEb}a}sf5Ohrl+t4g&9rhoavT}^`D zc{g>aECLC6!x$-{I*A5S2E#K!RWYf&M29gt zj%%Ziq+N$Fz!MY~`x>iQUB;R~Qs((G4)W_2DWvRz(liuICX@SRgw0_$MO9BWRc%{@ zyUFRLc2#33y2AL(sV(`gIAv9-`xc_zeDbtzIKtcH%uo} zU^=CkQq}U9cGa_bLATNk-I)~V&MLap#yq+mRIy%=oa=^UJq3~tMUv{8NAi21j-_Kj zYqilMRR%<&=NG%N;~6Q~@l0h0)i=kEM^v-Ssj6lvdpA5cpU}h4?$*Q4NzubUtvyV2 z&h>Ds7oF|&(DXCiXlkXP>1UNDs(YTM4m#cGLHid&w3lJfl1RQBUS3WX$I4P>uygbb zl1VGP+5{J9ddIfFA8Xudoof<6nq(m#AUU#+my)-JsY3g3-jSZH$(oyKH`;XhsZ?0f zf|XtVEMb^$H&&A0_Zze0K;fK2svP-pAb z^lanBal_JsIvWW!rVS*Ue5Et5kQ9iu+X0z7CsuX@RQVTDM+tID1exSpmvn@~>phm! zMXVfq#p{VdON5s z3TjJdQ0KwSBnP$)wB%c6A|u?t(GJj~PAKGK|drr^b* zAb;rY(rXI(R8QGX+1qwW!51h?9>6?Z;t2E?wb?K6&$8AU%`L{DlD!BcS@X*H+Fto` z3h0z}AnGfpANs$hfc{m5{%@xr`qxrGH?;rz>4*OH6wv>JV2@Y6(G&E_Hwj^hzW-JV z4E|Fw_;ybiSUHwB^8PCY^zSJ2|33ZDzncR38JI5M{+ax9dS~5PXtLX!U!l;?KK;;F zrhtBqLO=KPLq9JC^i>MI@6@0#W2d^ro->_lZgcBJ)lL6R*V4+3Bwp7^4k@RYhgSvc zua^)mPxqgBX$uzz?xms7nKf4QIui%5Gul#8V8tL?aDf%A3u=v7Ua)NLG4s(Bds`R4 zZ^vYI@kfyqFS+wofmkhGqRJCx@lyQKIj}CxM{eEIn+SDFKIBo25W7Y}UKDjqEytsO zkpe{m(z)pnVzvWBqn=;dJH!j?%_`IQ7+0?8&P^TQU9J>%_Xw7f6hmBvXBBp%wAM%i;L!B=?%?sQ;O+dA+pFInV6Qw+z-6u zn_Y9&a9%>x%OBC(o{vt7nn5Zzaqf0e)Na;xIAdj2COH6~l%gHu0OY(~&eCICXO9o( zxABvO^ICpVbGo0rmF>i9DRIcD{Z1#yKduU{bUAys0ty(F^a z>P5GT^Nj({dn@+Dabpyatq2}iD@B;mMr zyR(Bzunh4Kr3bp9^t==(wG<_e?9+hK^Fx$QkDx5s%g)mIcrJDlvpkCcK4kbeg7TF_ zEkRHQdze)_ZJeKZ=Tfp=w=k`9G%m_VPu z$%~BOpm|iy_H9GTea3s@hP=5Zu3$LUoGsKdw->7Ap$rUe2t(R@)5e=OZrQZ?<}_EC zttO&or^E}X-QLKFLw`mhZP0aVHB#|TG;!f-DUZA93`^DokQg&-?i4Zsqph=w^R{>) zLPPUKTt8AmQqY=al*Ahsz^?)xlyM!k|M5I7HUdRsZ(C;{pDir7mR$U0o>ynz$HAzc?8eP1(uS}_>j%q%=G9QRXTv9i4CMdt`-}E zHn}l=sxkqzy*ZkRk)<~p;oI>RMVsgfK(`mNz2B_hM;w}^W%F3=1PX^$=T;wlCNGub0x8IZ0WhmIk z(Q%?t#mzZ*GC{1PCX5bBJu%NMEtDqY7LnUH8!wJd$@6UY+Uav1xf;y2%3C1{b)HrJ z+!W2-)!$~~ucSHR`C~*_mwD0vpCwh7P7gV^%QsE7^E*cmlfQTFI;=A%#h?q`CW4w^ zo+IQQ&&`fA4MEHZ!bZ+;j5EM>7pU9u$2rx#D@v71czo-8@Y}1Z{<5YEIJWoC;4T&n z8zU|s%f3loL3Ybjz^ua+mvysB7zx!lR>JLw_+o~#NsPY>9%)DnrgX;%4JLQbaE_%} zATAHa2&6U+2h)-!Bji+;h%1Ohp^k{|Nfh$T(_V(qHN;;T07VS?>yEf#_tsTfG*bL3 zNO3(~QOIoBp0O7S3{>ZEZ`CZ4=i`Emxp^$KxX1{%ACLnOU9;#%oF;3a^M?8$k4w1W zam)Jk1Jwn;WnY;R)Q+ngO|toBw4s(w;IOtzhdjlLBfIuk&t)F^}SiP{D`)J+n7x7zB9ZUF)2 zu>n|xYMI%+J^mgmy0@x^Mjf0u0x7qK6!bu#?k=bB7#yWk6TI%X z3eb=DZF2L6eiv^yGLb;9ZoBxzm%8raxkCXM7bzqG7ZylO?!&w!xC;8h zGImqZS&lqCCMR;R?P=RInPH&!N#hmSa4kI_g62BzqO{qNrFP{uZAZmNn!S}a=>FhtqHuWKLQ#ZSaG@6K<^p@9p2D7=9nq;m56J z$Hn$jDcUiMEw_qp7^kpK>tb8^G$D8`s`43rUuup0YzmbA5p^)LxRG=y9l7*>#BR~d z6-e{Z_?}Q_1D-^d7~})+nz!uQPHBUvK+q_f3dOjy;)$FVII-QK71fFzRsh*7;wqT7 zU80_+?Rkr6TlQPUZY)@OpP16&b2gTQYD7+aq1#yfVv4c)B^|5WX!^1GTfOcY&G3=k z9*0ne?U3BT*=cX6L%=i<8Ee=Kve7hKMQuc0h%{lhkYSfCd%tJ~so9OnSPeF#5#>V^ zCfz4m1>}^rkkL_|dO^BE*olMP)gnfbL40I$WH|jtx8d~76vN3V72K-2;gmueCxxW^ zXNZqk22Z2)G3_e%aiDRknWa)5IeJW+7clG81Y;1|{CilRyg$&{keofY!cDB&3uy7R zp^UG=uWB-_yp|RA;aTn+b^71Wo^l}=6=#kLl0~g#Q|hU!ywNpL;CYWi-^|q7gV{H%UW%9Gfy4>fgJj zVjAj&U6r&17_{any4QLb1C{^BpFfWeqY?fSzl%nAQP)^n?N}d;;R*VZ1GX*%_7(p8 zRet@eV*k_t=a*mzscop$ZvU)w8>=%Z#wrCarXi)R zAFGepKcW0nrkW6!SiFoGr2ot8pVe-|X)eWZGI~9iQa7AZNaG~?XFbH{A+>)lsc4P^ zjnk!Qx>FG)lX5?$Ve|rH7)6T0THRPeUqJROrDwKQF}eO|@X8AGiVbT`nODCxcxW0S zgxm~EMtcnez_u4@*{eKo%V6MoZM??oeMMU`35^c2`@K>128Q770{qs6bJL5B@<8@j7(_Zi8HRocL(kS?Oe2S)zY@TXI&%}i5B0*)KC&T?;~^y*0{tzI??B?M z50zhJmKz*g)U8PCal&?@#%3Cb3pO#}I=n2FgUZ(@MzQR;lStT%ec6qzZ!Z_e>-^oj zf>oM$Vl$_+iuVn@^+h(rUP_*Swhi&r7htvce|a0Q}Mv?fjay^D_P+I={jO+wUN5kL!zO`AWFh z>(^62{|$xyn>|5a@@lP@r+{uu23(z&L%W&`z@#8v>J);xc1o#gE=@Xn#*w<89CfRf4o3A5pqq-;J){ zPeIokl`bj=p04gIf4Y8H`U0{ycf4a?d2cAw)sOQOWsJq6=74G*4!=d$HK z-Xwwu_ZxK|NOcD>7LD+^7=PAHmGq9=oCXn7&*D4AA9WX6I)(G9 zm8UyQej;df!nIl{vVvcgQwLv7yM~|b8y=|4@aGyo>ilTp!?>J|^Lr0~?%{jF%jblE z?&Z%v?wkLKG|ijSY=daXd(d3BwN~uG31NlxO2Xp614GjG+x;Ft>jWdcm7n47cWYbe z3>BGtVN%W)BP&m};UgtrhsetzOM~U}Vh~$5F*Ol#dhoa~Qa<1=FPwikjzn|#zgBzW`MxoGwWP~@bmR&| z92>G_8)YdE?oARjGo|cQb_k>wBsT^(j5rbA>A0$Y+uUP>lcVki$x$iFU6H&34p-jU zlcH#mEcX{mwp(Z9dZpN=dnaz4gwn9H)~p7{k#}oe2ak$rT2ChPRwWauUQkr3xX^5p zO=L=Pq`9X~T_;AURKxEVe7DGeZ~eSgA)@0Je4ekD7v#t=*)CDoGLG$-l#Vc0w7I)9 zCE^M($2{JvM~kgdD{b?=4eJZZ0YZ(;wO@)8J8p^f2wHMZ)ao+{cDX7JP}l0m76NKa zNP2`B^0ti4o;q-~L!bBa8A6rhv_%qUmvoE1gHM>Ja+rYFP10NFgc2I^J2N-&43&vHfQG+^+XIeZcCp7X9@$o(B4fCLr3H={2|P)M7(<9+GPRP+)`oq z_M(t)m8U`{3I@_gJkye}A@^K+=zn|i|5VtQ2q)S#X&IP|T2CCjm~$~{d3m!zhi+;;lBR;qLA2WA7Aa zvcGd;+So^OIiuVj>8`MToIWgJAl-B5tsQ5?abFmWDz1Z)ETOsAGHz0dm6Tn zA%k6mx)$2;WO)3tkjIrn(fR*6%Uah4X1Po7(J+$K%5+FS4El~N=0Yqrf+dD>PL^GL zV0>GhwFu`9OGc=-Mdhk+7|MzoJc+z^9cd;_+M_T>-8Uyy zg~A3mmMm-)Hn_XZcHTBES>24?Umg4GC+itko8qANqar!qms#!3|L*OK-@z!8Gq5^EwiW6#1q>L8M!8U3u$Oe+llZ~n z>`awErd3FGAMYXXz|2(n6F!or%{2p`h}syF?1iuO6bw|}$_Cz!4`X(FhimX^#dUpW zTsub2RNlo_1mo9xV8X7-dmMlv1@NQ20C>Lx@cVH9A9MhossM_;0QiUl@TNF`k2(O8 z3Shby03UY%{xAUWxA@f@P56`pQ&BKI#oT|!fq8QPh9=6&XB_|&c7Ja#bbQ_ccuO3> z7aV{eR|@Xy1;CdbfIp1`_=*GYfC6}7F95#g0Q^}Tz}Fps7b$>O^#b5q4#3;u0KV-2 zJg5Nvpceq&bpYNG05}VQQ)Vo!U`(Khi9b>>@9YK4xokyd^*aMFGL}|30Pj)&f87g! z)egYB;sDk-03TBTpXdspWHZoBKEwemboO*U338!{U$M2ihOf|J1XrZ|p~EQYnDbSr z(=C35UL~|cmy#?BNyk2}PSK8u;h>wzc@JTp@8*cxD?X{|P-<1KA-JVtI5H{lp^pl5 z(Lv?#Y2D?*0`EMqeP?DCyTBP_b(y325wVzvI%JT!=3|j?bLfTKPzJR%);y@oBc|Ph zAe7F^IOm`@HCEPkBlYnqNS#(v=`wSq9{E$~ciWKta|+riC{Xk71a$N|5^ow+(vhye z=WRmY;mkIzXn!!_eT6#qV37^X<{LKkDM#9x5CtztLt?mW>Ma&dI4CGb8jUq6RhMpU zt~@`1ZZlZRw@8Z{Zn`;p^UXI$Q8h0u-7@l3MbIwe`}2G`Y!G)g1^87@>9C4OV%qC-NC4YZR2a+WHrWEZMNl(YL>%IsL$;UU0q}OOY@4l{VA;_hq{q-qux)PRTDt_yf z%T^@x@TP8r45uLEN0bmcx*Z|QW$s>y3#g2A!{^D}@tJ-tM$Gd=WRCQmqG#N!1K$5^ zT;a^5MPGP22e>Xe35|$5Jvw>uO>?icImCxEr|u0;H&iO0jII3Jy7kVE?!8mli8|;Y zy3E~ZY5m;NrY>5AsS&h0n8nf^4FXLxY$dqd9m7RrzhVgv%&wW31Kv!^ zGVwG|LE! zUe=A|<;jU-F)mlTad|EUmw!yTO!vR%@~17AG4Q&(`3?81BQebNY1|UMIq{YKzF7$B z=yuWykkAq0$F=NHjAO)ce0c*KL0=|HV&sO%KIcR?)-R@D{XNQhMg@4*zuL0i6B17J z4&H9t1hb>c+pHNWs6KRQ@qy!1M1nEdMAo zmkts5pT@MG?#8tHQZVg)Wg3GCJk$QdGR^mTWcFA)gPjdaPI2ExIB+8-q#KN3!ngN* zG`D}Y8=Ie>g3Uj#Y-Y@XXLEsUP6#-ND4)v+F0iY$3rI+<6h(IRQ59BkG|kk96Jr;2^}s_7aj-%(K_o;28O*BF zzTXPs@r=4)UW`RC*wNm;gm&Ap+y`g3~J3e3~Xx8nGta(L^||!5#F3^=gk{Z z(8TBs@P?rqo~HhTP&wzszGO1R;9eW1m7xJ)S-i!$Gc;CKD z`=A|Zt3p$}nmg5El`LV#h*F5{iYzzOo>U><}+O8v6dS!JfkDUGE6+l|OSPeCN( zbwDJ8bv%*#Es=Y09!+udd0#q{2(z-O?PS0y5%}(I1im)~fs7XdfeaS%1U^}EYuSrf z5D?Z(Eg6jV$}aAnaK$BN*762sRJD3vH+nvhf*yt^fgZ*td3p{Vq!+Sb zuNcFfn?U$PVdfYD6?ywt1D?~;{5+2t8liot&NHGDxH_$hTes`-0x6UT2|b|In|%Ar zZbW`K1(DxUA{ig$iM-E_N?H4G3XW@EXs@Q^4xiEPRnWCjF7J^ykN|_fbFv;QElM0S zV^cG78<<4Ea%IJfTIV>gWp%?jrIjj4?*COczWj9xzA&;2ozJi?&zF~xFNG-n#yEn@ zMlI3Kt1dqvL)dU;7dc3NVDo{iWK~?1ibf&!^m@`dBxXeIf8k$Qiwj26aveo2_paPSL0mZ{u(8 zM6J4#0#0IMxdQdgm3uCj$U?;#b3{ z!w$@>f_X+SVCc_QFrNy*9Q9zH=D^&mU|PL^p@Ub!d^!MA^k7O3%+D#97xw~&PEG~$ znE=d;2Q%xyyi~#T6n#%GpMv>p0H*1|9Cu($4E|etp@tqU1@pN8%riZhdmWg!D>WbK z1q>ZO3g+_xn4j`sp5wrLRKa|%7cg{{D3~tcevE0}Nf0*0;v1@pxKjLiIB zbO63B0QRgnvlj@z>>zwO4&hfUggqnsP$ThbXNJ0U9jDaG#@cS3{oH~!=c4-AlJ@FH z)f%%Br;jMx!tqj`chm30W;S{`{qGS`7go9kD8=l*uTDY9gUXTD@DDiBYf{bx=&wxy z{dEfc^`{6u!S?-z6wpn$FqJ0Ji;}{H-;|;qWBaD&v>YBrl6!iMs`7^f>H0OncKzlQ zI8oig2&Jy&aC#`ig_CyvZ|O$JpQa$hgbP!rbA&*l>%P;W=O?=3{IhQOysbMv5-v{0kxNt0aR=TcfGhM%50F2|#U zKiQ4TpGv`H6D3UJf#>ogQNqgdj#0v&?#BAhq+mU5Dv-=HsCd@@FN+d3LzfxRLK*zo zZv6XP3jUcWVOokj|Nb{b33p)H=esfO3n`dpqJ(Mp@=W`|iW2TJx4+np&0kKzW)me$ zyPs$C_d}Gh5+B_`f2AA6Urj+VO_7jhv_pD|zaOK7lQ{6TkOK)(!pSGY?-!?B<@fRO zY4f|La=F@T{F?LS8JoH5sSiTLs-KbkPw=_EghE(+u3tqbIiKsx`17yx<2UeO9IwC0 z@8VuNTMgik4#aoNJ7}*deyDF!5^6hJjqOcJu3A^SF3_Og}pS-PF2^H|!+(n^-LvUC}Pxb#?oGvzRc1cEd3KpyIJ}NmUgl9B9?Zr^l_H9vGi9gjk5GX zmY&Sgds!M`>76Y72up8e>1LMR!qN}3^am{6z|!kkx{jq+v$UC|-(hJZOTWp|6Ipr* zOWR47Tv7B){`NwCy@#bgXK8_@x3YAcr9WnAo~1XkRA=e6EX}d>dn{F1dId`}Ed4r5 z6_$RLr4R7qL;PTZIvvOF;nOjW-gmL|VwT>?(l4|04wim_rMI!vVu{hrmHSv?oOb2e zEHNa#axY77W@&*Xo*$?*SmM!#N|hy^@2HendOb@;mR`%!(^z_trNb<}ilzN5y^^Kx z5Z&KlDaYSl!O~8aUe403Ed2&cKf=<>Sh|s=m$I~pr5CgGM3!E}(hsrpLYA&&=>;rZ z&C)NibR|o_z|tiwJ)fo3Ed4A?t5|v-OJ}omKTBt@B=9=OL8aE zmspZJpZE)b3& zeTJniEYX}>*}xLb<&^=J=wzs@W9j28UBeO`QI)G$qR+5$8B26!RxV=cLoA)o(g#^O zmnHhbD`&DqpM2%N`SE@}{U%GIyNgu(Dt{}no|lg+D0u#svhYln&L>~K%X%wW`VLFq z<Z52xg zSvr@cJuIzc={AV-%F=f!$uDMUHGf;f z(zz_HX6Y=J{Cd#O-%jv1-VI;*8J5oOA{;&vh*~Tl2)Ia`1IHL^hTCm!V<$#E5FQ=Tbn9<{F>#*x%_w{KhEaI z06)&;#}oMR-xNG+S^73hk7MZ@EM3jgzq52HOaI2w6)b&;rHfE%w$7hjY~Y>((JW53 zu9R;${(vy#tp1ptEtIP#TNmyrA{#b--lkQ5>7)jjwAM`2W@l^F*+TtTzE+)CJo!ND zys61qTfVqdEg&d5Us{+)lsICq8z-NS){tsZer_yQ=L<+<{@Vy3Ze7C6(g>SA){yG; zYGDSgo!_h@-}JO=`Q zYa`PmV|sD*3}IiQcX@zjT#7J0Q=2%31^*AxLTe3@TL4wuZ!?YLn58;^uVD${*7-tp zVj3qRPUg;NU2K1A%rvL+JU;_qtET5?XY#n!r*N|JRyKC&BqDrqn-tpP1!R)U{N(+u zi*N+0*vR9Ok^F4A+MF+)%)Ps{y3rhOFtY}O(}B&q*uaJOF^`O$<=HZ?3OZSNpEOJU zlqVMf_nvzem0M``k|GkqPg9Ahoxrso<0b6y?{8fk{)!X)6Qy|7Vi`Aeuzl@93a7%oh!PfVlY>u}s&L1zAPDm}JD{anbm$$6xLQWu@ z95{0Sxo4aq;Z=q4iA;Hx2m3OkTes~2`w=J)Ue-|)oiSZ2_DQ|T=6n+gX=RshU*K^V z=`o?Cudh%3X0{d@rBR;g7>HIFZ~#Q*T!q}sM;s*m@}2&Ay12%L#y%xd5B2IsIe#oxD43!(g^=NH?5mAk! z0}>_ctT`};Q!_PxEfbF{=mDDy55@4LgdumlR$Rm(oJN)`B7Xc=o>b}#Pn6yID5KZ5 zWe)RX(hlC#Hn4VEp~~Ca*dmUom~%Ne@-bhYLnq9aAwRNf2VLvR9|M0RbEu9ZPPTE& zHF8Gku^J=^g7*dnl>-JrLM)@7(E|`R1MWp!k_QTdeqw$16wQvgFGqcYZGGk{jUm0N z#m=zMJ@Z|HQ#r236M80kcC3u+)ohao^pvLijtj~7&wc0VCtH_)4`Hwie4d;#=kxuk zAy+l*O@nomM8)9N*pwv%j`@J=d~GPR9{Fi;0BQaDV<%V&*lWifXQ9X?9OJ|AlCPZ1 zk%1)%5^+#`e)lYf#wy~Pg~38Itz3RPyFLdvbo9lY;k>teTxW(^f5TPrZ7Pv-8B=U4dWVb8&! zid{@@Yi>8%xXRaw4P8_1rreWJZH=!c6VyD+=5D~l%ltzxOiYcz+!IkFz=Tk&P&IX~ z$^B3igses8;l;VD@$eE4!miQg`T4mucpk9AEMzBJD{Bx;^^>_(xmBp~DBnU$~mg>bHL`WgUyv$Xh2%}hAZto&;IrXS30ZD{`LV^`pWtCx7Dj{>4_Jb zQnT{im1mqW55^cX^*D4I=;L}VUUeSY*K5%Fx@$K!8}*Ijq~wXx_8?kgb!&yE~yX6>#WrZV|!mrBdce z)ARGl?6GlUZH`AwoArrOwpO3oXqs(o#QV2oRl|FTG{GH?@RaIco34hW<0f4RZ#x*u zcvhNi*9a4!hbv0^(ssz|mj30;iRm)38p=Ql+Qjkv=~@#>8Ol|Rure}{SUG_0o4s|^ z{-oOdJC6TG6-wB#W_wL^{!eNqb=5=U=vQ@V3!|hep8^R5DfEo88n9 zNfmD!43|XFDh%!;hT*PN^APa(sP5G~c>tPBN8qt1(ER54XY?0AL7HYydzB!ni)_PA z48tBd=Q!raOH<`)6`KJ$I$bKD->8ntGp{vq!bp1|VRKMsmR6FC)WW*QdmN#IlBy^+ zhOJf`LRFq4o+yQYden(xk~tL$p*FExJjirUaU&J6jnhD9xJoHhIg!o%IwyF&6y^9X zx#yOBuPO;DLqWkdH|zs!jWk&R#2&ITmT?C*9D=G>`*CNSKibZ4MshJ^YR&n%<~-Ea z46+*#%v=pZanTL=(?D^oXN?vT^j#9&J7Eox%_3+kB9D!^3lDqDdEW9pQEG5cOz|Hy z)X1Q5<`j{$>w|$xX=vA{dFHj#G*4hVuRVT-c~FI58^(&kHl)_Qo_z;Z9Gcl%$l&x9 z&*;~62P!EsaHDhvHkMiRq_9%)1aCteha7K_6yrpR=@6J$<9MN7rX|bV{Z}lCp$EO# zo_<=6_y$foty8_x3X{Ryce+3rHCaaPb)#w4&DHfq>i*A zb>gq@sP5s=K)?@p3%+NSU5 z9MTt4f)yS0c3M3}M_rY>9ctHOsdnvf>pSe7AxcJvyG^QI6RXO(5wO(M-JaWtW|Qg$ zgqgZG=eDBm)vs_spCGrENR(7sjgt{-B&mP>p zE4TZOJ78lo*4Tp(G4q9O=s{;~6|uSP^rT&(F1h^FD|~C|^ee1E9t*DQE;|j(GHSO3 zy4@5lAezB2s!r_IQ^Xx}C)(~L*zT%u2oySR_|>nQ>oSM2f0%?-Hn5_Zd{fj^HK&v= z#BL!&-IzgCun8dyNiM2@JmRd%=ON^*S6goXs3ujC>{fP1gN2aWMkcmr3ab9V5W6mO zkjJXcyzQ}t4*+VSZ) zd;;>YKa*L90r_JEM|66EBCqhZb_#dhx!We7Z;TjXBCiD_lr6|86%|S^D+}|?@wxpc z<4UTyJLysuZt>e#hR?t#|Cm%dm^~ za{yik*;Ku7yd3NqlA45E+NIS7czxecX2Z?dn>M#K<&z;ApQg*Ard?u2PmEeLzF)=I zjw*~FC1-t#k~>*mC>0OE7IJXDG-uc?*0QmFT1c>EDb4jCMN-Pmo1zSd6aQdyoNqNo zHn%^j&ER_K-OyUZ)zKKa!B>e8xVu_GWI)CsZzZlJ%!)`^JF-yc){6 zZNx9PW`7#BE>ZuBz98yDblvEX%h%G-ZPDmprAto!Ya0#q4TE{Y2=m%cxPG!?l!Ajx zr|b=Zd2<+-R$W>Be$*&e{s&{ki-LN1zKG z_FA192cNX*8u%eAxDB+U;+l4sszSmF^Z1sym?hmy=82hpn$|5$u8MFeL*dF#V)e^5 z>&3}_*O)Y*<4*h>Qk0c=X21c8jQoSq3n&{@))SNu+v5TN#<~+#b&)he6^G+gASMn^ zwHn;jHC3<$)#Hd21gu5bwiS+@aG*+MKR!tS*uMn&dt6#y?*R3tTR)F`L>|D?qK>K_ z@lN*VQ%mhjuDPML4tggBv$N%iGVhg8?)PN>!XOijAsHy4!XFio>oVIIA!K(Im`t$a z$#y~`Ld4AEV6z)j>?y`90!I_WF4#&NTK*ksI7>VZ!ZX+q=@s%4iS?~U$>y7uk(_1P z0>ucYHJ2d%8W?IKEa2O7b;Mw3d`VWsDQv1RilXg`LvlEm*o1q_FT_UrY42X(J z5fG<0n{qfCf6&Ga^s<=5jdZbghFo|Nt_KuM{=$l&66G&@*8an25X&zdwjpu>5|_cS&?x5_9P0X`Z8o++lGkOe$tt%6Nqx@~ zZ`NgMH0-*N`%A1yQq34-ytMAN{z&p}OD_K&a?(hxQ0mr@yEIbd3tu{8xP=qW`*0Nw zDfMfb<3S@ozNoi*U~MtFot5-aS+y%&@^6ce+l=^SEWs6SLBW+B4}aU$A!)c90NuKQ zi=C@Xv{K{~x7erQrk}N*ugvhBFrFTQEZ`xA!J1|QR2|(27Llam*!|1$7wA)#R+&K2 zEf9iTOLGTZF7I%egK`n9rgfM^0_du@S&yU)JyCka9Un|4hn`!Z5?A`@`VKfy%WJcF zwx%S52%AzOCCSk2`1*bX{t{3U~Z;-2G`NgDojVeXRqPF8puk-F1kD%Ka#6UmDgn zQSGL})$~Y;cktI9h2H-Xy@QW|+fGYc9&JmXbfq^u#{QPQ+LnINmCBE`zukI`E&Y}& zo%cBV+c#Y4x@+xkFSMm*D5GhVZCEK5w0ivT=}O zDzvsc-{#cfto1q4KWc0HzKOZuc2tiK;GHb~nzh%?b=hmm7Oo-AI)no_s|D^?>vA)K z2?wi}a5V!$E-2hxcp#2(V02ceG*W`_M4+Bdf0_mp1Q=VYC}U;yQM)aKsTREa47Re~ z%wuX%Rh{D$58~#{MmA`4Y^{HBZOrYWF0ma86D9GI4B(Inj+TgR)H=kbkqyV5tx1%VyJT%7)Y$wEz%`>*uOM19Y${4^2lPBc z9FnjQL>F6M$JqDKIUTt=wpIyQ>zB`xFg24aEsD3Xd*czunn3a>EDf99%C$$Md#{eD zGUyeDdDueg9gcARlab}$Ru3y8kLby@!AIH5{+SXFH^FI- zFf|x3s*#aLZ@fRa!&U<Zak3vFrVqBTL2*3O`XV%Y61v+5}F(6^kq1=072T zhhW=Y08?A` z6PGa$goOL8&OHTcr%{ffzhq4?4i4DLSY`EndIC3|3O(rrCvyuup zf(|8Uajr0rgWThGv#=ju-G%}l`ME_}536%FeiBz#R2TSDZNdIDhqVbm;J>+|{jFL; z1a|$H)T}PJ1`(vGP#dzXKrmv-gbZ>^5DAn-b^)IF&f8lyu&bP`@ifwI4X`vPLi>X2 zyCBGDgd3PF&oHNF!?7=6bAc9v&KI0CwpF;M16^C(Z)<0R{3ZH7x2HWgIL zCRxKAsp36i4v9r7{U&g7Phn0GYTGRhW;Was3tccGIqDzE^KwjtjZ6Ll7^raYpBfxG z5C)LK+;m(dLy>W|MB{$oh6QGGdadn|FKqL0t{1-M8iIMuZR4Q|v<^2iqVZt0z{zWN zja_+!!QMqq<2=ThcZKgF+ZVEeqT1vZW&=&>Y^;BQ!|-s~-*F{Sh6(a;b3e{uieQgo>EebPJ*%{2P9~(F_ zl(`$vF<6Uo7%%9) zhfO=^hT(xUak0Mkl4tPSgs^*$DDIvV>OCpeA|sNSs;h`{Mn_{^!7jr|>k@NRxVA!p zC;jeQw9HxZEFwb*F!Mw#(seLD%_SAx?k8TG)kNR~!V^)q8~d}eFgd(zH;idxvWl6V zOdEz{{pb>ky=J2X;Sg!V%THr#X=7{DM$v{W5m^qxtbeLVvki|pzokQ-H9M`~5w5Tz z|4ptn#uO}#jIif~!cjJue!4LEUWt@BUMOSD!RUheA^l|3gQ)$5fC4!NRVaFffNw(h zIRpiM*CpTcN9!jELSH9QcyjN$e9dB)F=s@T5wn;|Jf7_8u~5S$4*kKZ8xcX(O;8l- z^#YEbb6M9`9CyggL+GZo;N6SiOgHQh&S6oKzh1TQ8(wnA{~ljh(4u9AN7RxV#I+IS zZUj5cTX^P>=BuLt8zQYo!W}!2=h06fi^{oBrL2bDR4gq-mnBPKcq+0mj#ICYtZX|t zBbsjYL2z2T8-Fi5diQp}l6B)(TlB=J97Un(h%h$j5A*7e@%f((*Y>7;PwuTfFHvfs}WKp(m(y;ZV@WrMd_u8hPto};0LVy!+^s_l#pv61sGP5fbP*-~3kRBevA@?_SsAimv!0U`wgZQb;ACr1fB+ zSY$G^0utF}Zt$pelZ@^1a1`pI2w;plKffY`TZF?21_Q>v?fZsf$3bC< zBZC<>ogQY)hQ?s!_^>Vm#gA{9U1ZGsAl3tGam-E>aB?eezuM!?7DM}cR;)QC?6zpd zTZ>b~@Qwvp{#bviI0>;1n~>NH^HZf-wozc_w{Yah601fYOi%N~%XGG5I!;!D<7&_t zL)%&8I6|JTaxn|tG4g%k=wSAcqu$H`ZN;w&9M7&hRPVELBBhe#-i|DyW{J1@29{mO zGe3UPt?6FlNKl`+z_Nli&2^o?malO;4w1=hG?^e*EgYQ&LGL9aJKc{19{&+v^u5Xz z4c!SEWC}4*@c)IY4hiEwGXx?pM@ItQrwZ58 zI3P82{StB2?;h!VT|Q28=bLUEvz;AVoqYH9us*q$zo$!*$0F44zUOO^ogGdRi(1!F zBk*F}$qq+YM0dah9`h5Q7BzuDkro9RHCrV&mZj^oS{$$ophagKF-3;SLByUBQjL`ak} z76Mr2TpjMsP+%J(rQ_^N1}#fj)X2iz({Px`T9~ZTMeAFe5FJcryGy}Hp&0s{{7Tr3 z6YZK5*Qi9GT`3;b*n|g}zh9iqYnUUl@;dkZ;@rjfzJamO61#B4p4Df)h?sKU6 zxb|j~D!)DV5mdg~R<`YiQ+?#8m&czljrx%#Vv$<#B@gs*_01<~E_$K0pCb-gV;=LTE)>lS5?5%>5-bABqZNz6hB5AedW z%H_0%m=T-}w(WxrCLz>1xd#Ez!nSAK;m0t{R}BOUP5Ri z(V;N{)f!xW<*9aJsc4=fU5-|eJ_12A*vVTRALRl}1CnG)$+86m!L zB~J*ibfi4eK*(X9x&$SHU&Sp=cJwNJ*%C4qa&*9xH-*azz#*>l{AVk2n1^FmL#{^p z5AL`F34VfD3Hw6xc(#H2KyYM4sU1MD86s$==`4f|zgldJY-$J75g&BfLFh7N84!jf zZgZxPwUO5gkOEC@6tG`NfJlg zt|tJ&?AgKWn$@ZPqghrn5(Kk@-~9C0y=QdSjy!vO-+@3tNF`_($U$l*hT@OuA#@0y z5qWQgtgar+I|i|HXvdL5cOKZ$@5nOaRw_wD6xbNDJe(n#F&Ki(2xOIVFl&V?q7Ip~ zNkr^ib!u(!IIl`HpYGqg%RXVi2V3tv&i8G-UFW1*mF$5>v-*jFKmwL^HBh{~h~}6T zzAIUt$5!-SYelc*P{oOHJb;D{Pc}}QOXTVx&9|GpWF}8>)s1c>P+KJ^NOMYLT2WN0EeeGP{v|FW5kYKusSS$?wP!lNmsj+hn47!PO*E z$XGU8(+*mf87&rNUfLRcD4-?BUi&)+_8!AM%pY`8SjqHRL#FH6gSFYxUd&m{)qWY{ z5NL#pH_%$vRMtMos*K@d`vBEYB{DQYg|6a6i-QXB2e?WnNe^JK2lW8Jl<4X&GMTFE zU{>T1om}}B_x%z%z4=x5ePwPXp8tpYerfJfeE(1P{ZZ6AE8lV7x8%0q`x&pa?cbKW z4c}L|?|T^{TRF#l-=OM7`68tU~L2(|JzoL}+Wrcv_>FHl}HH~eIso7;8F>j}i|lRUJAI99MQB?ik1;2%hr}17kej;lgR?910$lm7%n(U!odSrYd4NEojP1Za6mOS zny1wNH*VvOtvZjpAqo@w4%$aPHp+KQq|GO0)TbADm^&fQ;6r6x zTqSwHpqL;C4|*vV0U?a*JkFQ$+!2o;h%T;?+&=6oelE(kY<|aF_JfkTDZEy4Otv|} zTMJnRg?WebyDKWhBHxGox*8@-hGtE z9JH(IJhT>xQ^#NcJO`YLUkUjU!iSRHOdt4==Ka`l4n&$7%+4NT5WfD{Fd^GG{envi zYsciP-$}^p5n!oacX(oRz^=2CjC~mdR)Be;@RLP~j)}W-?^6=7^Yha2vWL!-5lneY z_h_xY80a7D>EyUak^E4IuwP|M@iv5Y{rGebJqy@q`lv;pO^@&CaE)iJ@FKy{$;$l! zXCyA&M>)vjl0O5ksp>jEhp21MZ0D;-?eavDnw=o)bxgvHu^tg1;h+p=ts~SaHPEQo z>rlcW`J^~IKNEQSI5n07IXVbKd9jmm=ZjuOoS3eGATu=}DyVzM$CauAS<)w)HlUcz zZe-1k8mGIFTU(w?$;(*5*?(x@Yx7v*%hh~-t+L7MA`k>#M=%?H|1=w4302{{nF^Me zr2FIy)>XcV*c-;uc)3)2Oi)eNdcR7WikDC!Y+ch42 zgNL0qcsuj=i#GTNqafgGv}*q5R$IDkn=Msb>340ZS^0%qMYnr&qHZU_1UxN;JDEBv zb546}KO7Y~3AHRWk8&pYZ~&Dtn(eTBW8sG!ni`R7B#qdCABHD%kf#PyNb-Yuzl|85 z-7R_0cigEP+o;U{WWB*v=TQsBK+?!*q_ezcgGeM-gkH>vv!10!wSV4R7NrI`+vmU! zE`4*}2@;nHDymduq%|7maajk=N(gz!aCYZ?U|~W8hChLG0x`~vGOd#*Fd5(rj-be4 zB54FZ73``YhO_gvd2C?SJS9MIqsroxgaAY$N5*lvDGgbCjPL?!Semr$6Ql}c7k6TS zK#8;PP}H+Y1_~kz1sZN3DNHp+p3!d^(LXHPUKIttjDG#c5I`-2?a^Eg(f% zy)m+O$Nq!6hOfVF%Z+OXK^=b^z_*)>AcUpHMT_yU93`l2UUX=*ZoexyU6I`D+~Lk5 z*had_91b&mebCxID5J!Qh+#3uql~l!O!;=(p^oWUqc-4U{kErI{eh8F18(#fl|@s~ zMgy?p(I{(wR_v1-Pz}b`G!4*Fl+c10osuwik$y=pLAjm6DM_+7vf4*rN+jGcjoqewdW*)GzO0`Ex0qRI#n6~5d*emWhcU2c-9|-mQE6v%LoU+< zJ>rnaGOjG&XyP>E0?uGo=B5IT*^ptp(zab02v|}nX{8=kBznui8?x z@}cdrvOUJFY`kR}zJf*;st&A47#LXE_Tgd{Ykp{7z|vbJcG@;!u%oQ<%aMCRUp?mZ z4D*~SDw(ES6;;RGX^_I>NIrt>Ks+XBtEyLM8`c8ef;F5OoonK1(_>Az9x}HVs^y`~ zc39SiGn;SPc=N_Bn>ODpV~nu~QV_cVy2D+n%qxeu1=k~hel+`|GiJjIy%JhIOrCxl zCkBrKhWia}Agc|e{ikD9hLznIttU2i{Jbd}YhbD{JIi+49>7b%Jo$LECE8Sx2Eon2 zMF3`OM-TT-6lNxxkd&qT@zRW+Tts>(bG(GR1!uT#!FtIcf+7-MW5t5YA51dBSHH=a zMiY2xwy-b+)zzL8rlU?U3-&x}z(`mRCn{rSxJWQwgIg_|PSm*U z=1OoCn%9DGmi_I0l91BTf*Xbh2qF+mmtH>LI7kVEy9px?=?A)V;cx~9{2-eX*gVYO z?Lst=3GV!=~q`@>3PA`<01&p5P)qPU=5 z37!p^Wexw9SAQGKAUbZ*6qHN% zkPN!ZT!coNU1e&h4cxqktK#YzBxs)UTfGBa;;T{)MO!U4B&D~TbI`BAtTt{q8Arr% zpx&IFt5Sm)$8m%9HzvSXAIVy1NdFHQ;8{Ke+gV|3)9{v~ezoRo6uAJI6CJLe6EL5~ z=DeBf=n6@`8Q=x4F(r@V{4vThT>l`#l#&zVU?y?a`gu2%pD9xr7OQX82*&m6x4?o; z9mX8hfvz4i#yX-mWE>rkcQ7vDN(p8S8u6mllZ-%${8U~5Zb34m0rx7P*%p26{aW)F zYMOXJ{J~)5prm6;ao^aE`yg&P&uoDRHsE}dlNP)e+wAA1DCP43iyZL`WVrSyc#HuQt{`o>nRA_H1r)jBR!ndt)$%1x|ytAk^eATb+MF=7w;{?_Q(l>zBjw~H*x<0SZu%9~+ zPKg1bSt>d}@(rM3T?Y7(CiZeIow1jGIWZ}7-< z;hbVMvVy`hoUVIe0B(~hRu*9A4Pz#Z14b5r4Eu=P6N(9#C<#iq9b80g^bzwGMw#$N zn4^}B(gbdX6!tn*1bPQo1Jyag(Hqw|qRNJqe3lx!NO=Kn)J{+SvJ{C17K%=(oY}HD z4SMJ3VJ;AN?mDchg&PPVC1`4iRX1pj;|ZD;4x4aEyr;dZx~e7^G)U|RJp>Ca@PZmC zS1{q+h3aOZ62i5FLx=xlm395im?)$*4+nO13D6O47n8A$!-P1Phg4Ebv4LgAL1w0r zB=I3aMJAFFU3Qd6ytVtX`RGwj*^u2L_FVgJ(qk2I>rHWZC;-HD81BTiisd*H-P_n#?O%gT z6qtR;ztR}CKyAQnrRZ?)TrV7Voom_g(Yc0fu{vVogj$|kujE#utG1=1!vt)D@f-iO)fZcLC^YCL z*8Cdrk=TLc_;M-3m44-!MP_x!#BfS+un-1HZRwBq zm{PMcjK`5s7H1Tap^2THTw)Ky(7SNK?&&ZL?T1L*Z<=kh4e?<{fI{}E{m0k@8pjwJ zjW1?1CqZm#4%&qXW?cFPzk2~P2C6@uwMKxuZBc^h2mVT$_JR>9vmZY}beo56KFA}R z!Gj(VTUU-~bcy>n4mS?qM9U0uF7WzGNxmjg7_f{ObqMQzED5UKG+)SU*`7gWJvrZt zlSi=I%np)0C_=Ei>;PO}XR+Wz@KehB84ODZ!b~z-)~_F^ZrD7SLHwB9;)0vZ&0#CB zTNWUkK%or}&TNo9#TCTy#q4>xJP?QVwlzV|qtvSd~W>vhvq2n0!rMfkFz? z3SRWN0sXVh=GkndGmQKY>C-`MNYfA++@X7*CFDQEZ{S;u^`=FSLOUyz4Z-jblqgcE z8jAbb2rKL=>JUV*=K=wox11@@!?F^HSPTWkLlh~iDWoxObOOqYvb({%#t$GB#9Opn z38JkfOA&Ya4HMqwpP_OZnmDxqyN7f=K-`jBrE3{^h2rh-g|=2KV^nT+O&+0Kq!^b4 z!dhX4J1VClhjcf4W_1%-Yy$gh3Zf2V>5^p9&UvA@bTXfehCw>6h0~wG&cV6cMg8ik z!g^#5aB|BlOx1{Nh-|~+psveO0VhJa4p%~aqmxwEreAZ?QCwfLaAFaLCtm=0smN)A zh-=)#X*>rw+aiM;Mt%%+?CbFN#_I=zLC#4mm2B1$Q0epqEHl{IMUywNK|fX9>v#>m zQM*@1NVwo9i2`EYQF(=?yIn(>BO?*m5Ov6P8T$=KoA`?T=V7-~D|2~iT2Un>rKss) z5jrQxQdA1tgs1?BAu0T2Q)oKCRb5!@A&)8T5wC$x^+Jj)GCha}a0o^ZzVxftKJXJm zjn6b;j^fPYhE!UW#R(xVgdpovbP-x-Zn;E^1o{dhu8!>wOmC$kPR)pQ6?&97Q7mF? zJqQ@EJ;E>wPyoxe8Xb3up2=n;i~j%-8#KvW2Vku|R$3gHDa?)+3z_0@rZ~1%+gux4 z=Fq)sZB)ftf+n0O3B*9iu=O&9d7Q=`Crc#?6LdgTlzeB9?y71^%xjxjj7=?|`XYUn zgf!-XAI&cKSW;HxzXfcD5XxH|SV*|&a?w6qj6G~$u-Fz({XvG*Pm~+*YEqhzc~p(C zOMpVl$O;%iuvt*Y6XmxNGLfkfLCf}q1QLxkkB+TfSZgy)?J^nLj_a>MaxgZ*e~y6m zW)>5h!LK&xg751Q6A8cxgg>{NnZ_)_CZ>5p9abTSzd7p6nP3h512iKJMsw6~*Fo#9 ztOG_;bdcU(CNcPnpu@iIHyCEZ0mF*cf7Q#^3|mbd(BN!ZY|1U{myq zYjmjsV{Eqy;bQv$*vmqfM2a$QX2!VCm@%Gv z7fcr4q8VfEh%KEtW=l66HKk@{(|$2%TwtPHY{X{itVHXDhWjwdf(eeKw?Q_+jRB`8 z@;69)3{%5h=rg-bETye3lMvP-OhpVeN*m0|St=EUz)2k2{>GveA^_X;F$>YvqFyOu zxsJNgsDuN^+T4^YwTOl2H&QdcQ}#PMui6p!iE^DDS$QYaA;S%CbhGPX55_hfP*||sG zcd~(>&Yr{w{SL-&qw-rN8KD=M5qiAbXo|-VHntb|QHow;upDk)!1)uF5Wfe@*u0A_ zj$WW(EOUrbbGI+(*p`SpS*`}4cp}uvkKw}>vW!>Ju7k~1m$9lRmtyI>3msE=D{Py_ zI~)Wqju?H_o}GG3UmWXi){B#(`G_Ldk44u$@i#T~AB`rcHgWx6iV30A;nOvqIrTZH z^k<+*F__O#1JD_ZgoM1GuAMMp+cN36q;tGeDS5^w@CPEABr#}Te+(jRSq2ahgBWqt_HWrVK`Mk6AZMG0ZR@xnuxm{ zke76g9JKfPeJH55w#A z=BBaVEl)rbo}qKh)sd}B^a@Qt@iBP>V&sSak!)br{k(8cE})q)wiP#1g5HNHy#uvn z2H$yL`%Z*sBNoEz4Y65Fkg-)qv9O{4?Lkn7upZ3OQUm3fYeN8quks(|xuY68j3mO1 zNs@#{w;KtS5gJ`65>C4h(DA^Vu@wj8g2!6H|BkjlN`iq!|0zvO8eDc$tM0`4h#k!t z46ZR*Y7i=cI2>s$aCuoslQRt1PimA%=kGkYBfn?#(2fJUNAJjQ+jqyl0|)av5A55M z-*f1WcHH2S-&tNL6}KYVRpXf*D+$l&fE*U8=OS?=Wr0&vJdcQwZ{Jk2#)FZ~H^3>^ z_IR;yVkGJJxiXS>jBL2+=IqTk-`w_=Ucuo|7$NJg3wR$LpxabG=ire+jU|~Bc)OS* zINfNCQD(KD4tBI{3e56BcY8`e)NFRcCWnWC0Oq7?92FyNwY4PdOxKoFjkIQZA&ySrIR zR{FLZf=6QH`f23r-i`TZs&NoG8hnlYG80W59UKX@4i)MUX#0&CYMYD^>6`a^>BI#{ zld{R$XVxAmW6kx+m!ot1ARoy3pqn73B@GkKd;X@I0%v9tl1+!`j#*PfEk@7?Ac67eg zzCb3{G*+6ZcHxOymvLG_6tXskbh8EKBO+7yPsY4FqN-zaYH3|=j_o5{hvwc12aXsN z?)YsegA(CzcJ8Uz*(50+$Q9+GG-P7ZW&6vUj(a zx1GIQ*x5-qGzuz^!v#eK1p&3B${(ykQOYVP%O9+wN-X~ZO9e$y{6dxAiz@NU=k;_? z&+P2p%q%&6GF92xo1O0IexLXHb-#Y^^~!>_A3S{ojqBvRAlFp%w_nWZZ_gc5-yD&{ zgEiN2rkpA97M{1nzwtTgivQwr(#_WUPhe+#8Y!)6IsS&z-lwV^9fS8U4QOS(>x!!` zbE#+2rFGu-dtLsC){7Uuh1K6wkuKl|2k^iq{J(e-X9hObSftJPX>ihY=u#w#=;)vg zH0(^(&omFhE)08Yc#@oZ%KoeoGh8+lDS|>Fl0?0p#uvAX8JN=gua)XpXFQ}>fWkZ>|-NqpzYQJU;E_tPX%qo zd=U$s@SiIk8?hp8U0?gSI%zb=b{(D$|Jgsy3p=kNGtM;DP4bRvhIgk2eTK&d>h!-k zqR%6rcp0Q!6u*?8ugcHg$j{%(&)4PWALQqs_|u^QFr9b>-zg`4#g{djW2u|DHA`#t zjry76noh%-CW@h({Niz07X1A;uJ(MohMAQ%7CM|JydGd|>c>N?<-_a6pH*21T^Vjl zx+z}U#L>vDtk?^2)Q{EeiLsrD#$UIHNEr}pr8$*Hw zaBp26xV;fLNC~&z63HuLy3qp3K857vK9W(D8)Wb~3@%^*T`cbxiv|0=6FZcm0LEHp zB!qUAE~@3++%R%`B!&VBfFxA0400RLi!Je+iD`Wc{NAPTEBZhr!cP}Vf!~ISQTFIi zDjgUGReC}k`+`+yEWKNyCAe-(S6YDk zZUyec>A=;+Qh?h(v7cvTKvmAn62iGs7ScGXzYKssiRpC$0AFeV@HFA3=bbG9doiZz zEdc9Rfc-EXV7gcez&1?qY*SB}fm?9OoDjagU=yQKHvv;`p#xxeStDVcDFqff36bq@s7Qkwxo_~j^jVCGORPr{ z;G0Di%b-1@i@lZ*Ulh}c77(AQARbV~m+Ayhp4B8s7fS*0dnR^y>r_CiR;&pj?NJ3a zl>Xla!ikvPCxGza@<8aX$y?7~$734b0=lylbT_AiP8T!Kl_HiVJvR`~+gR@1eixV< z*i(1{Y*s+6D+sWRUO06o7)+YJS65(60Oq~YR8iC_QrbI$1}f?`CIrf{tYg{s>lo{X znP{uEl(}IT@5yx7Nn6I*3b@C8;F{Pn;+K#g*jIu(h>e^G$_A$FT(CM}-{u6;qH*dQ zX=>MwW_c|_ZIv~>el}gNg<3nWQyqWC?|7mayDs)kzgX;w>q2SJ$$7?{Q4Z{ZU6~03 z&qXA;L!Nh^6iFU6J^xXAJwHeF{6)VDiF&S!rRaHSFTuxPzA}FprmG4v^&Un}$xL=+ z1kTJOyZK{*Py9G8!+Q~bQJc;W!psTZV~;?fO&PHm3o=6*jyd2%uBO-z78WrX4P0C( zRej>ULvJ(mf4M#SpR4Hqvvl;=#Zu7!x;@BIbi-)orUlNUsF+Qftg9t?{MEFiJUqFJ za40}{wK>+^_R0G8DlydhM|;$IpQ6@Z(@{$oOF^wmcfy-U9-U#=aJI%>(w-a`$AXz+ z_1KlFjG;x}cb1;zwa~KXDO#*n#S>1Dbg>k)7#u0u3%S~Sj&nfq&c=ySrILfG6fRw0 zB+fTHQ{qrppG{JfFm%||9v#*zI%Lw(K^HT0FiKmi>m_F!dhj>O(o`T-xY7E&zY)>; zO4<5a|FsycA2!J-%^$vLXt^UDEv5F~pa?na6H;6QdwO_ppqch>*vhzK7^l{8eh2IY zBY`Gw=yTXDwvpkPSA}aB5C3z;Y2wHQnJ#aemY{Zunoi%EuG3oiU!eMZ!1Q}I(C_-y zIBXf4;@l^y)sETQhK6v5oGGLhof~qda!2ji9NFa|wGD$G@Oy8s?o`|5y`Eu5fY7pL z`>vWl>#Gore%RsdJ28aa4zaTvAEWr-X>JLfkzL$a7(ivFn}%N-89p#O*3=m{)QR29 zf^WIBO3Eo-wRDHWxp!2OywXwR->`kelRRn=zPmky->(opY5EXCICHFg3_8(ka}GJt zye9MLX6I{n)_f@AAM`PM=yYMm8h_kRD7zv@;@K!C&_{0C{sm#FsjrL&QqF{g8hdt5URu?nWYfbd}Dt2u4 zwg#WTYP8;sgu%$z>Qc9O3V(~Qs3q!F7Q&4MElp;OHFXQt07hx>c6dZ-s4?1C8o!HC z8gbU(bcB^^BCn|Wl26t4)I?@i5z+o|%7s&dY_MCNnHF)6L3kq5Et2W9eebMyk2}r-s|3Dm|A?izr>pP_Q-O)2axKju~G~ z-Gaw^qaxT>DxxCP`0T5Q-^Zwk@aB?USA@2q44H3BM`o!owkaCl;?p?HTR%7euliC2 zlWCPCn*+7MT()v_hkn3sa}MGa#uyQSF4pzy9K!`6GH5Yw`MY5lC-TVF3 zpnW9lw#7bN+E1&$0Xet9y`aIxtHpNK#=>=qn>9J5jtLFs`WN}2^dd9@yu@IxD>hX1?72F-Gnq`;JQVBliuMUr&JqmXK2VKcwjORaF-I8=*PO_x5_y zhdB2#AK?XQF3!lKQ(!Pqve>WzJG^K6$nAS}ATY_=zJGX}#SrJl%@d_NA>t-vmU#{%k2T1q(p z4xU95o>G&LA@uCypl3=IO*CuQ=M~Q%<{SK5Lwut zk(6(K2KkS?$t8zjsk|;cF_k{)kZ5UVRIgWi7re6Bl%QDwas6k6GO^;iCeSIZBt!QM z-8-LKdWn-jG5#mgz_6qz6Vo0=`*vk>yJ7}SE-9Pi%L1gKo_<+M`O|GRj7zKQy+}EO zypl2~;t@A&?r!OTz!uVr8N!W)9Wl~yIn)l}JXE<Mw@pxl~C=Ses3{h%q&_k3X`mr`g?EP8ZHtbqo+xSXv{Amo;^0y4SoNCz>n-M!u?}WDureReVROQS7i>_SpRt)k__S;Adza#nNyT8^47fKia_V0UMImOZkXMq5cG-3V zt=^KR?|MW{SI9`j@stu#YP9{d2|Po0`+Q|C3mH&MXg!jZ8g|Ql^xa>24T5*>z6vPP*Wo5y7@E!3$x*GiAZ*+Q^&? z0yJ8P0|_HqNRQ8b7~#7du&5pf>pjZUCAE-sFyZox2c#!|MydbcO8 zE^XmSawl!KXvCr&G^*wk{TA)AXtza{MSCpTOE=TLLMM&k|F}i_E&7N>2MTA4OZBY$Tdk!6^6BgZR(Sk*HS@bcB zK5o%Ti#~z2f6}76=^pyjDf%>C_nF;mH`Bcq-ADJ+DO#ilEcz_f>A}J(dT5b8N1vyM zPth0X5poyl(M9?qihOC29;3(U%Zv2HDSC2|p0Y6GZxULpLTsA`%!;SMDdKDRuvHAG cyt8O?V5huKefB#(SrB7rP|=?ZfK~GU10Uq+`Tzg` literal 6625 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 delta 459 zcmaKn!Ab&A7=^iwGo#W*Gg_oFS%hfKtRfIZTD7Pqh_)`q@#Zg>ce?kERuJ_710nYY zZCVE{g77JNgnETuqU)%&s>NCSKj$32BbGmNi97w_c$9d}fDTKM5qK2$xr7X$(ffso zK!bebi#>Fjb=t&dPRP6twkcDdf_On4q>C?9tivkU5W8I{xM9nK;*BhW)s#?D+ECh5 zDmP^a71)A2RH1O7tJoqSakOxFTUG#ux*Pw6qtxYjuf_t;$1+L=6f;Z*IPR>^I?ZV( zXkiQgKty`XExkF-?_-A5m~f?4R-4X<`BcZ>Ln4EbkSY+Us_ghgD`}`ILStQg7;BaV zoCmDtIK$!44z4(mzD;PyY2$$t;DCv&xxbR1n>ZmoW_K|^o0!D4xho!xig+`h1Ws;? e=j46DWnhhKsU4I{x3N#C$GfC2-3e{jvcCa&+?qB3 diff --git a/docs/html/_modules/index.html b/docs/html/_modules/index.html index dc297f7..a16c9d8 100644 --- a/docs/html/_modules/index.html +++ b/docs/html/_modules/index.html @@ -1,235 +1,273 @@ + + + + + + + + Overview: module code - SHaSTA 0.1.0 documentation + + + + + + - - - - + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/html/_modules/shasta/actor.html b/docs/html/_modules/shasta/actor.html new file mode 100644 index 0000000..217fe6c --- /dev/null +++ b/docs/html/_modules/shasta/actor.html @@ -0,0 +1,343 @@ + + + + + + + + shasta.actor - SHaSTA 0.1.0 documentation + + + + + + + + + + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+
+ +
+ +
+
+ +
+
+
+ + + + + Back to top + +
+
+ +
+ +
+
+

Source code for shasta.actor

+from abc import ABCMeta, abstractmethod
+from future.utils import with_metaclass
+
+
+
[docs]class BaseActor(with_metaclass(ABCMeta, object)): + """This the base class for single UGV robot""" + +
[docs] physics_client = None
+
[docs] _loaded = False
+ + def __init__(self): + self.states = {} + self._actor_id = None + self.init_pos = None + self.init_orientation = None + +
[docs] def _load(self): + """Load object into pybullet and return list of loaded body ids.""" + if self._loaded: + raise ValueError("Cannot load an actor multiple times.") + self._loaded = True + actor_ids = self.load_asset() + + if not isinstance(actor_ids, list): + actor_ids = [actor_ids] + + self._actor_id = actor_ids[0] + return actor_ids
+ +
[docs] def get_actor_id(self): + """Get the actor id + + Returns + ------- + int + The actor id in the simulation + """ + return self._actor_id
+ + @abstractmethod +
[docs] def load_asset(self, *args, **kwargs): + """Load the assests of the actor.""" + raise NotImplementedError
+ + @abstractmethod +
[docs] def reset(self, *args, **kwargs): + """Reset the actor + + Raises + ------ + NotImplementedError + """ + raise NotImplementedError
+ + @abstractmethod +
[docs] def get_observation(self, *args, **kwargs): + """Get the observation from the actor. + + Raises + ------ + NotImplementedError + """ + raise NotImplementedError
+ + @abstractmethod +
[docs] def apply_action(self, *args, **kwargs): + """Apply the action to the actor + + Raises + ------ + NotImplementedError + """ + raise NotImplementedError
+ + @abstractmethod +
[docs] def destroy(self, *args, **kwargs): + """Destroy the actor + + Raises + ------ + NotImplementedError + """ + raise NotImplementedError
+
+
+
+
+ + +
+
+ + Made with Sphinx and @pradyunsg's + + Furo + +
+
+ +
+
+ +
+
+ +
+
+ + + + + \ No newline at end of file diff --git a/docs/html/_modules/shasta/base_experiment.html b/docs/html/_modules/shasta/base_experiment.html new file mode 100644 index 0000000..d28a892 --- /dev/null +++ b/docs/html/_modules/shasta/base_experiment.html @@ -0,0 +1,334 @@ + + + + + + + + shasta.base_experiment - SHaSTA 0.1.0 documentation + + + + + + + + + + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+
+ +
+ +
+
+ +
+
+
+ + + + + Back to top + +
+
+ +
+ +
+
+

Source code for shasta.base_experiment

+#!/usr/bin/env python
+
+# This work is licensed under the terms of the MIT license.
+# For a copy, see <https://opensource.org/licenses/MIT>.
+from abc import ABCMeta, abstractmethod
+from future.utils import with_metaclass
+
+
+
[docs]class BaseExperiment(with_metaclass(ABCMeta, object)): + def __init__(self, config, core, experiment_config=None, *args, **kargs): + """The base experiment which other experiments should inherit + + Parameters + ---------- + config : yaml + The experiment configuration file + core : object + The SHASTA core object + + Returns + ------- + None + """ + self.config = config + self.core = core + self.exp_config = experiment_config + + return None + +
[docs] def reset(self): + """Called at the beginning and each time the simulation is reset""" + pass
+ + @abstractmethod +
[docs] def get_action_space(self): + """Returns the action space""" + raise NotImplementedError
+ + @abstractmethod +
[docs] def get_observation_space(self): + """Returns the observation space""" + raise NotImplementedError
+ +
[docs] def get_actions(self): + """Returns the actions""" + raise NotImplementedError
+ + @abstractmethod +
[docs] def apply_actions(self, actions, core): + """Given the action, applies the action to group or individual actor + + :param action: value outputted by the policy + """ + raise NotImplementedError
+ + @abstractmethod +
[docs] def get_observation(self, observation, core): + """Function to do all the post processing of observations (sensor data). + + :param sensor_data: dictionary {sensor_name: sensor_data} + + Should return a tuple or list with two items, the processed observations, + as well as a variable with additional information about such observation. + The information variable can be empty + """ + return NotImplementedError
+ +
[docs] def get_done_status(self, observation, core): + """Returns whether or not the experiment has to end""" + return NotImplementedError
+ +
[docs] def compute_reward(self, observation, core): + """Computes the reward""" + return NotImplementedError
+
+
+
+
+ + +
+
+ + Made with Sphinx and @pradyunsg's + + Furo + +
+
+ +
+
+ +
+
+ +
+
+ + + + + \ No newline at end of file diff --git a/docs/html/_modules/shasta/core.html b/docs/html/_modules/shasta/core.html new file mode 100644 index 0000000..731ba80 --- /dev/null +++ b/docs/html/_modules/shasta/core.html @@ -0,0 +1,478 @@ + + + + + + + + shasta.core - SHaSTA 0.1.0 documentation + + + + + + + + + + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+
+ +
+ +
+
+ +
+
+
+ + + + + Back to top + +
+
+ +
+ +
+
+

Source code for shasta.core

+import os
+import psutil
+import signal
+
+import pybullet as p
+from pybullet_utils import bullet_client as bc
+
+from .world import World
+from .map import Map
+
+from .utils import get_initial_positions
+
+
+
[docs]def kill_all_servers(): + """Kill all PIDs that start with Carla""" + processes = [p for p in psutil.process_iter() if "carla" in p.name().lower()] + for process in processes: + os.kill(process.pid, signal.SIGKILL)
+ + +
[docs]class ShastaCore: + """ + Class responsible of handling all the different CARLA functionalities, + such as server-client connecting, actor spawning, + and getting the sensors data. + """ + + def __init__(self, config, actor_groups: dict = None): + """Initialize the server and client""" + self.config = config + self.actor_groups = actor_groups + + # Verify if the actor groups is a dictionary + if not isinstance(self.actor_groups, dict): + raise TypeError('Actor groups should be of type dict') + + # Setup world and map + self.world = World(config) + self.map = Map() + + self.init_server() + self._setup_physics_client() + +
[docs] def _setup_physics_client(self): + """Setup the physics client + + Returns + ------- + None + """ + # Usage mode + if self.config['headless']: + self.physics_client = bc.BulletClient(connection_mode=p.DIRECT) + else: + options = '--background_color_red=0.85 --background_color_green=0.85 --background_color_blue=0.85' # noqa + self.physics_client = bc.BulletClient( + connection_mode=p.GUI, options=options + ) + + # Set the camera parameters + self.camer_distance = 150.0 + self.camera_yaw = 0.0 + self.camera_pitch = -89.999 + self.camera_target_position = [0, 30, 0] + self.physics_client.resetDebugVisualizerCamera( + cameraDistance=self.camer_distance, + cameraYaw=self.camera_yaw, + cameraPitch=self.camera_pitch, + cameraTargetPosition=self.camera_target_position, + ) + + self.physics_client.configureDebugVisualizer( + self.physics_client.COV_ENABLE_GUI, 0 + ) + + # Set gravity + self.physics_client.setGravity(0, 0, -9.81) + + # Set parameters for simulation + self.physics_client.setPhysicsEngineParameter( + fixedTimeStep=self.config['time_step'] / 10, + numSubSteps=1, + numSolverIterations=5, + ) + + # Inject physics client + if self.world.physics_client is None: + self.world.physics_client = self.physics_client + + return None
+ +
[docs] def get_physics_client(self): + """Ge the physics client + + Returns + ------- + object + The bullet physics client + """ + return self.physics_client
+ +
[docs] def init_server(self): + """Start a server on a random port""" + pass
+ +
[docs] def setup_experiment(self, experiment_config): + """Initialize the hero and sensors""" + + # Load the environment and setup the map + self.map.setup(experiment_config) + read_path = self.map.asset_path + '/environment_collision_free.urdf' + self.world.load_world_model(read_path) + + # Spawn the actors in the physics client + self.spawn_actors()
+ +
[docs] def get_world(self): + """Get the World object from the simulation + + Returns + ------- + object + The world object + """ + return self.world
+ +
[docs] def get_map(self): + """Get the Map object from the simulation + + Returns + ------- + object + The map object + """ + return self.map
+ +
[docs] def reset(self): + """This function resets / spawns the hero vehicle and its sensors""" + + # Reset all the actors + for group_id in self.actor_groups: + # Check if the entry is a list or not + if not isinstance(self.actor_groups[group_id], list): + self.actor_groups[group_id] = [self.actor_groups[group_id]] + + for actor in self.actor_groups[group_id]: + # Reset the actor and collect the observation + print(actor.init_pos) + actor.reset() + + return None
+ +
[docs] def spawn_actors(self): + """Spawns vehicles and walkers, also setting up the Traffic Manager and its parameters""" + for group_id in self.actor_groups: + # Check if the entry is a list or not + if not isinstance(self.actor_groups[group_id], list): + self.actor_groups[group_id] = [self.actor_groups[group_id]] + + # Spawn the actors + spawn_point = self.map.get_cartesian_spawn_points() + positions = get_initial_positions( + spawn_point, 10, len(self.actor_groups[group_id]) + ) + for actor, position in zip(self.actor_groups[group_id], positions): + if actor.init_pos is None: + actor.init_pos = position + else: + actor.init_pos = self.map.convert_to_cartesian(actor.init_pos) + + self.world.spawn_actor(actor, position)
+ +
[docs] def get_actor_groups(self): + """Get the actor groups + + Returns + ------- + dict + The actor groups as a dict with group id as the key + list of actors as the value + """ + return self.actor_groups
+ +
[docs] def get_actors_by_group_id(self, group_id): + """Get a list of actor given by group id + + Parameters + ---------- + group_id : int + Group id to be returned + + Returns + ------- + list + A list of actor given the group id + """ + return self.actor_groups[group_id]
+ +
[docs] def tick(self): + """Performs one tick of the simulation, moving all actors, and getting the sensor data""" + observations = {} + + # Tick once the simulation + self.physics_client.stepSimulation() + + # Collect the raw observation from all the actors in each actor group + for group in self.actor_groups: + obs_from_each_actor = [ + actor.get_observation() for actor in self.actor_groups[group] + ] + + observations[group] = obs_from_each_actor + + return observations
+ +
[docs] def close_simulation(self): + """Close the simulation""" + p.disconnect(self.physics_client._client)
+
+
+
+
+ + +
+
+ + Made with Sphinx and @pradyunsg's + + Furo + +
+
+ +
+
+ +
+
+ +
+
+ + + + + \ No newline at end of file diff --git a/docs/html/_modules/shasta/env.html b/docs/html/_modules/shasta/env.html new file mode 100644 index 0000000..ce27bdf --- /dev/null +++ b/docs/html/_modules/shasta/env.html @@ -0,0 +1,341 @@ + + + + + + + + shasta.env - SHaSTA 0.1.0 documentation + + + + + + + + + + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+
+ +
+ +
+
+ +
+
+
+ + + + + Back to top + +
+
+ +
+ +
+
+

Source code for shasta.env

+#!/usr/bin/env python
+
+# This work is licensed under the terms of the MIT license.
+# For a copy, see <https://opensource.org/licenses/MIT>.
+
+from __future__ import print_function
+
+import gym
+
+from .core import ShastaCore
+
+
+
[docs]class ShastaEnv(gym.Env): + """ + This is a shasta environment, responsible of handling all the SHASTA related steps of the training. + """ + + def __init__(self, config, actor_groups: dict = None): + """Initializes the environment""" + self.config = config + + # Check if experiment config is present + if not self.config["experiment"]: + raise Exception("The config should have experiment configuration") + + # Setup the core + self.core = ShastaCore(self.config, actor_groups=actor_groups) + self.core.setup_experiment(self.config["experiment"]) + + # Setup the experiment + try: + experiment_config = self.config["experiment"]["config"] + except KeyError: + experiment_config = None + self.experiment = self.config["experiment"]["type"]( + self.config["experiment"], self.core, experiment_config + ) + + if not self.experiment: + raise Exception( + "The experiment type cannot be empty. Please provide an experiment class" + ) + + self.action_space = self.experiment.get_action_space() + self.observation_space = self.experiment.get_observation_space() + + self.reset() + +
[docs] def reset(self): + """Reset the simulation + + Returns + ------- + [type] + [description] + """ + self.experiment.reset() + self.core.reset() + + # Tick once and get the observations + raw_data = self.core.tick() + observation, _ = self.experiment.get_observation(raw_data, self.core) + print('-' * 32) + + return observation
+ +
[docs] def step(self, action): + """Computes one tick of the environment in order to return the new observation, + as well as the rewards""" + + self.experiment.apply_actions(action, self.core) + raw_data = self.core.tick() + + observation, info = self.experiment.get_observation(raw_data, self.core) + done = self.experiment.get_done_status(observation, self.core) + reward = self.experiment.compute_reward(observation, self.core) + + return observation, reward, done, info
+ +
[docs] def close(self): + self.core.close_simulation()
+
+
+
+
+ + +
+
+ + Made with Sphinx and @pradyunsg's + + Furo + +
+
+ +
+
+ +
+
+ +
+
+ + + + + \ No newline at end of file diff --git a/docs/html/_modules/shasta/map.html b/docs/html/_modules/shasta/map.html new file mode 100644 index 0000000..364923b --- /dev/null +++ b/docs/html/_modules/shasta/map.html @@ -0,0 +1,529 @@ + + + + + + + + shasta.map - SHaSTA 0.1.0 documentation + + + + + + + + + + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+
+ +
+ +
+
+ +
+
+
+ + + + + Back to top + +
+
+ +
+ +
+
+

Source code for shasta.map

+import warnings
+
+from pathlib import Path
+
+import numpy as np
+import osmnx as ox
+import pandas as pd
+import networkx as nx
+
+import os
+
+from shasta.preprocessing.utils import extract_building_info
+
+# Import assests
+
[docs]directories = list(filter(os.path.isdir, os.listdir(os.getcwd())))
+if 'assets' in directories: +
[docs] assets_root = os.path.join('.', 'assets')
+else: + raise FileNotFoundError("Assests folder is not found under root directory") + + +
[docs]class Map: + def __init__(self) -> None: + return None + +
[docs] def _affine_transformation_and_graph(self): + """Performs initial conversion of the lat lon to cartesian""" + # Graph + read_path = self.asset_path + '/map.osm' + G = ox.graph_from_xml(read_path, simplify=True, bidirectional='walk') + self.node_graph = nx.convert_node_labels_to_integers(G) + + # Transformation matrix + read_path = self.asset_path + '/coordinates.csv' + points = pd.read_csv(read_path) + target = points[['x', 'z']].values + source = points[['lat', 'lon']].values + + # Pad the points with ones + X = np.hstack((source, np.ones((source.shape[0], 1)))) + Y = np.hstack((target, np.ones((target.shape[0], 1)))) + self.A, res, rank, s = np.linalg.lstsq(X, Y, rcond=None) + + return None
+ +
[docs] def _setup_building_info(self): + read_path = self.asset_path + '/map.osm' + self.buildings = extract_building_info(read_path, save_fig=False)
+ +
[docs] def setup(self, experiment_config): + """Perform the initial experiment setup e.g., loading the map + + Parameters + ---------- + experiment_config : yaml + A yaml file providing the map configuration + + Returns + ------- + None + + Raises + ------ + FileNotFoundError + If the experiment config is none, raises a file not found error + """ + self.experiment_config = experiment_config + + # Read path for ths assets + try: + self.asset_path = '/'.join( + [assets_root, self.experiment_config['map_to_use']] + ) + except FileNotFoundError: + try: + self.asset_path = '/'.join( + [assets_root, self.experiment_config['map_to_use']] + ) + except FileNotFoundError: + raise FileNotFoundError( + f"Please verify the {self.experiment_config['map_to_use']} is available in asset folder" + ) + + # Initialize the assests + self._affine_transformation_and_graph() + self._setup_building_info() + return None
+ +
[docs] def get_affine_transformation_and_graph(self): + """Get the transformation matrix and the node graph of the map + + Returns + ------- + array, node graph + The transformation matrix and the node graph + """ + return self.A, self.node_graph
+ +
[docs] def get_node_graph(self): + """Get the node graph of the world + + Returns + ------- + networkx graph + A node graph of the world map + """ + return self.node_graph
+ +
[docs] def get_node_info(self, node_index): + """Get the information about a node. + + Parameters + ---------- + id : int + Node ID + + Returns + ------- + dict + A dictionary containing all the information about the node. + """ + + return self.node_graph.nodes[node_index]
+ +
[docs] def convert_to_lat_lon(self, point): + """Convert a given point to lat lon co-ordinates + + Parameters + ---------- + point : array + A numpy array in pybullet cartesian co-ordinates + + Returns + ------- + lat_lon : array + The lat lon co-ordinates + """ + point[2] = 1 + lat_lon = np.dot(point, np.linalg.inv(self.A)) + return lat_lon
+ +
[docs] def convert_to_cartesian(self, point): + """Convert a lat lon co-ordinates to cartesian coordinates + + Parameters + ---------- + point : array + A numpy array in lat lon co-ordinates co-ordinates + + Returns + ------- + lat_lon : array + The cartesian coordinates + """ + return np.dot([point[0], point[1], 1], self.A)
+ +
[docs] def get_building_info(self, building_index): + """Get the information about a building such as perimeter, + position, number of floors. + + Parameters + ---------- + id : int + Building ID + + Returns + ------- + dict + A dictionary containing all the information about the building. + """ + return self.buildings.loc[self.buildings['id'] == building_index]
+ +
[docs] def get_lat_lon_spawn_points(self, n_points=5): + """Get the latitude and longitude spawn points + + Parameters + ---------- + n_points : int, optional + Number of points to random latitude and longitude points, by default 5 + + Returns + ------- + array + An array of cartesian spawn points + """ + # TODO: Verify if the projection is correct and the warning is not + # affecting the values + with warnings.catch_warnings(): + warnings.simplefilter("ignore") + gdf = ox.utils_geo.sample_points(self.node_graph, n_points) + points = np.vstack([gdf.centroid.y, gdf.centroid.x]).T + return points
+ +
[docs] def get_cartesian_node_position(self, node_index): + """Get the cartesian co-ordinates given the node index + + Parameters + ---------- + node_index : int + The node index in the map + + Returns + ------- + array + The cartesian co-ordinates + """ + node_info = self.get_node_info(node_index=node_index) + lat = node_info['y'] + lon = node_info['x'] + cartesian_pos = np.dot([lat, lon, 1], self.A) + return cartesian_pos
+ +
[docs] def get_lat_lon_node_position(self, node_index): + """Get the lat and lon given the node index + + Parameters + ---------- + node_index : int + The node index in the map + + Returns + ------- + array + The cartesian co-ordinates + """ + node_info = self.get_node_info(node_index=node_index) + lat = node_info['y'] + lon = node_info['x'] + return [lat, lon]
+ +
[docs] def get_cartesian_spawn_points(self, n_points=5): + """Get the cartesian spawn points + + Parameters + ---------- + n_points : int, optional + Number of points to random cartesian co-ordinates, by default 5 + + Returns + ------- + array + An array of cartesian spawn points + """ + lat_lon_points = self.get_lat_lon_spawn_points(n_points) + + cartesian_spawn_points = [] + for point in lat_lon_points: + cartesian_spawn_points.append(np.dot([point[0], point[1], 1], self.A)) + return cartesian_spawn_points[0]
+ +
[docs] def get_all_buildings(self): + """Get all the buildings + + Returns + ------- + dataframe + A dataframe with all the building information + """ + return self.buildings
+ +
[docs] def get_transformation_matrix(self): + """Get the transformation matrix to convert lat lon to cartesian + + Returns + ------- + array + The transformation matrix + """ + return self.A
+
+
+
+
+ + +
+
+ + Made with Sphinx and @pradyunsg's + + Furo + +
+
+ +
+
+ +
+
+ +
+
+ + + + + \ No newline at end of file diff --git a/docs/html/_modules/shasta/preprocessing/bake_texture.html b/docs/html/_modules/shasta/preprocessing/bake_texture.html new file mode 100644 index 0000000..6911675 --- /dev/null +++ b/docs/html/_modules/shasta/preprocessing/bake_texture.html @@ -0,0 +1,344 @@ + + + + + + + + shasta.preprocessing.bake_texture - SHaSTA 0.1.0 documentation + + + + + + + + + + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+
+ +
+ +
+
+ +
+
+
+ + + + + Back to top + +
+
+ +
+ +
+
+

Source code for shasta.preprocessing.bake_texture

+import bpy
+
+
[docs]ops = bpy.ops
+scene = bpy.context.scene +
[docs]mesh = bpy.ops.mesh
+ +# Delete default scene objects +ops.object.select_all() +ops.object.select_all() +ops.object.delete() + +bpy.context.scene.render.engine = 'BLENDER_RENDER' + +# Import the model from our Three scene +ops.import_scene.obj(filepath="map.obj") + +# Join the obj file +
[docs]scene = bpy.context.scene
+
[docs]obs = []
+for ob in scene.objects: + # whatever objects you want to join... + if ob.type == 'MESH': + obs.append(ob) +
[docs]ctx = bpy.context.copy()
+# one of the objects to join +ctx['active_object'] = obs[0] +ctx['selected_objects'] = obs +bpy.ops.object.join(ctx) + +# Smake UV project +for obj in bpy.context.selected_objects: + if obj.type == 'MESH': + bpy.context.scene.objects.active = obj + bpy.ops.object.editmode_toggle() + bpy.ops.mesh.select_all(action='SELECT') + bpy.ops.uv.smart_project(stretch_to_bounds=0) + bpy.ops.object.editmode_toggle() + +# Set it to active and go into edit mode +ops.object.mode_set(mode='EDIT') + +# Mesh cleanup step, since what's coming out of Three is mostly cubes laying side by side. +# Unwrap the mesh +bpy.ops.mesh.uv_texture_add() +mesh.select_all() +ops.uv.lightmap_pack(PREF_IMG_PX_SIZE=4096) + +# Create a new image to bake the lighting in to +bpy.ops.image.new(name="AO Map", width=4096, height=4096, alpha=0) +
[docs]image = bpy.data.images['AO Map']
+ +# Bake the lightmap +bpy.ops.mesh.select_all(action='SELECT') +for area in bpy.data.screens['UV Editing'].areas: + if area.type == 'IMAGE_EDITOR': + area.spaces.active.image = image +bpy.context.scene.render.bake_type = 'TEXTURE' +bpy.ops.object.bake_image() + +# Save the baked image +image.filepath_raw = "map.png" +image.file_format = "PNG" +image.save() + +ops.object.mode_set(mode='OBJECT') +# Delete all the texture and apply from image +for ob in bpy.data.objects: + if ob.type != 'MESH' or len(ob.material_slots) == 0: + continue + ob.select = True + bpy.context.scene.objects.active = ob +
[docs] matslots = len(ob.material_slots)
+ for i in range(0, matslots): + bpy.context.object.active_material_index = i + bpy.ops.object.material_slot_remove() + +# Add new material +
[docs]mat = bpy.data.materials['Material']
+
[docs]tex = bpy.data.textures.new("SomeName", 'IMAGE')
+
[docs]slot = mat.texture_slots.add()
+slot.texture = tex + +# Save the obj file +bpy.ops.export_scene.obj(filepath='map.obj') +
+
+
+
+ + +
+
+ + Made with Sphinx and @pradyunsg's + + Furo + +
+
+ +
+
+ +
+
+ +
+
+ + + + + \ No newline at end of file diff --git a/docs/html/_modules/shasta/preprocessing/preprocess.html b/docs/html/_modules/shasta/preprocessing/preprocess.html new file mode 100644 index 0000000..8263e4a --- /dev/null +++ b/docs/html/_modules/shasta/preprocessing/preprocess.html @@ -0,0 +1,335 @@ + + + + + + + + shasta.preprocessing.preprocess - SHaSTA 0.1.0 documentation + + + + + + + + + + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+
+ +
+ +
+
+ +
+
+
+ + + + + Back to top + +
+
+ +
+ +
+
+

Source code for shasta.preprocessing.preprocess

+import os
+from pathlib import Path
+import shutil
+
+
+import networkx as nx
+import osmnx as ox
+
+
+
[docs]class PreProcess: + def __init__(self, osm_map_path=None, blender_path=None) -> None: + self.osm_map_path = osm_map_path + self.blender_path = blender_path + +
[docs] def _save_building_info(self): + raise NotImplementedError
+ +
[docs] def _save_graph_info(self): + raise NotImplementedError
+ +
[docs] def run_processing(): + + # Create the 3D world from the map.osm file + os.system( + "java -jar OSM2World.jar --config texture_config.properties -i map.osm -o map.obj" # noqa + ) + + # Save OSMNX graph + G = ox.graph_from_xml('map.osm', simplify=True, bidirectional='walk') + G = nx.convert_node_labels_to_integers(G) + + # Use the blender to bake the texture + blender_path = "/Applications/blender.app/Contents/MacOS/blender" + os.system(blender_path + " --background --python bake_texture.py") + + # Tidy up things and move the files to respective folders + print('-' * 32) + print('Preprocessing completed successfully') + print('-' * 32) + + name = input("Please provide a name for the new asset: ") + + # Create a directory + parent_folder = name + meshes_folder = name + '/meshes' + Path(parent_folder).mkdir(parents=True, exist_ok=True) + Path(meshes_folder).mkdir(parents=True, exist_ok=True) + + # Move map.osm and coordinates inside the parent folder + def move_files(file_name, directory): + try: + shutil.copy(file_name, directory + '/' + file_name) + except FileNotFoundError: + pass + + files = [ + 'map.osm', + 'coordinates.csv', + 'environment.urdf', + 'environment_collision_free.urdf', + ] + for file in files: + move_files(file, parent_folder) + + files = ['map.obj', 'map.png', 'map.mtl'] + for file in files: + move_files(file, meshes_folder) + + # Finaly move the whole folder to data folder + shutil.move(name, '../data/assets/')
+ + +if __name__ == "__main__": +
[docs] preprocess = PreProcess()
+ preprocess.run_processing() +
+
+
+
+ + +
+
+ + Made with Sphinx and @pradyunsg's + + Furo + +
+
+ +
+
+ +
+
+ +
+
+ + + + + \ No newline at end of file diff --git a/docs/html/_modules/shasta/preprocessing/utils.html b/docs/html/_modules/shasta/preprocessing/utils.html new file mode 100644 index 0000000..80306e9 --- /dev/null +++ b/docs/html/_modules/shasta/preprocessing/utils.html @@ -0,0 +1,314 @@ + + + + + + + + shasta.preprocessing.utils - SHaSTA 0.1.0 documentation + + + + + + + + + + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+
+ +
+ +
+
+ +
+
+
+ + + + + Back to top + +
+
+ +
+ +
+
+

Source code for shasta.preprocessing.utils

+from pathlib import Path
+
+import numpy as np
+import pandas as pd
+
+
+import networkx as nx
+import osmnx as ox
+
+
+
[docs]def extract_building_info(osm_path, save_fig=False): + """Perfrom initial building setup.""" + read_path = osm_path + G = ox.graph_from_xml(read_path, retain_all=True) + + # TODO: This method doesn't work if the building info is not there in OSM + nodes, streets = ox.graph_to_gdfs(G) + + west, north, east, south = nodes.geometry.total_bounds + polygon = ox.utils_geo.bbox_to_poly(north, south, east, west) + gdf = ox.geometries.geometries_from_polygon(polygon, tags={'building': True}) + buildings_proj = ox.project_gdf(gdf, to_crs="EPSG:4326").to_crs(4328) + + # Building Info + building_info = buildings_proj.copy() + + # Add more information + # Save the dataframe representing buildings + building_info['lon'] = buildings_proj['geometry'].centroid.x + building_info['lat'] = buildings_proj['geometry'].centroid.y + building_info['area'] = buildings_proj.area + building_info['perimeter'] = buildings_proj.length + try: + building_info.loc[:, 'height'] = buildings_proj['height'] + except KeyError: + building_info.loc[:, 'height'] = 10 # assumption + building_info['id'] = np.arange(len(buildings_proj)) + + if save_fig: + save_path = Path(osm_path) + ox.plot_graph(G) + ox.plot.plot_footprints( + buildings_proj, save=True, filepath=save_path.with_suffix('.jpg') + ) + + return building_info
+ + +
[docs]def save_buildings_map(osm_path): + raise NotImplementedError
+ + +
[docs]def extract_path_info(osm_path): + raise NotImplementedError
+
+
+
+
+ + +
+
+ + Made with Sphinx and @pradyunsg's + + Furo + +
+
+ +
+
+ +
+
+ +
+
+ + + + + \ No newline at end of file diff --git a/docs/html/_modules/shasta/primitives/formation.html b/docs/html/_modules/shasta/primitives/formation.html new file mode 100644 index 0000000..65d21ec --- /dev/null +++ b/docs/html/_modules/shasta/primitives/formation.html @@ -0,0 +1,396 @@ + + + + + + + + shasta.primitives.formation - SHaSTA 0.1.0 documentation + + + + + + + + + + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+
+ +
+ +
+
+ +
+
+
+ + + + + Back to top + +
+
+ +
+ +
+
+

Source code for shasta.primitives.formation

+import numpy as np
+import networkx as nx
+import osmnx as ox
+
+
+
[docs]class Formation(object): + """Formation control primitive using region based shape control. + Coded by: Apurvakumar Jani, Date: 18/9/2019 + """ + + def __init__(self, config=None): + # Initialise the parameters + self.a = 5 + self.b = 5 + self.knn = 6 + self.alpha = 0.5 + self.gamma = 0.5 + self.min_dis = 2 + self.dt = 1.0 + return None + +
[docs] def calculate_vel( + self, vehicle, dt, all_drones_pos, centroid_pos, path_vel, vmax, formation_type + ): + """Calculate the vehicle velocity depending on the position of the peer vehicles + + Parameters + ---------- + vehicle : class instance + A class instance of UxV agent + dt : float + Time step duration (in seconds) to use in next position calculation + all_drones_pos : aarray + An array with position of all the vehicles in the group/platoon + centroid_pos : array + An array specifying the centroid of the platoon + path_vel : float + Path velocity calculated from next position and current position + vmax : float + Maximum velocity of the vehicle + formation_type : str + Whether the formation is solid or ring + + Returns + ------- + vehicle : class instance + A vehicle class instance with updated position + """ + + # Get the neighboor position + curr_pos = np.asarray(vehicle.current_pos[0:2]) + peers_pos = all_drones_pos + + # Calculate the velocity of each neighboor particle + k = 1 / self.knn # constant + g_lij = (self.min_dis**2) - np.linalg.norm( + curr_pos - peers_pos, axis=1, ord=2 + ) + del_g_ij = 2 * (peers_pos - curr_pos) + P_ij = k * np.dot(np.maximum(0, g_lij / (self.min_dis**2)) ** 2, del_g_ij) + f_g_ij = ( + np.linalg.norm( + (curr_pos - centroid_pos[0:2]) / np.array([self.a, self.b]), ord=2 + ) + - 1 + ) + + # Calculate path velocity + kl = 1 # constant + del_f_g_ij = 1 * (curr_pos - centroid_pos[0:2]) + del_zeta_ij = (kl * max(0, f_g_ij)) * del_f_g_ij + vel = path_vel - (self.alpha * del_zeta_ij) - (self.gamma * P_ij) + + # Calculate the speed + speed = np.linalg.norm(vel) + + # Normalize the velocity with respect to speed + if speed > vmax: + vel = (vel / speed) * vmax + + # New position + vehicle.desired_pos[0:2] = vehicle.current_pos[0:2] + (vel) * dt + + return vehicle, speed
+ +
[docs] def execute(self, vehicles, next_pos, centroid_pos, formation_type): + """Get the position of the formation control + + Parameters + ---------- + vehicles : list + A list containing UAV or UGV class + centroid_pos : array + An array containing the x, y, and z position + dt : float + Time step to be used for distance calculation + """ + vmax = vehicles[0].speed + all_drones_pos = np.asarray([vehicle.current_pos[0:2] for vehicle in vehicles]) + + # Path velocity + path = np.array([next_pos[0], next_pos[1]]) - centroid_pos[0:2] + path_vel = (1 / self.dt) * path + if np.linalg.norm(path_vel) > vmax: + path_vel = (path_vel / np.linalg.norm(path_vel)) * vmax + + # Loop over each drone to calculate the velocity + # NOTE: Very complicated way to implementing list comprehension + # TODO: Need to find an efficient way to implement formation control + vehicles, speed = map( + list, + zip( + *[ + self.calculate_vel( + vehicle, + self.dt, + all_drones_pos, + centroid_pos, + path_vel, + vmax, + formation_type, + ) + for vehicle in vehicles + ] + ), + ) + if np.max(speed) < 0.015 * len(all_drones_pos): + formation_done = True + else: + formation_done = False + + # Apply the control + for vehicle in vehicles: + vehicle.apply_action(vehicle.desired_pos) + + return vehicles, formation_done
+
+
+
+
+ + +
+
+ + Made with Sphinx and @pradyunsg's + + Furo + +
+
+ +
+
+ +
+
+ +
+
+ + + + + \ No newline at end of file diff --git a/docs/html/_modules/shasta/primitives/path_planning.html b/docs/html/_modules/shasta/primitives/path_planning.html new file mode 100644 index 0000000..3ea22f5 --- /dev/null +++ b/docs/html/_modules/shasta/primitives/path_planning.html @@ -0,0 +1,378 @@ + + + + + + + + shasta.primitives.path_planning - SHaSTA 0.1.0 documentation + + + + + + + + + + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+
+ +
+ +
+
+ +
+
+
+ + + + + Back to top + +
+
+ +
+ +
+
+

Source code for shasta.primitives.path_planning

+import numpy as np
+import networkx as nx
+import osmnx as ox
+
+
+
[docs]class PathPlanning(object): + """Path planner based on the skeleton of the image. + Generates a spline path + """ + + def __init__(self, env_map): + self.map = env_map + self.A, self.G = self.map.get_affine_transformation_and_graph() + return None + +
[docs] def linear_refine_implicit(self, x, n): + """Given a 2D ndarray (npt, m) of npt coordinates in m dimension, + insert 2**(n-1) additional points on each trajectory segment + Returns an (npt*2**(n-1), m) ndarray + + Parameters + ---------- + x : array + A 2D input array + n : int + Number of intermediate points to insert between two consecutive points in x + + Returns + ------- + array + An array with interploated points + + Raises + ------ + NotImplementedError + The functions is not implemented for 3D or higher dimensions + ValueError + Number of intermediate points should be greated than zero + """ + if n > 1: + m = 0.5 * (x[:-1] + x[1:]) + if x.ndim == 2: + msize = (x.shape[0] + m.shape[0], x.shape[1]) + else: + raise NotImplementedError + + x_new = np.empty(msize, dtype=x.dtype) + x_new[0::2] = x + x_new[1::2] = m + return self.linear_refine_implicit(x_new, n - 1) + elif n == 1: + return x + else: + raise ValueError
+ +
[docs] def find_path(self, start, end, n_splits=1): + """Finds a path between start and end using path graph + + Parameters + ---------- + start : array + A cartesian co-ordinate specifying the start position + end : array + A node ID specifying the end position + n_splits : int, optional + Number of splits in refining the path points, by default 1 + + Returns + ------- + path_points : array + A refined path points in pybullet cartesian co-ordinate system + """ + x = [] + y = [] + + # Convert the node index to node ID + # TODO: Very dirty way to implement + # TODO: Verify the implementation of nearest nodes + if not isinstance(start, (int, np.int64)): + start_lat_lon = self.map.convert_to_lat_lon(start) + start = ox.distance.nearest_nodes( + self.G, X=start_lat_lon[1], Y=start_lat_lon[0] + ) + if not isinstance(end, (int, np.int64)): + end_lat_lon = self.map.convert_to_lat_lon(end) + end = ox.distance.nearest_nodes(self.G, X=end_lat_lon[1], Y=end_lat_lon[0]) + + route = nx.shortest_path(self.G, start, end, weight='length') + for u, v in zip(route[:-1], route[1:]): + # if there are parallel edges, select the shortest in length + data = min(self.G.get_edge_data(u, v).values(), key=lambda d: d["length"]) + if "geometry" in data: + # if geometry attribute exists, add all its coords to list + xs, ys = data["geometry"].xy + x.extend(xs) + y.extend(ys) + else: + # otherwise, the edge is a straight line from node to node + x.extend((self.G.nodes[u]["x"], self.G.nodes[v]["x"])) + y.extend((self.G.nodes[u]["y"], self.G.nodes[v]["y"])) + + # Add more path points for smooth travel + lat_lon = np.array((x, y)).T + refined_points = self.linear_refine_implicit(lat_lon, n=n_splits) + refined_points = np.hstack( + (refined_points, np.ones((refined_points.shape[0], 1))) + ) + + # Exchange x and y as they are reversed in pybullet + refined_points[:, [1, 0]] = refined_points[:, [0, 1]] + + # Convert the lat lon to pybullet co-ordinates + path_points = np.dot(refined_points, self.A) + + return path_points
+ +
[docs] def execute(self): + raise NotImplementedError
+
+
+
+
+ + +
+
+ + Made with Sphinx and @pradyunsg's + + Furo + +
+
+ +
+
+ +
+
+ +
+
+ + + + + \ No newline at end of file diff --git a/docs/html/_modules/shasta/utils.html b/docs/html/_modules/shasta/utils.html new file mode 100644 index 0000000..a80365c --- /dev/null +++ b/docs/html/_modules/shasta/utils.html @@ -0,0 +1,286 @@ + + + + + + + + shasta.utils - SHaSTA 0.1.0 documentation + + + + + + + + + + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+
+ +
+ +
+
+ +
+
+
+ + + + + Back to top + +
+
+ +
+ +
+
+

Source code for shasta.utils

+import numpy as np
+
+
+
[docs]def get_initial_positions(cartesian_pos, r, n): + """Initial position for actor in the form of a ring + + Parameters + ---------- + cartesian_pos : array + Initial cartesian pos + r : float + Radius of formation + n : int + Number of points in the circle + + Returns + ------- + array + An array of points in the form of a ring + """ + positions = [] + t = np.linspace(0, 2 * np.pi, n) + x = cartesian_pos[0] + r * np.cos(t) + y = cartesian_pos[1] + r * np.sin(t) + positions = np.asarray([x, y, x * 0 + 1]).T.tolist() + return positions
+
+
+
+
+ + +
+
+ + Made with Sphinx and @pradyunsg's + + Furo + +
+
+ +
+
+ +
+
+ +
+
+ + + + + \ No newline at end of file diff --git a/docs/html/_modules/shasta/visualize.html b/docs/html/_modules/shasta/visualize.html new file mode 100644 index 0000000..102a3d8 --- /dev/null +++ b/docs/html/_modules/shasta/visualize.html @@ -0,0 +1,283 @@ + + + + + + + + shasta.visualize - SHaSTA 0.1.0 documentation + + + + + + + + + + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+
+ +
+ +
+
+ +
+
+
+ + + + + Back to top + +
+
+ +
+ +
+
+

Source code for shasta.visualize

+import matplotlib.pyplot as plt
+import networkx as nx
+import osmnx as ox
+
+
+
[docs]def plot_nodes(config): + """Visualize the node graph + + Parameters + ---------- + config : yaml + a yaml file providing the configuration + """ + read_path = '/'.join( + [config['urdf_data_path'], config['simulation']['map_to_use'], 'map.osm'] + ) + G = ox.graph_from_xml(read_path, simplify=True, bidirectional='walk') + G = nx.convert_node_labels_to_integers(G) + fig, ax = ox.plot_graph(G, show=False) + for i, node in enumerate(G.nodes): + ax.annotate(str(i), (G.nodes[i]['x'], G.nodes[i]['y']), c='w') + plt.tight_layout() + plt.show()
+
+
+
+
+ + +
+
+ + Made with Sphinx and @pradyunsg's + + Furo + +
+
+ +
+
+ +
+
+ +
+
+ + + + + \ No newline at end of file diff --git a/docs/html/_modules/shasta/world.html b/docs/html/_modules/shasta/world.html new file mode 100644 index 0000000..926c855 --- /dev/null +++ b/docs/html/_modules/shasta/world.html @@ -0,0 +1,352 @@ + + + + + + + + shasta.world - SHaSTA 0.1.0 documentation + + + + + + + + + + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+
+ +
+ +
+
+ +
+
+
+ + + + + Back to top + +
+
+ +
+ +
+
+

Source code for shasta.world

+import numpy as np
+
+
+
[docs]class World: + def __init__(self, config): + super(World, self).__init__() + # Need to specify some parameters + self.config = config + self.actor_ids = [] + + # Setup the phsysics client + self.physics_client = None + + return None + +
[docs] def load_world_model(self, read_path): + """Load the URDF model + + Parameters + ---------- + read_path : str + The path to the URDF model + """ + + if self.physics_client is not None: + self.physics_client.loadURDF( + read_path, + [0, 0, 0], + self.physics_client.getQuaternionFromEuler([np.pi / 2, 0, 0]), + flags=self.physics_client.URDF_USE_MATERIAL_COLORS_FROM_MTL, + useFixedBase=True, + )
+ +
[docs] def change_camera_position( + self, + camera_distance=150.0, + camera_yaw=0.0, + camera_pitch=-89.999, + camera_target_position=[0, 30, 0], + ): + """Change the world camera position + + Parameters + ---------- + camera_distance : float, optional + Camera distance from target, by default 150 + camera_yaw : float, optional + Camera yaw, by default 0 + camera_pitch : float, optional + Camera pitch, by default -89.999 + camera_target_position : list, optional + Camera target position, by default [0, 30, 0] + + Returns + ------- + None + """ + self.camer_distance = camera_distance + self.camera_yaw = camera_yaw + self.camera_pitch = camera_pitch + self.camera_target_position = camera_target_position + + self.physics_client.resetDebugVisualizerCamera( + cameraDistance=camera_distance, + cameraYaw=camera_yaw, + cameraPitch=camera_pitch, + cameraTargetPosition=camera_target_position, + ) + return None
+ +
[docs] def spawn_actor(self, actor, spawn_point): + """Spawn the actor at a given point + + Parameters + ---------- + actor : object + An actor to spawm + spawn_point : array + Spawn point + + Returns + ------- + None + """ + # Check if the physic client is added to the actor + if actor.physics_client is None: + actor.physics_client = self.physics_client + + # Load the actor + actor._load() + self.actor_ids.append(actor.get_actor_id()) + return None
+
+
+
+
+ + +
+
+ + Made with Sphinx and @pradyunsg's + + Furo + +
+
+ +
+
+ +
+
+ +
+
+ + + + + \ No newline at end of file diff --git a/docs/html/_sources/autoapi/index.rst.txt b/docs/html/_sources/autoapi/index.rst.txt index 3d8f43f..9e28b8c 100644 --- a/docs/html/_sources/autoapi/index.rst.txt +++ b/docs/html/_sources/autoapi/index.rst.txt @@ -6,11 +6,6 @@ This page contains auto-generated API reference documentation [#f1]_. .. toctree:: :titlesonly: - /autoapi/utils/index - /autoapi/main/index - /autoapi/__initi__/index - /autoapi/default_actions/index - /autoapi/gui/index - /autoapi/envs/index + /autoapi/shasta/index .. [#f1] Created with `sphinx-autoapi `_ \ No newline at end of file diff --git a/docs/html/_sources/autoapi/shasta/actor/index.rst.txt b/docs/html/_sources/autoapi/shasta/actor/index.rst.txt new file mode 100644 index 0000000..e81478a --- /dev/null +++ b/docs/html/_sources/autoapi/shasta/actor/index.rst.txt @@ -0,0 +1,87 @@ +:py:mod:`shasta.actor` +====================== + +.. py:module:: shasta.actor + + +Module Contents +--------------- + +Classes +~~~~~~~ + +.. autoapisummary:: + + shasta.actor.BaseActor + + + + +.. py:class:: BaseActor + + + Bases: :py:obj:`with_metaclass`\ (\ :py:obj:`ABCMeta`\ , :py:obj:`object`\ ) + + This the base class for single UGV robot + + .. py:attribute:: physics_client + + + + .. py:attribute:: _loaded + :value: False + + + + .. py:method:: _load() + + Load object into pybullet and return list of loaded body ids. + + + .. py:method:: get_actor_id() + + Get the actor id + + :returns: The actor id in the simulation + :rtype: int + + + .. py:method:: load_asset(*args, **kwargs) + :abstractmethod: + + Load the assests of the actor. + + + .. py:method:: reset(*args, **kwargs) + :abstractmethod: + + Reset the actor + + :raises NotImplementedError: + + + .. py:method:: get_observation(*args, **kwargs) + :abstractmethod: + + Get the observation from the actor. + + :raises NotImplementedError: + + + .. py:method:: apply_action(*args, **kwargs) + :abstractmethod: + + Apply the action to the actor + + :raises NotImplementedError: + + + .. py:method:: destroy(*args, **kwargs) + :abstractmethod: + + Destroy the actor + + :raises NotImplementedError: + + + diff --git a/docs/html/_sources/autoapi/shasta/base_experiment/index.rst.txt b/docs/html/_sources/autoapi/shasta/base_experiment/index.rst.txt new file mode 100644 index 0000000..6c5fbe3 --- /dev/null +++ b/docs/html/_sources/autoapi/shasta/base_experiment/index.rst.txt @@ -0,0 +1,78 @@ +:py:mod:`shasta.base_experiment` +================================ + +.. py:module:: shasta.base_experiment + + +Module Contents +--------------- + +Classes +~~~~~~~ + +.. autoapisummary:: + + shasta.base_experiment.BaseExperiment + + + + +.. py:class:: BaseExperiment(config, core, experiment_config=None, *args, **kargs) + + + Bases: :py:obj:`with_metaclass`\ (\ :py:obj:`ABCMeta`\ , :py:obj:`object`\ ) + + .. py:method:: reset() + + Called at the beginning and each time the simulation is reset + + + .. py:method:: get_action_space() + :abstractmethod: + + Returns the action space + + + .. py:method:: get_observation_space() + :abstractmethod: + + Returns the observation space + + + .. py:method:: get_actions() + :abstractmethod: + + Returns the actions + + + .. py:method:: apply_actions(actions, core) + :abstractmethod: + + Given the action, applies the action to group or individual actor + + :param action: value outputted by the policy + + + .. py:method:: get_observation(observation, core) + :abstractmethod: + + Function to do all the post processing of observations (sensor data). + + :param sensor_data: dictionary {sensor_name: sensor_data} + + Should return a tuple or list with two items, the processed observations, + as well as a variable with additional information about such observation. + The information variable can be empty + + + .. py:method:: get_done_status(observation, core) + + Returns whether or not the experiment has to end + + + .. py:method:: compute_reward(observation, core) + + Computes the reward + + + diff --git a/docs/html/_sources/autoapi/shasta/core/index.rst.txt b/docs/html/_sources/autoapi/shasta/core/index.rst.txt new file mode 100644 index 0000000..de9564c --- /dev/null +++ b/docs/html/_sources/autoapi/shasta/core/index.rst.txt @@ -0,0 +1,121 @@ +:py:mod:`shasta.core` +===================== + +.. py:module:: shasta.core + + +Module Contents +--------------- + +Classes +~~~~~~~ + +.. autoapisummary:: + + shasta.core.ShastaCore + + + +Functions +~~~~~~~~~ + +.. autoapisummary:: + + shasta.core.kill_all_servers + + + +.. py:function:: kill_all_servers() + + Kill all PIDs that start with Carla + + +.. py:class:: ShastaCore(config, actor_groups: dict = None) + + + Class responsible of handling all the different CARLA functionalities, + such as server-client connecting, actor spawning, + and getting the sensors data. + + .. py:method:: _setup_physics_client() + + Setup the physics client + + :rtype: None + + + .. py:method:: get_physics_client() + + Ge the physics client + + :returns: The bullet physics client + :rtype: object + + + .. py:method:: init_server() + + Start a server on a random port + + + .. py:method:: setup_experiment(experiment_config) + + Initialize the hero and sensors + + + .. py:method:: get_world() + + Get the World object from the simulation + + :returns: The world object + :rtype: object + + + .. py:method:: get_map() + + Get the Map object from the simulation + + :returns: The map object + :rtype: object + + + .. py:method:: reset() + + This function resets / spawns the hero vehicle and its sensors + + + .. py:method:: spawn_actors() + + Spawns vehicles and walkers, also setting up the Traffic Manager and its parameters + + + .. py:method:: get_actor_groups() + + Get the actor groups + + :returns: The actor groups as a dict with group id as the key + list of actors as the value + :rtype: dict + + + .. py:method:: get_actors_by_group_id(group_id) + + Get a list of actor given by group id + + :param group_id: Group id to be returned + :type group_id: int + + :returns: A list of actor given the group id + :rtype: list + + + .. py:method:: tick() + + Performs one tick of the simulation, moving all actors, and getting the sensor data + + + .. py:method:: close_simulation() + + Close the simulation + + + diff --git a/docs/html/_sources/autoapi/shasta/index.rst.txt b/docs/html/_sources/autoapi/shasta/index.rst.txt new file mode 100644 index 0000000..6d8bcfe --- /dev/null +++ b/docs/html/_sources/autoapi/shasta/index.rst.txt @@ -0,0 +1,32 @@ +:py:mod:`shasta` +================ + +.. py:module:: shasta + + +Subpackages +----------- +.. toctree:: + :titlesonly: + :maxdepth: 3 + + preprocessing/index.rst + primitives/index.rst + + +Submodules +---------- +.. toctree:: + :titlesonly: + :maxdepth: 1 + + actor/index.rst + base_experiment/index.rst + core/index.rst + env/index.rst + map/index.rst + utils/index.rst + visualize/index.rst + world/index.rst + + diff --git a/docs/html/_sources/autoapi/shasta/map/index.rst.txt b/docs/html/_sources/autoapi/shasta/map/index.rst.txt new file mode 100644 index 0000000..e604615 --- /dev/null +++ b/docs/html/_sources/autoapi/shasta/map/index.rst.txt @@ -0,0 +1,181 @@ +:py:mod:`shasta.map` +==================== + +.. py:module:: shasta.map + + +Module Contents +--------------- + +Classes +~~~~~~~ + +.. autoapisummary:: + + shasta.map.Map + + + + +Attributes +~~~~~~~~~~ + +.. autoapisummary:: + + shasta.map.directories + shasta.map.assets_root + + +.. py:data:: directories + + + +.. py:data:: assets_root + + + +.. py:class:: Map + + + .. py:method:: _affine_transformation_and_graph() + + Performs initial conversion of the lat lon to cartesian + + + .. py:method:: _setup_building_info() + + + .. py:method:: setup(experiment_config) + + Perform the initial experiment setup e.g., loading the map + + :param experiment_config: A yaml file providing the map configuration + :type experiment_config: yaml + + :rtype: None + + :raises FileNotFoundError: If the experiment config is none, raises a file not found error + + + .. py:method:: get_affine_transformation_and_graph() + + Get the transformation matrix and the node graph of the map + + :returns: The transformation matrix and the node graph + :rtype: array, node graph + + + .. py:method:: get_node_graph() + + Get the node graph of the world + + :returns: A node graph of the world map + :rtype: networkx graph + + + .. py:method:: get_node_info(node_index) + + Get the information about a node. + + :param id: Node ID + :type id: int + + :returns: A dictionary containing all the information about the node. + :rtype: dict + + + .. py:method:: convert_to_lat_lon(point) + + Convert a given point to lat lon co-ordinates + + :param point: A numpy array in pybullet cartesian co-ordinates + :type point: array + + :returns: **lat_lon** -- The lat lon co-ordinates + :rtype: array + + + .. py:method:: convert_to_cartesian(point) + + Convert a lat lon co-ordinates to cartesian coordinates + + :param point: A numpy array in lat lon co-ordinates co-ordinates + :type point: array + + :returns: **lat_lon** -- The cartesian coordinates + :rtype: array + + + .. py:method:: get_building_info(building_index) + + Get the information about a building such as perimeter, + position, number of floors. + + :param id: Building ID + :type id: int + + :returns: A dictionary containing all the information about the building. + :rtype: dict + + + .. py:method:: get_lat_lon_spawn_points(n_points=5) + + Get the latitude and longitude spawn points + + :param n_points: Number of points to random latitude and longitude points, by default 5 + :type n_points: int, optional + + :returns: An array of cartesian spawn points + :rtype: array + + + .. py:method:: get_cartesian_node_position(node_index) + + Get the cartesian co-ordinates given the node index + + :param node_index: The node index in the map + :type node_index: int + + :returns: The cartesian co-ordinates + :rtype: array + + + .. py:method:: get_lat_lon_node_position(node_index) + + Get the lat and lon given the node index + + :param node_index: The node index in the map + :type node_index: int + + :returns: The cartesian co-ordinates + :rtype: array + + + .. py:method:: get_cartesian_spawn_points(n_points=5) + + Get the cartesian spawn points + + :param n_points: Number of points to random cartesian co-ordinates, by default 5 + :type n_points: int, optional + + :returns: An array of cartesian spawn points + :rtype: array + + + .. py:method:: get_all_buildings() + + Get all the buildings + + :returns: A dataframe with all the building information + :rtype: dataframe + + + .. py:method:: get_transformation_matrix() + + Get the transformation matrix to convert lat lon to cartesian + + :returns: The transformation matrix + :rtype: array + + + diff --git a/docs/html/_sources/autoapi/shasta/preprocessing/bake_texture/index.rst.txt b/docs/html/_sources/autoapi/shasta/preprocessing/bake_texture/index.rst.txt new file mode 100644 index 0000000..9c9e2cc --- /dev/null +++ b/docs/html/_sources/autoapi/shasta/preprocessing/bake_texture/index.rst.txt @@ -0,0 +1,54 @@ +:py:mod:`shasta.preprocessing.bake_texture` +=========================================== + +.. py:module:: shasta.preprocessing.bake_texture + + +Module Contents +--------------- + +.. py:data:: ops + + + +.. py:data:: scene + + + +.. py:data:: mesh + + + +.. py:data:: scene + + + +.. py:data:: obs + :value: [] + + + +.. py:data:: ctx + + + +.. py:data:: image + + + +.. py:data:: matslots + + + +.. py:data:: mat + + + +.. py:data:: tex + + + +.. py:data:: slot + + + diff --git a/docs/html/_sources/autoapi/shasta/preprocessing/index.rst.txt b/docs/html/_sources/autoapi/shasta/preprocessing/index.rst.txt new file mode 100644 index 0000000..280647b --- /dev/null +++ b/docs/html/_sources/autoapi/shasta/preprocessing/index.rst.txt @@ -0,0 +1,17 @@ +:py:mod:`shasta.preprocessing` +============================== + +.. py:module:: shasta.preprocessing + + +Submodules +---------- +.. toctree:: + :titlesonly: + :maxdepth: 1 + + bake_texture/index.rst + preprocess/index.rst + utils/index.rst + + diff --git a/docs/html/_sources/autoapi/shasta/preprocessing/preprocess/index.rst.txt b/docs/html/_sources/autoapi/shasta/preprocessing/preprocess/index.rst.txt new file mode 100644 index 0000000..b0535eb --- /dev/null +++ b/docs/html/_sources/autoapi/shasta/preprocessing/preprocess/index.rst.txt @@ -0,0 +1,46 @@ +:py:mod:`shasta.preprocessing.preprocess` +========================================= + +.. py:module:: shasta.preprocessing.preprocess + + +Module Contents +--------------- + +Classes +~~~~~~~ + +.. autoapisummary:: + + shasta.preprocessing.preprocess.PreProcess + + + + +Attributes +~~~~~~~~~~ + +.. autoapisummary:: + + shasta.preprocessing.preprocess.preprocess + + +.. py:class:: PreProcess(osm_map_path=None, blender_path=None) + + + .. py:method:: _save_building_info() + :abstractmethod: + + + .. py:method:: _save_graph_info() + :abstractmethod: + + + .. py:method:: run_processing() + + + +.. py:data:: preprocess + + + diff --git a/docs/html/_sources/autoapi/shasta/preprocessing/utils/index.rst.txt b/docs/html/_sources/autoapi/shasta/preprocessing/utils/index.rst.txt new file mode 100644 index 0000000..bb0fa69 --- /dev/null +++ b/docs/html/_sources/autoapi/shasta/preprocessing/utils/index.rst.txt @@ -0,0 +1,32 @@ +:py:mod:`shasta.preprocessing.utils` +==================================== + +.. py:module:: shasta.preprocessing.utils + + +Module Contents +--------------- + + +Functions +~~~~~~~~~ + +.. autoapisummary:: + + shasta.preprocessing.utils.extract_building_info + shasta.preprocessing.utils.save_buildings_map + shasta.preprocessing.utils.extract_path_info + + + +.. py:function:: extract_building_info(osm_path, save_fig=False) + + Perfrom initial building setup. + + +.. py:function:: save_buildings_map(osm_path) + + +.. py:function:: extract_path_info(osm_path) + + diff --git a/docs/html/_sources/autoapi/shasta/primitives/formation/index.rst.txt b/docs/html/_sources/autoapi/shasta/primitives/formation/index.rst.txt new file mode 100644 index 0000000..85b69ce --- /dev/null +++ b/docs/html/_sources/autoapi/shasta/primitives/formation/index.rst.txt @@ -0,0 +1,63 @@ +:py:mod:`shasta.primitives.formation` +===================================== + +.. py:module:: shasta.primitives.formation + + +Module Contents +--------------- + +Classes +~~~~~~~ + +.. autoapisummary:: + + shasta.primitives.formation.Formation + + + + +.. py:class:: Formation(config=None) + + + Bases: :py:obj:`object` + + Formation control primitive using region based shape control. + Coded by: Apurvakumar Jani, Date: 18/9/2019 + + .. py:method:: calculate_vel(vehicle, dt, all_drones_pos, centroid_pos, path_vel, vmax, formation_type) + + Calculate the vehicle velocity depending on the position of the peer vehicles + + :param vehicle: A class instance of UxV agent + :type vehicle: class instance + :param dt: Time step duration (in seconds) to use in next position calculation + :type dt: float + :param all_drones_pos: An array with position of all the vehicles in the group/platoon + :type all_drones_pos: aarray + :param centroid_pos: An array specifying the centroid of the platoon + :type centroid_pos: array + :param path_vel: Path velocity calculated from next position and current position + :type path_vel: float + :param vmax: Maximum velocity of the vehicle + :type vmax: float + :param formation_type: Whether the formation is solid or ring + :type formation_type: str + + :returns: **vehicle** -- A vehicle class instance with updated position + :rtype: class instance + + + .. py:method:: execute(vehicles, next_pos, centroid_pos, formation_type) + + Get the position of the formation control + + :param vehicles: A list containing UAV or UGV class + :type vehicles: list + :param centroid_pos: An array containing the x, y, and z position + :type centroid_pos: array + :param dt: Time step to be used for distance calculation + :type dt: float + + + diff --git a/docs/html/_sources/autoapi/shasta/primitives/index.rst.txt b/docs/html/_sources/autoapi/shasta/primitives/index.rst.txt new file mode 100644 index 0000000..30f4839 --- /dev/null +++ b/docs/html/_sources/autoapi/shasta/primitives/index.rst.txt @@ -0,0 +1,120 @@ +:py:mod:`shasta.primitives` +=========================== + +.. py:module:: shasta.primitives + + +Submodules +---------- +.. toctree:: + :titlesonly: + :maxdepth: 1 + + formation/index.rst + path_planning/index.rst + + +Package Contents +---------------- + +Classes +~~~~~~~ + +.. autoapisummary:: + + shasta.primitives.Formation + shasta.primitives.PathPlanning + + + + +.. py:class:: Formation(config=None) + + + Bases: :py:obj:`object` + + Formation control primitive using region based shape control. + Coded by: Apurvakumar Jani, Date: 18/9/2019 + + .. py:method:: calculate_vel(vehicle, dt, all_drones_pos, centroid_pos, path_vel, vmax, formation_type) + + Calculate the vehicle velocity depending on the position of the peer vehicles + + :param vehicle: A class instance of UxV agent + :type vehicle: class instance + :param dt: Time step duration (in seconds) to use in next position calculation + :type dt: float + :param all_drones_pos: An array with position of all the vehicles in the group/platoon + :type all_drones_pos: aarray + :param centroid_pos: An array specifying the centroid of the platoon + :type centroid_pos: array + :param path_vel: Path velocity calculated from next position and current position + :type path_vel: float + :param vmax: Maximum velocity of the vehicle + :type vmax: float + :param formation_type: Whether the formation is solid or ring + :type formation_type: str + + :returns: **vehicle** -- A vehicle class instance with updated position + :rtype: class instance + + + .. py:method:: execute(vehicles, next_pos, centroid_pos, formation_type) + + Get the position of the formation control + + :param vehicles: A list containing UAV or UGV class + :type vehicles: list + :param centroid_pos: An array containing the x, y, and z position + :type centroid_pos: array + :param dt: Time step to be used for distance calculation + :type dt: float + + + +.. py:class:: PathPlanning(env_map) + + + Bases: :py:obj:`object` + + Path planner based on the skeleton of the image. + Generates a spline path + + .. py:method:: linear_refine_implicit(x, n) + + Given a 2D ndarray (npt, m) of npt coordinates in m dimension, + insert 2**(n-1) additional points on each trajectory segment + Returns an (npt*2**(n-1), m) ndarray + + :param x: A 2D input array + :type x: array + :param n: Number of intermediate points to insert between two consecutive points in x + :type n: int + + :returns: An array with interploated points + :rtype: array + + :raises NotImplementedError: The functions is not implemented for 3D or higher dimensions + :raises ValueError: Number of intermediate points should be greated than zero + + + .. py:method:: find_path(start, end, n_splits=1) + + Finds a path between start and end using path graph + + :param start: A cartesian co-ordinate specifying the start position + :type start: array + :param end: A node ID specifying the end position + :type end: array + :param n_splits: Number of splits in refining the path points, by default 1 + :type n_splits: int, optional + + :returns: **path_points** -- A refined path points in pybullet cartesian co-ordinate system + :rtype: array + + + .. py:method:: execute() + :abstractmethod: + + + diff --git a/docs/html/_sources/autoapi/shasta/primitives/path_planning/index.rst.txt b/docs/html/_sources/autoapi/shasta/primitives/path_planning/index.rst.txt new file mode 100644 index 0000000..0e45522 --- /dev/null +++ b/docs/html/_sources/autoapi/shasta/primitives/path_planning/index.rst.txt @@ -0,0 +1,65 @@ +:py:mod:`shasta.primitives.path_planning` +========================================= + +.. py:module:: shasta.primitives.path_planning + + +Module Contents +--------------- + +Classes +~~~~~~~ + +.. autoapisummary:: + + shasta.primitives.path_planning.PathPlanning + + + + +.. py:class:: PathPlanning(env_map) + + + Bases: :py:obj:`object` + + Path planner based on the skeleton of the image. + Generates a spline path + + .. py:method:: linear_refine_implicit(x, n) + + Given a 2D ndarray (npt, m) of npt coordinates in m dimension, + insert 2**(n-1) additional points on each trajectory segment + Returns an (npt*2**(n-1), m) ndarray + + :param x: A 2D input array + :type x: array + :param n: Number of intermediate points to insert between two consecutive points in x + :type n: int + + :returns: An array with interploated points + :rtype: array + + :raises NotImplementedError: The functions is not implemented for 3D or higher dimensions + :raises ValueError: Number of intermediate points should be greated than zero + + + .. py:method:: find_path(start, end, n_splits=1) + + Finds a path between start and end using path graph + + :param start: A cartesian co-ordinate specifying the start position + :type start: array + :param end: A node ID specifying the end position + :type end: array + :param n_splits: Number of splits in refining the path points, by default 1 + :type n_splits: int, optional + + :returns: **path_points** -- A refined path points in pybullet cartesian co-ordinate system + :rtype: array + + + .. py:method:: execute() + :abstractmethod: + + + diff --git a/docs/html/_sources/autoapi/shasta/utils/index.rst.txt b/docs/html/_sources/autoapi/shasta/utils/index.rst.txt new file mode 100644 index 0000000..39c6c49 --- /dev/null +++ b/docs/html/_sources/autoapi/shasta/utils/index.rst.txt @@ -0,0 +1,34 @@ +:py:mod:`shasta.utils` +====================== + +.. py:module:: shasta.utils + + +Module Contents +--------------- + + +Functions +~~~~~~~~~ + +.. autoapisummary:: + + shasta.utils.get_initial_positions + + + +.. py:function:: get_initial_positions(cartesian_pos, r, n) + + Initial position for actor in the form of a ring + + :param cartesian_pos: Initial cartesian pos + :type cartesian_pos: array + :param r: Radius of formation + :type r: float + :param n: Number of points in the circle + :type n: int + + :returns: An array of points in the form of a ring + :rtype: array + + diff --git a/docs/html/_sources/autoapi/shasta/visualize/index.rst.txt b/docs/html/_sources/autoapi/shasta/visualize/index.rst.txt new file mode 100644 index 0000000..ae7a0bb --- /dev/null +++ b/docs/html/_sources/autoapi/shasta/visualize/index.rst.txt @@ -0,0 +1,27 @@ +:py:mod:`shasta.visualize` +========================== + +.. py:module:: shasta.visualize + + +Module Contents +--------------- + + +Functions +~~~~~~~~~ + +.. autoapisummary:: + + shasta.visualize.plot_nodes + + + +.. py:function:: plot_nodes(config) + + Visualize the node graph + + :param config: a yaml file providing the configuration + :type config: yaml + + diff --git a/docs/html/_sources/autoapi/shasta/world/index.rst.txt b/docs/html/_sources/autoapi/shasta/world/index.rst.txt new file mode 100644 index 0000000..0104b6d --- /dev/null +++ b/docs/html/_sources/autoapi/shasta/world/index.rst.txt @@ -0,0 +1,59 @@ +:py:mod:`shasta.world` +====================== + +.. py:module:: shasta.world + + +Module Contents +--------------- + +Classes +~~~~~~~ + +.. autoapisummary:: + + shasta.world.World + + + + +.. py:class:: World(config) + + + .. py:method:: load_world_model(read_path) + + Load the URDF model + + :param read_path: The path to the URDF model + :type read_path: str + + + .. py:method:: change_camera_position(camera_distance=150.0, camera_yaw=0.0, camera_pitch=-89.999, camera_target_position=[0, 30, 0]) + + Change the world camera position + + :param camera_distance: Camera distance from target, by default 150 + :type camera_distance: float, optional + :param camera_yaw: Camera yaw, by default 0 + :type camera_yaw: float, optional + :param camera_pitch: Camera pitch, by default -89.999 + :type camera_pitch: float, optional + :param camera_target_position: Camera target position, by default [0, 30, 0] + :type camera_target_position: list, optional + + :rtype: None + + + .. py:method:: spawn_actor(actor, spawn_point) + + Spawn the actor at a given point + + :param actor: An actor to spawm + :type actor: object + :param spawn_point: Spawn point + :type spawn_point: array + + :rtype: None + + + diff --git a/docs/html/_sources/code_of_conduct.rst.txt b/docs/html/_sources/code_of_conduct.rst.txt new file mode 100644 index 0000000..63606e6 --- /dev/null +++ b/docs/html/_sources/code_of_conduct.rst.txt @@ -0,0 +1,4 @@ +Code of Conduct +=============== +.. include:: ../CODE_OF_CONDUCT.md + :parser: myst_parser.sphinx_ diff --git a/docs/html/_sources/contributing.rst.txt b/docs/html/_sources/contributing.rst.txt index e582053..66c365e 100644 --- a/docs/html/_sources/contributing.rst.txt +++ b/docs/html/_sources/contributing.rst.txt @@ -1 +1,4 @@ -.. include:: ../CONTRIBUTING.rst +Contributing +=========== +.. include:: ../CONTRIBUTING.md + :parser: myst_parser.sphinx_ diff --git a/docs/html/_sources/index.rst.txt b/docs/html/_sources/index.rst.txt index 3cf3bb5..ba4a499 100644 --- a/docs/html/_sources/index.rst.txt +++ b/docs/html/_sources/index.rst.txt @@ -7,8 +7,8 @@ Welcome to shasta's documentation! readme installation - usage contributing + code_of_conduct history Indices and tables diff --git a/docs/html/_sources/installation.rst.txt b/docs/html/_sources/installation.rst.txt index 729dd20..edbe5a3 100644 --- a/docs/html/_sources/installation.rst.txt +++ b/docs/html/_sources/installation.rst.txt @@ -34,18 +34,9 @@ You can either clone the public repository: $ git clone git://github.com/hemumanju/shasta -Or download the `tarball`_: - -.. code-block:: console - - $ curl -OJL https://github.com/hemumanju/shasta/tarball/master - -Once you have a copy of the source, you can install it with: - .. code-block:: console $ python setup.py install .. _Github repo: https://github.com/hemumanju/shasta -.. _tarball: https://github.com/hemumanju/shasta/tarball/master diff --git a/docs/html/_sources/readme.rst.txt b/docs/html/_sources/readme.rst.txt index 72a3355..95cacbc 100644 --- a/docs/html/_sources/readme.rst.txt +++ b/docs/html/_sources/readme.rst.txt @@ -1 +1,4 @@ -.. include:: ../README.rst +Welcome +=========== +.. include:: ../README.md + :parser: myst_parser.sphinx_ diff --git a/docs/html/_static/basic.css b/docs/html/_static/basic.css index 24a49f0..7577acb 100644 --- a/docs/html/_static/basic.css +++ b/docs/html/_static/basic.css @@ -4,7 +4,7 @@ * * Sphinx stylesheet -- basic theme. * - * :copyright: Copyright 2007-2020 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ @@ -130,7 +130,7 @@ ul.search li a { font-weight: bold; } -ul.search li div.context { +ul.search li p.context { color: #888; margin: 2px 0 0 30px; text-align: left; @@ -222,7 +222,7 @@ table.modindextable td { /* -- general body styles --------------------------------------------------- */ div.body { - min-width: 450px; + min-width: 360px; max-width: 800px; } @@ -237,16 +237,6 @@ a.headerlink { visibility: hidden; } -a.brackets:before, -span.brackets > a:before{ - content: "["; -} - -a.brackets:after, -span.brackets > a:after { - content: "]"; -} - h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, @@ -277,25 +267,25 @@ p.rubric { font-weight: bold; } -img.align-left, .figure.align-left, object.align-left { +img.align-left, figure.align-left, .figure.align-left, object.align-left { clear: left; float: left; margin-right: 1em; } -img.align-right, .figure.align-right, object.align-right { +img.align-right, figure.align-right, .figure.align-right, object.align-right { clear: right; float: right; margin-left: 1em; } -img.align-center, .figure.align-center, object.align-center { +img.align-center, figure.align-center, .figure.align-center, object.align-center { display: block; margin-left: auto; margin-right: auto; } -img.align-default, .figure.align-default { +img.align-default, figure.align-default, .figure.align-default { display: block; margin-left: auto; margin-right: auto; @@ -319,7 +309,8 @@ img.align-default, .figure.align-default { /* -- sidebars -------------------------------------------------------------- */ -div.sidebar { +div.sidebar, +aside.sidebar { margin: 0 0 0.5em 1em; border: 1px solid #ddb; padding: 7px; @@ -334,12 +325,16 @@ p.sidebar-title { font-weight: bold; } +nav.contents, +aside.topic, div.admonition, div.topic, blockquote { clear: left; } /* -- topics ---------------------------------------------------------------- */ +nav.contents, +aside.topic, div.topic { border: 1px solid #ccc; padding: 7px; @@ -377,12 +372,18 @@ div.body p.centered { /* -- content of sidebars/topics/admonitions -------------------------------- */ div.sidebar > :last-child, +aside.sidebar > :last-child, +nav.contents > :last-child, +aside.topic > :last-child, div.topic > :last-child, div.admonition > :last-child { margin-bottom: 0; } div.sidebar::after, +aside.sidebar::after, +nav.contents::after, +aside.topic::after, div.topic::after, div.admonition::after, blockquote::after { @@ -425,10 +426,6 @@ table.docutils td, table.docutils th { border-bottom: 1px solid #aaa; } -table.footnote td, table.footnote th { - border: 0 !important; -} - th { text-align: left; padding-right: 5px; @@ -455,20 +452,22 @@ td > :last-child { /* -- figures --------------------------------------------------------------- */ -div.figure { +div.figure, figure { margin: 0.5em; padding: 0.5em; } -div.figure p.caption { +div.figure p.caption, figcaption { padding: 0.3em; } -div.figure p.caption span.caption-number { +div.figure p.caption span.caption-number, +figcaption span.caption-number { font-style: italic; } -div.figure p.caption span.caption-text { +div.figure p.caption span.caption-text, +figcaption span.caption-text { } /* -- field list styles ----------------------------------------------------- */ @@ -503,6 +502,63 @@ table.hlist td { vertical-align: top; } +/* -- object description styles --------------------------------------------- */ + +.sig { + font-family: 'Consolas', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace; +} + +.sig-name, code.descname { + background-color: transparent; + font-weight: bold; +} + +.sig-name { + font-size: 1.1em; +} + +code.descname { + font-size: 1.2em; +} + +.sig-prename, code.descclassname { + background-color: transparent; +} + +.optional { + font-size: 1.3em; +} + +.sig-paren { + font-size: larger; +} + +.sig-param.n { + font-style: italic; +} + +/* C++ specific styling */ + +.sig-inline.c-texpr, +.sig-inline.cpp-texpr { + font-family: unset; +} + +.sig.c .k, .sig.c .kt, +.sig.cpp .k, .sig.cpp .kt { + color: #0033B3; +} + +.sig.c .m, +.sig.cpp .m { + color: #1750EB; +} + +.sig.c .s, .sig.c .sc, +.sig.cpp .s, .sig.cpp .sc { + color: #067D17; +} + /* -- other body styles ----------------------------------------------------- */ @@ -553,19 +609,26 @@ ul.simple p { margin-bottom: 0; } -dl.footnote > dt, -dl.citation > dt { +aside.footnote > span, +div.citation > span { float: left; - margin-right: 0.5em; } - -dl.footnote > dd, -dl.citation > dd { +aside.footnote > span:last-of-type, +div.citation > span:last-of-type { + padding-right: 0.5em; +} +aside.footnote > p { + margin-left: 2em; +} +div.citation > p { + margin-left: 4em; +} +aside.footnote > p:last-of-type, +div.citation > p:last-of-type { margin-bottom: 0em; } - -dl.footnote > dd:after, -dl.citation > dd:after { +aside.footnote > p:last-of-type:after, +div.citation > p:last-of-type:after { content: ""; clear: both; } @@ -582,10 +645,6 @@ dl.field-list > dt { padding-right: 5px; } -dl.field-list > dt:after { - content: ":"; -} - dl.field-list > dd { padding-left: 0.5em; margin-top: 0em; @@ -629,14 +688,6 @@ dl.glossary dt { font-size: 1.1em; } -.optional { - font-size: 1.3em; -} - -.sig-paren { - font-size: larger; -} - .versionmodified { font-style: italic; } @@ -677,8 +728,9 @@ dl.glossary dt { .classifier:before { font-style: normal; - margin: 0.5em; + margin: 0 0.5em; content: ":"; + display: inline-block; } abbr, acronym { @@ -702,6 +754,7 @@ span.pre { -ms-hyphens: none; -webkit-hyphens: none; hyphens: none; + white-space: nowrap; } div[class*="highlight-"] { @@ -765,8 +818,12 @@ div.code-block-caption code { table.highlighttable td.linenos, span.linenos, -div.doctest > div.highlight span.gp { /* gp: Generic.Prompt */ - user-select: none; +div.highlight span.gp { /* gp: Generic.Prompt */ + user-select: none; + -webkit-user-select: text; /* Safari fallback only */ + -webkit-user-select: none; /* Chrome/Safari */ + -moz-user-select: none; /* Firefox */ + -ms-user-select: none; /* IE10+ */ } div.code-block-caption span.caption-number { @@ -781,16 +838,6 @@ div.literal-block-wrapper { margin: 1em 0; } -code.descname { - background-color: transparent; - font-weight: bold; - font-size: 1.2em; -} - -code.descclassname { - background-color: transparent; -} - code.xref, a code { background-color: transparent; font-weight: bold; diff --git a/docs/html/_static/debug.css b/docs/html/_static/debug.css new file mode 100644 index 0000000..74d4aec --- /dev/null +++ b/docs/html/_static/debug.css @@ -0,0 +1,69 @@ +/* + This CSS file should be overridden by the theme authors. It's + meant for debugging and developing the skeleton that this theme provides. +*/ +body { + font-family: -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, + "Apple Color Emoji", "Segoe UI Emoji"; + background: lavender; +} +.sb-announcement { + background: rgb(131, 131, 131); +} +.sb-announcement__inner { + background: black; + color: white; +} +.sb-header { + background: lightskyblue; +} +.sb-header__inner { + background: royalblue; + color: white; +} +.sb-header-secondary { + background: lightcyan; +} +.sb-header-secondary__inner { + background: cornflowerblue; + color: white; +} +.sb-sidebar-primary { + background: lightgreen; +} +.sb-main { + background: blanchedalmond; +} +.sb-main__inner { + background: antiquewhite; +} +.sb-header-article { + background: lightsteelblue; +} +.sb-article-container { + background: snow; +} +.sb-article-main { + background: white; +} +.sb-footer-article { + background: lightpink; +} +.sb-sidebar-secondary { + background: lightgoldenrodyellow; +} +.sb-footer-content { + background: plum; +} +.sb-footer-content__inner { + background: palevioletred; +} +.sb-footer { + background: pink; +} +.sb-footer__inner { + background: salmon; +} +.sb-article { + background: white; +} diff --git a/docs/html/_static/doctools.js b/docs/html/_static/doctools.js index 7d88f80..d06a71d 100644 --- a/docs/html/_static/doctools.js +++ b/docs/html/_static/doctools.js @@ -2,315 +2,155 @@ * doctools.js * ~~~~~~~~~~~ * - * Sphinx JavaScript utilities for all documentation. + * Base JavaScript utilities for all Sphinx HTML documentation. * - * :copyright: Copyright 2007-2020 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ - -/** - * select a different prefix for underscore - */ -$u = _.noConflict(); - -/** - * make the code below compatible with browsers without - * an installed firebug like debugger -if (!window.console || !console.firebug) { - var names = ["log", "debug", "info", "warn", "error", "assert", "dir", - "dirxml", "group", "groupEnd", "time", "timeEnd", "count", "trace", - "profile", "profileEnd"]; - window.console = {}; - for (var i = 0; i < names.length; ++i) - window.console[names[i]] = function() {}; -} - */ - -/** - * small helper function to urldecode strings - */ -jQuery.urldecode = function(x) { - return decodeURIComponent(x).replace(/\+/g, ' '); -}; - -/** - * small helper function to urlencode strings - */ -jQuery.urlencode = encodeURIComponent; - -/** - * This function returns the parsed url parameters of the - * current request. Multiple values per key are supported, - * it will always return arrays of strings for the value parts. - */ -jQuery.getQueryParameters = function(s) { - if (typeof s === 'undefined') - s = document.location.search; - var parts = s.substr(s.indexOf('?') + 1).split('&'); - var result = {}; - for (var i = 0; i < parts.length; i++) { - var tmp = parts[i].split('=', 2); - var key = jQuery.urldecode(tmp[0]); - var value = jQuery.urldecode(tmp[1]); - if (key in result) - result[key].push(value); - else - result[key] = [value]; +"use strict"; + +const BLACKLISTED_KEY_CONTROL_ELEMENTS = new Set([ + "TEXTAREA", + "INPUT", + "SELECT", + "BUTTON", +]); + +const _ready = (callback) => { + if (document.readyState !== "loading") { + callback(); + } else { + document.addEventListener("DOMContentLoaded", callback); } - return result; }; -/** - * highlight a given string on a jquery object by wrapping it in - * span elements with the given class name. - */ -jQuery.fn.highlightText = function(text, className) { - function highlight(node, addItems) { - if (node.nodeType === 3) { - var val = node.nodeValue; - var pos = val.toLowerCase().indexOf(text); - if (pos >= 0 && - !jQuery(node.parentNode).hasClass(className) && - !jQuery(node.parentNode).hasClass("nohighlight")) { - var span; - var isInSVG = jQuery(node).closest("body, svg, foreignObject").is("svg"); - if (isInSVG) { - span = document.createElementNS("http://www.w3.org/2000/svg", "tspan"); - } else { - 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); - if (isInSVG) { - var rect = document.createElementNS("http://www.w3.org/2000/svg", "rect"); - var bbox = node.parentElement.getBBox(); - rect.x.baseVal.value = bbox.x; - rect.y.baseVal.value = bbox.y; - rect.width.baseVal.value = bbox.width; - rect.height.baseVal.value = bbox.height; - rect.setAttribute('class', className); - addItems.push({ - "parent": node.parentNode, - "target": rect}); - } - } - } - else if (!jQuery(node).is("button, select, textarea")) { - jQuery.each(node.childNodes, function() { - highlight(this, addItems); - }); - } - } - var addItems = []; - var result = this.each(function() { - highlight(this, addItems); - }); - for (var i = 0; i < addItems.length; ++i) { - jQuery(addItems[i].parent).before(addItems[i].target); - } - return result; -}; - -/* - * backward compatibility for jQuery.browser - * This will be supported until firefox bug is fixed. - */ -if (!jQuery.browser) { - jQuery.uaMatch = function(ua) { - ua = ua.toLowerCase(); - - var match = /(chrome)[ \/]([\w.]+)/.exec(ua) || - /(webkit)[ \/]([\w.]+)/.exec(ua) || - /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua) || - /(msie) ([\w.]+)/.exec(ua) || - ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua) || - []; - - return { - browser: match[ 1 ] || "", - version: match[ 2 ] || "0" - }; - }; - jQuery.browser = {}; - jQuery.browser[jQuery.uaMatch(navigator.userAgent).browser] = true; -} - /** * Small JavaScript module for the documentation. */ -var Documentation = { - - init : function() { - this.fixFirefoxAnchorBug(); - this.highlightSearchWords(); - this.initIndexTable(); - if (DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) { - this.initOnKeyListeners(); - } +const Documentation = { + init: () => { + Documentation.initDomainIndexTable(); + Documentation.initOnKeyListeners(); }, /** * i18n support */ - TRANSLATIONS : {}, - PLURAL_EXPR : function(n) { return n === 1 ? 0 : 1; }, - LOCALE : 'unknown', + TRANSLATIONS: {}, + PLURAL_EXPR: (n) => (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)]; + gettext: (string) => { + const translated = Documentation.TRANSLATIONS[string]; + switch (typeof translated) { + case "undefined": + return string; // no translation + case "string": + return translated; // translation exists + default: + return translated[0]; // (singular, plural) translation tuple exists + } }, - 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; + ngettext: (singular, plural, n) => { + const translated = Documentation.TRANSLATIONS[singular]; + if (typeof translated !== "undefined") + return translated[Documentation.PLURAL_EXPR(n)]; + return n === 1 ? singular : plural; }, - /** - * 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); - }); + addTranslations: (catalog) => { + Object.assign(Documentation.TRANSLATIONS, catalog.messages); + Documentation.PLURAL_EXPR = new Function( + "n", + `return (${catalog.plural_expr})` + ); + Documentation.LOCALE = catalog.locale; }, /** - * workaround a firefox stupidity - * see: https://bugzilla.mozilla.org/show_bug.cgi?id=645075 + * helper function to focus on search bar */ - fixFirefoxAnchorBug : function() { - if (document.location.hash && $.browser.mozilla) - window.setTimeout(function() { - document.location.href += ''; - }, 10); + focusSearchBar: () => { + document.querySelectorAll("input[name=q]")[0]?.focus(); }, /** - * highlight the search words provided in the url in the text + * Initialise the domain index toggle buttons */ - highlightSearchWords : function() { - var params = $.getQueryParameters(); - var terms = (params.highlight) ? params.highlight[0].split(/\s+/) : []; - if (terms.length) { - var body = $('div.body'); - if (!body.length) { - body = $('body'); + initDomainIndexTable: () => { + const toggler = (el) => { + const idNumber = el.id.substr(7); + const toggledRows = document.querySelectorAll(`tr.cg-${idNumber}`); + if (el.src.substr(-9) === "minus.png") { + el.src = `${el.src.substr(0, el.src.length - 9)}plus.png`; + toggledRows.forEach((el) => (el.style.display = "none")); + } else { + el.src = `${el.src.substr(0, el.src.length - 8)}minus.png`; + toggledRows.forEach((el) => (el.style.display = "")); } - 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); + const togglerElements = document.querySelectorAll("img.toggler"); + togglerElements.forEach((el) => + el.addEventListener("click", (event) => toggler(event.currentTarget)) + ); + togglerElements.forEach((el) => (el.style.display = "")); + if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) togglerElements.forEach(toggler); }, - initOnKeyListeners: function() { - $(document).keydown(function(event) { - var activeElementType = document.activeElement.tagName; - // don't navigate when in search box, textarea, dropdown or button - if (activeElementType !== 'TEXTAREA' && activeElementType !== 'INPUT' && activeElementType !== 'SELECT' - && activeElementType !== 'BUTTON' && !event.altKey && !event.ctrlKey && !event.metaKey - && !event.shiftKey) { - switch (event.keyCode) { - case 37: // left - var prevHref = $('link[rel="prev"]').prop('href'); - if (prevHref) { - window.location.href = prevHref; - return false; + initOnKeyListeners: () => { + // only install a listener if it is really needed + if ( + !DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS && + !DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS + ) + return; + + document.addEventListener("keydown", (event) => { + // bail for input elements + if (BLACKLISTED_KEY_CONTROL_ELEMENTS.has(document.activeElement.tagName)) return; + // bail with special keys + if (event.altKey || event.ctrlKey || event.metaKey) return; + + if (!event.shiftKey) { + switch (event.key) { + case "ArrowLeft": + if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break; + + const prevLink = document.querySelector('link[rel="prev"]'); + if (prevLink && prevLink.href) { + window.location.href = prevLink.href; + event.preventDefault(); } - case 39: // right - var nextHref = $('link[rel="next"]').prop('href'); - if (nextHref) { - window.location.href = nextHref; - return false; + break; + case "ArrowRight": + if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break; + + const nextLink = document.querySelector('link[rel="next"]'); + if (nextLink && nextLink.href) { + window.location.href = nextLink.href; + event.preventDefault(); } + break; } } + + // some keyboard layouts may need Shift to get / + switch (event.key) { + case "/": + if (!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS) break; + Documentation.focusSearchBar(); + event.preventDefault(); + } }); - } + }, }; // quick alias for translations -_ = Documentation.gettext; +const _ = Documentation.gettext; -$(document).ready(function() { - Documentation.init(); -}); +_ready(Documentation.init); diff --git a/docs/html/_static/documentation_options.js b/docs/html/_static/documentation_options.js index 87d8188..e49ed18 100644 --- a/docs/html/_static/documentation_options.js +++ b/docs/html/_static/documentation_options.js @@ -1,12 +1,14 @@ var DOCUMENTATION_OPTIONS = { URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'), VERSION: '0.1.0', - LANGUAGE: 'None', + LANGUAGE: 'en', COLLAPSE_INDEX: false, BUILDER: 'html', FILE_SUFFIX: '.html', LINK_SUFFIX: '.html', HAS_SOURCE: true, SOURCELINK_SUFFIX: '.txt', - NAVIGATION_WITH_KEYS: false + NAVIGATION_WITH_KEYS: false, + SHOW_SEARCH_SUMMARY: true, + ENABLE_SEARCH_SHORTCUTS: true, }; \ No newline at end of file diff --git a/docs/html/_static/graphviz.css b/docs/html/_static/graphviz.css index 8ab69e0..8d81c02 100644 --- a/docs/html/_static/graphviz.css +++ b/docs/html/_static/graphviz.css @@ -4,7 +4,7 @@ * * Sphinx stylesheet -- graphviz extension. * - * :copyright: Copyright 2007-2020 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ diff --git a/docs/html/_static/language_data.js b/docs/html/_static/language_data.js index d2b4ee9..250f566 100644 --- a/docs/html/_static/language_data.js +++ b/docs/html/_static/language_data.js @@ -5,15 +5,16 @@ * This script contains the language-specific data used by searchtools.js, * namely the list of stopwords, stemmer, scorer and splitter. * - * :copyright: Copyright 2007-2020 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ -var stopwords = ["a","and","are","as","at","be","but","by","for","if","in","into","is","it","near","no","not","of","on","or","such","that","the","their","then","there","these","they","this","to","was","will","with"]; +var stopwords = ["a", "and", "are", "as", "at", "be", "but", "by", "for", "if", "in", "into", "is", "it", "near", "no", "not", "of", "on", "or", "such", "that", "the", "their", "then", "there", "these", "they", "this", "to", "was", "will", "with"]; -/* Non-minified version JS is _stemmer.js if file is provided */ +/* Non-minified version is copied as a separate JS file, is available */ + /** * Porter Stemmer */ @@ -196,102 +197,3 @@ var Stemmer = function() { } } - - - - -var splitChars = (function() { - var result = {}; - var singles = [96, 180, 187, 191, 215, 247, 749, 885, 903, 907, 909, 930, 1014, 1648, - 1748, 1809, 2416, 2473, 2481, 2526, 2601, 2609, 2612, 2615, 2653, 2702, - 2706, 2729, 2737, 2740, 2857, 2865, 2868, 2910, 2928, 2948, 2961, 2971, - 2973, 3085, 3089, 3113, 3124, 3213, 3217, 3241, 3252, 3295, 3341, 3345, - 3369, 3506, 3516, 3633, 3715, 3721, 3736, 3744, 3748, 3750, 3756, 3761, - 3781, 3912, 4239, 4347, 4681, 4695, 4697, 4745, 4785, 4799, 4801, 4823, - 4881, 5760, 5901, 5997, 6313, 7405, 8024, 8026, 8028, 8030, 8117, 8125, - 8133, 8181, 8468, 8485, 8487, 8489, 8494, 8527, 11311, 11359, 11687, 11695, - 11703, 11711, 11719, 11727, 11735, 12448, 12539, 43010, 43014, 43019, 43587, - 43696, 43713, 64286, 64297, 64311, 64317, 64319, 64322, 64325, 65141]; - var i, j, start, end; - for (i = 0; i < singles.length; i++) { - result[singles[i]] = true; - } - var ranges = [[0, 47], [58, 64], [91, 94], [123, 169], [171, 177], [182, 184], [706, 709], - [722, 735], [741, 747], [751, 879], [888, 889], [894, 901], [1154, 1161], - [1318, 1328], [1367, 1368], [1370, 1376], [1416, 1487], [1515, 1519], [1523, 1568], - [1611, 1631], [1642, 1645], [1750, 1764], [1767, 1773], [1789, 1790], [1792, 1807], - [1840, 1868], [1958, 1968], [1970, 1983], [2027, 2035], [2038, 2041], [2043, 2047], - [2070, 2073], [2075, 2083], [2085, 2087], [2089, 2307], [2362, 2364], [2366, 2383], - [2385, 2391], [2402, 2405], [2419, 2424], [2432, 2436], [2445, 2446], [2449, 2450], - [2483, 2485], [2490, 2492], [2494, 2509], [2511, 2523], [2530, 2533], [2546, 2547], - [2554, 2564], [2571, 2574], [2577, 2578], [2618, 2648], [2655, 2661], [2672, 2673], - [2677, 2692], [2746, 2748], [2750, 2767], [2769, 2783], [2786, 2789], [2800, 2820], - [2829, 2830], [2833, 2834], [2874, 2876], [2878, 2907], [2914, 2917], [2930, 2946], - [2955, 2957], [2966, 2968], [2976, 2978], [2981, 2983], [2987, 2989], [3002, 3023], - [3025, 3045], [3059, 3076], [3130, 3132], [3134, 3159], [3162, 3167], [3170, 3173], - [3184, 3191], [3199, 3204], [3258, 3260], [3262, 3293], [3298, 3301], [3312, 3332], - [3386, 3388], [3390, 3423], [3426, 3429], [3446, 3449], [3456, 3460], [3479, 3481], - [3518, 3519], [3527, 3584], [3636, 3647], [3655, 3663], [3674, 3712], [3717, 3718], - [3723, 3724], [3726, 3731], [3752, 3753], [3764, 3772], [3774, 3775], [3783, 3791], - [3802, 3803], [3806, 3839], [3841, 3871], [3892, 3903], [3949, 3975], [3980, 4095], - [4139, 4158], [4170, 4175], [4182, 4185], [4190, 4192], [4194, 4196], [4199, 4205], - [4209, 4212], [4226, 4237], [4250, 4255], [4294, 4303], [4349, 4351], [4686, 4687], - [4702, 4703], [4750, 4751], [4790, 4791], [4806, 4807], [4886, 4887], [4955, 4968], - [4989, 4991], [5008, 5023], [5109, 5120], [5741, 5742], [5787, 5791], [5867, 5869], - [5873, 5887], [5906, 5919], [5938, 5951], [5970, 5983], [6001, 6015], [6068, 6102], - [6104, 6107], [6109, 6111], [6122, 6127], [6138, 6159], [6170, 6175], [6264, 6271], - [6315, 6319], [6390, 6399], [6429, 6469], [6510, 6511], [6517, 6527], [6572, 6592], - [6600, 6607], [6619, 6655], [6679, 6687], [6741, 6783], [6794, 6799], [6810, 6822], - [6824, 6916], [6964, 6980], [6988, 6991], [7002, 7042], [7073, 7085], [7098, 7167], - [7204, 7231], [7242, 7244], [7294, 7400], [7410, 7423], [7616, 7679], [7958, 7959], - [7966, 7967], [8006, 8007], [8014, 8015], [8062, 8063], [8127, 8129], [8141, 8143], - [8148, 8149], [8156, 8159], [8173, 8177], [8189, 8303], [8306, 8307], [8314, 8318], - [8330, 8335], [8341, 8449], [8451, 8454], [8456, 8457], [8470, 8472], [8478, 8483], - [8506, 8507], [8512, 8516], [8522, 8525], [8586, 9311], [9372, 9449], [9472, 10101], - [10132, 11263], [11493, 11498], [11503, 11516], [11518, 11519], [11558, 11567], - [11622, 11630], [11632, 11647], [11671, 11679], [11743, 11822], [11824, 12292], - [12296, 12320], [12330, 12336], [12342, 12343], [12349, 12352], [12439, 12444], - [12544, 12548], [12590, 12592], [12687, 12689], [12694, 12703], [12728, 12783], - [12800, 12831], [12842, 12880], [12896, 12927], [12938, 12976], [12992, 13311], - [19894, 19967], [40908, 40959], [42125, 42191], [42238, 42239], [42509, 42511], - [42540, 42559], [42592, 42593], [42607, 42622], [42648, 42655], [42736, 42774], - [42784, 42785], [42889, 42890], [42893, 43002], [43043, 43055], [43062, 43071], - [43124, 43137], [43188, 43215], [43226, 43249], [43256, 43258], [43260, 43263], - [43302, 43311], [43335, 43359], [43389, 43395], [43443, 43470], [43482, 43519], - [43561, 43583], [43596, 43599], [43610, 43615], [43639, 43641], [43643, 43647], - [43698, 43700], [43703, 43704], [43710, 43711], [43715, 43738], [43742, 43967], - [44003, 44015], [44026, 44031], [55204, 55215], [55239, 55242], [55292, 55295], - [57344, 63743], [64046, 64047], [64110, 64111], [64218, 64255], [64263, 64274], - [64280, 64284], [64434, 64466], [64830, 64847], [64912, 64913], [64968, 65007], - [65020, 65135], [65277, 65295], [65306, 65312], [65339, 65344], [65371, 65381], - [65471, 65473], [65480, 65481], [65488, 65489], [65496, 65497]]; - for (i = 0; i < ranges.length; i++) { - start = ranges[i][0]; - end = ranges[i][1]; - for (j = start; j <= end; j++) { - result[j] = true; - } - } - return result; -})(); - -function splitQuery(query) { - var result = []; - var start = -1; - for (var i = 0; i < query.length; i++) { - if (splitChars[query.charCodeAt(i)]) { - if (start !== -1) { - result.push(query.slice(start, i)); - start = -1; - } - } else if (start === -1) { - start = i; - } - } - if (start !== -1) { - result.push(query.slice(start)); - } - return result; -} - - diff --git a/docs/html/_static/pygments.css b/docs/html/_static/pygments.css index 96529c7..c2e07c7 100644 --- a/docs/html/_static/pygments.css +++ b/docs/html/_static/pygments.css @@ -1,74 +1,258 @@ -pre { line-height: 125%; margin: 0; } -td.linenos pre { color: #000000; background-color: #f0f0f0; padding-left: 5px; padding-right: 5px; } -span.linenos { color: #000000; background-color: #f0f0f0; padding-left: 5px; padding-right: 5px; } -td.linenos pre.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } -span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +.highlight pre { line-height: 125%; } +.highlight td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +.highlight span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +.highlight td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +.highlight span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } .highlight .hll { background-color: #ffffcc } .highlight { background: #f8f8f8; } -.highlight .c { color: #408080; font-style: italic } /* Comment */ -.highlight .err { border: 1px solid #FF0000 } /* Error */ -.highlight .k { color: #008000; font-weight: bold } /* Keyword */ -.highlight .o { color: #666666 } /* Operator */ -.highlight .ch { color: #408080; font-style: italic } /* Comment.Hashbang */ -.highlight .cm { color: #408080; font-style: italic } /* Comment.Multiline */ -.highlight .cp { color: #BC7A00 } /* Comment.Preproc */ -.highlight .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */ -.highlight .c1 { color: #408080; font-style: italic } /* Comment.Single */ -.highlight .cs { color: #408080; font-style: italic } /* Comment.Special */ -.highlight .gd { color: #A00000 } /* Generic.Deleted */ -.highlight .ge { font-style: italic } /* Generic.Emph */ -.highlight .gr { color: #FF0000 } /* Generic.Error */ +.highlight .c { color: #8f5902; font-style: italic } /* Comment */ +.highlight .err { color: #a40000; border: 1px solid #ef2929 } /* Error */ +.highlight .g { color: #000000 } /* Generic */ +.highlight .k { color: #204a87; font-weight: bold } /* Keyword */ +.highlight .l { color: #000000 } /* Literal */ +.highlight .n { color: #000000 } /* Name */ +.highlight .o { color: #ce5c00; font-weight: bold } /* Operator */ +.highlight .x { color: #000000 } /* Other */ +.highlight .p { color: #000000; font-weight: bold } /* Punctuation */ +.highlight .ch { color: #8f5902; font-style: italic } /* Comment.Hashbang */ +.highlight .cm { color: #8f5902; font-style: italic } /* Comment.Multiline */ +.highlight .cp { color: #8f5902; font-style: italic } /* Comment.Preproc */ +.highlight .cpf { color: #8f5902; font-style: italic } /* Comment.PreprocFile */ +.highlight .c1 { color: #8f5902; font-style: italic } /* Comment.Single */ +.highlight .cs { color: #8f5902; font-style: italic } /* Comment.Special */ +.highlight .gd { color: #a40000 } /* Generic.Deleted */ +.highlight .ge { color: #000000; font-style: italic } /* Generic.Emph */ +.highlight .ges { color: #000000; font-weight: bold; font-style: italic } /* Generic.EmphStrong */ +.highlight .gr { color: #ef2929 } /* Generic.Error */ .highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */ .highlight .gi { color: #00A000 } /* Generic.Inserted */ -.highlight .go { color: #888888 } /* Generic.Output */ -.highlight .gp { color: #000080; font-weight: bold } /* Generic.Prompt */ -.highlight .gs { font-weight: bold } /* Generic.Strong */ +.highlight .go { color: #000000; font-style: italic } /* Generic.Output */ +.highlight .gp { color: #8f5902 } /* Generic.Prompt */ +.highlight .gs { color: #000000; font-weight: bold } /* Generic.Strong */ .highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */ -.highlight .gt { color: #0044DD } /* Generic.Traceback */ -.highlight .kc { color: #008000; font-weight: bold } /* Keyword.Constant */ -.highlight .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */ -.highlight .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */ -.highlight .kp { color: #008000 } /* Keyword.Pseudo */ -.highlight .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */ -.highlight .kt { color: #B00040 } /* Keyword.Type */ -.highlight .m { color: #666666 } /* Literal.Number */ -.highlight .s { color: #BA2121 } /* Literal.String */ -.highlight .na { color: #7D9029 } /* Name.Attribute */ -.highlight .nb { color: #008000 } /* Name.Builtin */ -.highlight .nc { color: #0000FF; font-weight: bold } /* Name.Class */ -.highlight .no { color: #880000 } /* Name.Constant */ -.highlight .nd { color: #AA22FF } /* Name.Decorator */ -.highlight .ni { color: #999999; font-weight: bold } /* Name.Entity */ -.highlight .ne { color: #D2413A; font-weight: bold } /* Name.Exception */ -.highlight .nf { color: #0000FF } /* Name.Function */ -.highlight .nl { color: #A0A000 } /* Name.Label */ -.highlight .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */ -.highlight .nt { color: #008000; font-weight: bold } /* Name.Tag */ -.highlight .nv { color: #19177C } /* Name.Variable */ -.highlight .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */ -.highlight .w { color: #bbbbbb } /* Text.Whitespace */ -.highlight .mb { color: #666666 } /* Literal.Number.Bin */ -.highlight .mf { color: #666666 } /* Literal.Number.Float */ -.highlight .mh { color: #666666 } /* Literal.Number.Hex */ -.highlight .mi { color: #666666 } /* Literal.Number.Integer */ -.highlight .mo { color: #666666 } /* Literal.Number.Oct */ -.highlight .sa { color: #BA2121 } /* Literal.String.Affix */ -.highlight .sb { color: #BA2121 } /* Literal.String.Backtick */ -.highlight .sc { color: #BA2121 } /* Literal.String.Char */ -.highlight .dl { color: #BA2121 } /* Literal.String.Delimiter */ -.highlight .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */ -.highlight .s2 { color: #BA2121 } /* Literal.String.Double */ -.highlight .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */ -.highlight .sh { color: #BA2121 } /* Literal.String.Heredoc */ -.highlight .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */ -.highlight .sx { color: #008000 } /* Literal.String.Other */ -.highlight .sr { color: #BB6688 } /* Literal.String.Regex */ -.highlight .s1 { color: #BA2121 } /* Literal.String.Single */ -.highlight .ss { color: #19177C } /* Literal.String.Symbol */ -.highlight .bp { color: #008000 } /* Name.Builtin.Pseudo */ -.highlight .fm { color: #0000FF } /* Name.Function.Magic */ -.highlight .vc { color: #19177C } /* Name.Variable.Class */ -.highlight .vg { color: #19177C } /* Name.Variable.Global */ -.highlight .vi { color: #19177C } /* Name.Variable.Instance */ -.highlight .vm { color: #19177C } /* Name.Variable.Magic */ -.highlight .il { color: #666666 } /* Literal.Number.Integer.Long */ \ No newline at end of file +.highlight .gt { color: #a40000; font-weight: bold } /* Generic.Traceback */ +.highlight .kc { color: #204a87; font-weight: bold } /* Keyword.Constant */ +.highlight .kd { color: #204a87; font-weight: bold } /* Keyword.Declaration */ +.highlight .kn { color: #204a87; font-weight: bold } /* Keyword.Namespace */ +.highlight .kp { color: #204a87; font-weight: bold } /* Keyword.Pseudo */ +.highlight .kr { color: #204a87; font-weight: bold } /* Keyword.Reserved */ +.highlight .kt { color: #204a87; font-weight: bold } /* Keyword.Type */ +.highlight .ld { color: #000000 } /* Literal.Date */ +.highlight .m { color: #0000cf; font-weight: bold } /* Literal.Number */ +.highlight .s { color: #4e9a06 } /* Literal.String */ +.highlight .na { color: #c4a000 } /* Name.Attribute */ +.highlight .nb { color: #204a87 } /* Name.Builtin */ +.highlight .nc { color: #000000 } /* Name.Class */ +.highlight .no { color: #000000 } /* Name.Constant */ +.highlight .nd { color: #5c35cc; font-weight: bold } /* Name.Decorator */ +.highlight .ni { color: #ce5c00 } /* Name.Entity */ +.highlight .ne { color: #cc0000; font-weight: bold } /* Name.Exception */ +.highlight .nf { color: #000000 } /* Name.Function */ +.highlight .nl { color: #f57900 } /* Name.Label */ +.highlight .nn { color: #000000 } /* Name.Namespace */ +.highlight .nx { color: #000000 } /* Name.Other */ +.highlight .py { color: #000000 } /* Name.Property */ +.highlight .nt { color: #204a87; font-weight: bold } /* Name.Tag */ +.highlight .nv { color: #000000 } /* Name.Variable */ +.highlight .ow { color: #204a87; font-weight: bold } /* Operator.Word */ +.highlight .pm { color: #000000; font-weight: bold } /* Punctuation.Marker */ +.highlight .w { color: #f8f8f8 } /* Text.Whitespace */ +.highlight .mb { color: #0000cf; font-weight: bold } /* Literal.Number.Bin */ +.highlight .mf { color: #0000cf; font-weight: bold } /* Literal.Number.Float */ +.highlight .mh { color: #0000cf; font-weight: bold } /* Literal.Number.Hex */ +.highlight .mi { color: #0000cf; font-weight: bold } /* Literal.Number.Integer */ +.highlight .mo { color: #0000cf; font-weight: bold } /* Literal.Number.Oct */ +.highlight .sa { color: #4e9a06 } /* Literal.String.Affix */ +.highlight .sb { color: #4e9a06 } /* Literal.String.Backtick */ +.highlight .sc { color: #4e9a06 } /* Literal.String.Char */ +.highlight .dl { color: #4e9a06 } /* Literal.String.Delimiter */ +.highlight .sd { color: #8f5902; font-style: italic } /* Literal.String.Doc */ +.highlight .s2 { color: #4e9a06 } /* Literal.String.Double */ +.highlight .se { color: #4e9a06 } /* Literal.String.Escape */ +.highlight .sh { color: #4e9a06 } /* Literal.String.Heredoc */ +.highlight .si { color: #4e9a06 } /* Literal.String.Interpol */ +.highlight .sx { color: #4e9a06 } /* Literal.String.Other */ +.highlight .sr { color: #4e9a06 } /* Literal.String.Regex */ +.highlight .s1 { color: #4e9a06 } /* Literal.String.Single */ +.highlight .ss { color: #4e9a06 } /* Literal.String.Symbol */ +.highlight .bp { color: #3465a4 } /* Name.Builtin.Pseudo */ +.highlight .fm { color: #000000 } /* Name.Function.Magic */ +.highlight .vc { color: #000000 } /* Name.Variable.Class */ +.highlight .vg { color: #000000 } /* Name.Variable.Global */ +.highlight .vi { color: #000000 } /* Name.Variable.Instance */ +.highlight .vm { color: #000000 } /* Name.Variable.Magic */ +.highlight .il { color: #0000cf; font-weight: bold } /* Literal.Number.Integer.Long */ +@media not print { +body[data-theme="dark"] .highlight pre { line-height: 125%; } +body[data-theme="dark"] .highlight td.linenos .normal { color: #aaaaaa; background-color: transparent; padding-left: 5px; padding-right: 5px; } +body[data-theme="dark"] .highlight span.linenos { color: #aaaaaa; background-color: transparent; padding-left: 5px; padding-right: 5px; } +body[data-theme="dark"] .highlight td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +body[data-theme="dark"] .highlight span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +body[data-theme="dark"] .highlight .hll { background-color: #404040 } +body[data-theme="dark"] .highlight { background: #202020; color: #d0d0d0 } +body[data-theme="dark"] .highlight .c { color: #ababab; font-style: italic } /* Comment */ +body[data-theme="dark"] .highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */ +body[data-theme="dark"] .highlight .esc { color: #d0d0d0 } /* Escape */ +body[data-theme="dark"] .highlight .g { color: #d0d0d0 } /* Generic */ +body[data-theme="dark"] .highlight .k { color: #6ebf26; font-weight: bold } /* Keyword */ +body[data-theme="dark"] .highlight .l { color: #d0d0d0 } /* Literal */ +body[data-theme="dark"] .highlight .n { color: #d0d0d0 } /* Name */ +body[data-theme="dark"] .highlight .o { color: #d0d0d0 } /* Operator */ +body[data-theme="dark"] .highlight .x { color: #d0d0d0 } /* Other */ +body[data-theme="dark"] .highlight .p { color: #d0d0d0 } /* Punctuation */ +body[data-theme="dark"] .highlight .ch { color: #ababab; font-style: italic } /* Comment.Hashbang */ +body[data-theme="dark"] .highlight .cm { color: #ababab; font-style: italic } /* Comment.Multiline */ +body[data-theme="dark"] .highlight .cp { color: #ff3a3a; font-weight: bold } /* Comment.Preproc */ +body[data-theme="dark"] .highlight .cpf { color: #ababab; font-style: italic } /* Comment.PreprocFile */ +body[data-theme="dark"] .highlight .c1 { color: #ababab; font-style: italic } /* Comment.Single */ +body[data-theme="dark"] .highlight .cs { color: #e50808; font-weight: bold; background-color: #520000 } /* Comment.Special */ +body[data-theme="dark"] .highlight .gd { color: #d22323 } /* Generic.Deleted */ +body[data-theme="dark"] .highlight .ge { color: #d0d0d0; font-style: italic } /* Generic.Emph */ +body[data-theme="dark"] .highlight .ges { color: #d0d0d0; font-weight: bold; font-style: italic } /* Generic.EmphStrong */ +body[data-theme="dark"] .highlight .gr { color: #d22323 } /* Generic.Error */ +body[data-theme="dark"] .highlight .gh { color: #ffffff; font-weight: bold } /* Generic.Heading */ +body[data-theme="dark"] .highlight .gi { color: #589819 } /* Generic.Inserted */ +body[data-theme="dark"] .highlight .go { color: #cccccc } /* Generic.Output */ +body[data-theme="dark"] .highlight .gp { color: #aaaaaa } /* Generic.Prompt */ +body[data-theme="dark"] .highlight .gs { color: #d0d0d0; font-weight: bold } /* Generic.Strong */ +body[data-theme="dark"] .highlight .gu { color: #ffffff; text-decoration: underline } /* Generic.Subheading */ +body[data-theme="dark"] .highlight .gt { color: #d22323 } /* Generic.Traceback */ +body[data-theme="dark"] .highlight .kc { color: #6ebf26; font-weight: bold } /* Keyword.Constant */ +body[data-theme="dark"] .highlight .kd { color: #6ebf26; font-weight: bold } /* Keyword.Declaration */ +body[data-theme="dark"] .highlight .kn { color: #6ebf26; font-weight: bold } /* Keyword.Namespace */ +body[data-theme="dark"] .highlight .kp { color: #6ebf26 } /* Keyword.Pseudo */ +body[data-theme="dark"] .highlight .kr { color: #6ebf26; font-weight: bold } /* Keyword.Reserved */ +body[data-theme="dark"] .highlight .kt { color: #6ebf26; font-weight: bold } /* Keyword.Type */ +body[data-theme="dark"] .highlight .ld { color: #d0d0d0 } /* Literal.Date */ +body[data-theme="dark"] .highlight .m { color: #51b2fd } /* Literal.Number */ +body[data-theme="dark"] .highlight .s { color: #ed9d13 } /* Literal.String */ +body[data-theme="dark"] .highlight .na { color: #bbbbbb } /* Name.Attribute */ +body[data-theme="dark"] .highlight .nb { color: #2fbccd } /* Name.Builtin */ +body[data-theme="dark"] .highlight .nc { color: #71adff; text-decoration: underline } /* Name.Class */ +body[data-theme="dark"] .highlight .no { color: #40ffff } /* Name.Constant */ +body[data-theme="dark"] .highlight .nd { color: #ffa500 } /* Name.Decorator */ +body[data-theme="dark"] .highlight .ni { color: #d0d0d0 } /* Name.Entity */ +body[data-theme="dark"] .highlight .ne { color: #bbbbbb } /* Name.Exception */ +body[data-theme="dark"] .highlight .nf { color: #71adff } /* Name.Function */ +body[data-theme="dark"] .highlight .nl { color: #d0d0d0 } /* Name.Label */ +body[data-theme="dark"] .highlight .nn { color: #71adff; text-decoration: underline } /* Name.Namespace */ +body[data-theme="dark"] .highlight .nx { color: #d0d0d0 } /* Name.Other */ +body[data-theme="dark"] .highlight .py { color: #d0d0d0 } /* Name.Property */ +body[data-theme="dark"] .highlight .nt { color: #6ebf26; font-weight: bold } /* Name.Tag */ +body[data-theme="dark"] .highlight .nv { color: #40ffff } /* Name.Variable */ +body[data-theme="dark"] .highlight .ow { color: #6ebf26; font-weight: bold } /* Operator.Word */ +body[data-theme="dark"] .highlight .pm { color: #d0d0d0 } /* Punctuation.Marker */ +body[data-theme="dark"] .highlight .w { color: #666666 } /* Text.Whitespace */ +body[data-theme="dark"] .highlight .mb { color: #51b2fd } /* Literal.Number.Bin */ +body[data-theme="dark"] .highlight .mf { color: #51b2fd } /* Literal.Number.Float */ +body[data-theme="dark"] .highlight .mh { color: #51b2fd } /* Literal.Number.Hex */ +body[data-theme="dark"] .highlight .mi { color: #51b2fd } /* Literal.Number.Integer */ +body[data-theme="dark"] .highlight .mo { color: #51b2fd } /* Literal.Number.Oct */ +body[data-theme="dark"] .highlight .sa { color: #ed9d13 } /* Literal.String.Affix */ +body[data-theme="dark"] .highlight .sb { color: #ed9d13 } /* Literal.String.Backtick */ +body[data-theme="dark"] .highlight .sc { color: #ed9d13 } /* Literal.String.Char */ +body[data-theme="dark"] .highlight .dl { color: #ed9d13 } /* Literal.String.Delimiter */ +body[data-theme="dark"] .highlight .sd { color: #ed9d13 } /* Literal.String.Doc */ +body[data-theme="dark"] .highlight .s2 { color: #ed9d13 } /* Literal.String.Double */ +body[data-theme="dark"] .highlight .se { color: #ed9d13 } /* Literal.String.Escape */ +body[data-theme="dark"] .highlight .sh { color: #ed9d13 } /* Literal.String.Heredoc */ +body[data-theme="dark"] .highlight .si { color: #ed9d13 } /* Literal.String.Interpol */ +body[data-theme="dark"] .highlight .sx { color: #ffa500 } /* Literal.String.Other */ +body[data-theme="dark"] .highlight .sr { color: #ed9d13 } /* Literal.String.Regex */ +body[data-theme="dark"] .highlight .s1 { color: #ed9d13 } /* Literal.String.Single */ +body[data-theme="dark"] .highlight .ss { color: #ed9d13 } /* Literal.String.Symbol */ +body[data-theme="dark"] .highlight .bp { color: #2fbccd } /* Name.Builtin.Pseudo */ +body[data-theme="dark"] .highlight .fm { color: #71adff } /* Name.Function.Magic */ +body[data-theme="dark"] .highlight .vc { color: #40ffff } /* Name.Variable.Class */ +body[data-theme="dark"] .highlight .vg { color: #40ffff } /* Name.Variable.Global */ +body[data-theme="dark"] .highlight .vi { color: #40ffff } /* Name.Variable.Instance */ +body[data-theme="dark"] .highlight .vm { color: #40ffff } /* Name.Variable.Magic */ +body[data-theme="dark"] .highlight .il { color: #51b2fd } /* Literal.Number.Integer.Long */ +@media (prefers-color-scheme: dark) { +body:not([data-theme="light"]) .highlight pre { line-height: 125%; } +body:not([data-theme="light"]) .highlight td.linenos .normal { color: #aaaaaa; background-color: transparent; padding-left: 5px; padding-right: 5px; } +body:not([data-theme="light"]) .highlight span.linenos { color: #aaaaaa; background-color: transparent; padding-left: 5px; padding-right: 5px; } +body:not([data-theme="light"]) .highlight td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +body:not([data-theme="light"]) .highlight span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +body:not([data-theme="light"]) .highlight .hll { background-color: #404040 } +body:not([data-theme="light"]) .highlight { background: #202020; color: #d0d0d0 } +body:not([data-theme="light"]) .highlight .c { color: #ababab; font-style: italic } /* Comment */ +body:not([data-theme="light"]) .highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */ +body:not([data-theme="light"]) .highlight .esc { color: #d0d0d0 } /* Escape */ +body:not([data-theme="light"]) .highlight .g { color: #d0d0d0 } /* Generic */ +body:not([data-theme="light"]) .highlight .k { color: #6ebf26; font-weight: bold } /* Keyword */ +body:not([data-theme="light"]) .highlight .l { color: #d0d0d0 } /* Literal */ +body:not([data-theme="light"]) .highlight .n { color: #d0d0d0 } /* Name */ +body:not([data-theme="light"]) .highlight .o { color: #d0d0d0 } /* Operator */ +body:not([data-theme="light"]) .highlight .x { color: #d0d0d0 } /* Other */ +body:not([data-theme="light"]) .highlight .p { color: #d0d0d0 } /* Punctuation */ +body:not([data-theme="light"]) .highlight .ch { color: #ababab; font-style: italic } /* Comment.Hashbang */ +body:not([data-theme="light"]) .highlight .cm { color: #ababab; font-style: italic } /* Comment.Multiline */ +body:not([data-theme="light"]) .highlight .cp { color: #ff3a3a; font-weight: bold } /* Comment.Preproc */ +body:not([data-theme="light"]) .highlight .cpf { color: #ababab; font-style: italic } /* Comment.PreprocFile */ +body:not([data-theme="light"]) .highlight .c1 { color: #ababab; font-style: italic } /* Comment.Single */ +body:not([data-theme="light"]) .highlight .cs { color: #e50808; font-weight: bold; background-color: #520000 } /* Comment.Special */ +body:not([data-theme="light"]) .highlight .gd { color: #d22323 } /* Generic.Deleted */ +body:not([data-theme="light"]) .highlight .ge { color: #d0d0d0; font-style: italic } /* Generic.Emph */ +body:not([data-theme="light"]) .highlight .ges { color: #d0d0d0; font-weight: bold; font-style: italic } /* Generic.EmphStrong */ +body:not([data-theme="light"]) .highlight .gr { color: #d22323 } /* Generic.Error */ +body:not([data-theme="light"]) .highlight .gh { color: #ffffff; font-weight: bold } /* Generic.Heading */ +body:not([data-theme="light"]) .highlight .gi { color: #589819 } /* Generic.Inserted */ +body:not([data-theme="light"]) .highlight .go { color: #cccccc } /* Generic.Output */ +body:not([data-theme="light"]) .highlight .gp { color: #aaaaaa } /* Generic.Prompt */ +body:not([data-theme="light"]) .highlight .gs { color: #d0d0d0; font-weight: bold } /* Generic.Strong */ +body:not([data-theme="light"]) .highlight .gu { color: #ffffff; text-decoration: underline } /* Generic.Subheading */ +body:not([data-theme="light"]) .highlight .gt { color: #d22323 } /* Generic.Traceback */ +body:not([data-theme="light"]) .highlight .kc { color: #6ebf26; font-weight: bold } /* Keyword.Constant */ +body:not([data-theme="light"]) .highlight .kd { color: #6ebf26; font-weight: bold } /* Keyword.Declaration */ +body:not([data-theme="light"]) .highlight .kn { color: #6ebf26; font-weight: bold } /* Keyword.Namespace */ +body:not([data-theme="light"]) .highlight .kp { color: #6ebf26 } /* Keyword.Pseudo */ +body:not([data-theme="light"]) .highlight .kr { color: #6ebf26; font-weight: bold } /* Keyword.Reserved */ +body:not([data-theme="light"]) .highlight .kt { color: #6ebf26; font-weight: bold } /* Keyword.Type */ +body:not([data-theme="light"]) .highlight .ld { color: #d0d0d0 } /* Literal.Date */ +body:not([data-theme="light"]) .highlight .m { color: #51b2fd } /* Literal.Number */ +body:not([data-theme="light"]) .highlight .s { color: #ed9d13 } /* Literal.String */ +body:not([data-theme="light"]) .highlight .na { color: #bbbbbb } /* Name.Attribute */ +body:not([data-theme="light"]) .highlight .nb { color: #2fbccd } /* Name.Builtin */ +body:not([data-theme="light"]) .highlight .nc { color: #71adff; text-decoration: underline } /* Name.Class */ +body:not([data-theme="light"]) .highlight .no { color: #40ffff } /* Name.Constant */ +body:not([data-theme="light"]) .highlight .nd { color: #ffa500 } /* Name.Decorator */ +body:not([data-theme="light"]) .highlight .ni { color: #d0d0d0 } /* Name.Entity */ +body:not([data-theme="light"]) .highlight .ne { color: #bbbbbb } /* Name.Exception */ +body:not([data-theme="light"]) .highlight .nf { color: #71adff } /* Name.Function */ +body:not([data-theme="light"]) .highlight .nl { color: #d0d0d0 } /* Name.Label */ +body:not([data-theme="light"]) .highlight .nn { color: #71adff; text-decoration: underline } /* Name.Namespace */ +body:not([data-theme="light"]) .highlight .nx { color: #d0d0d0 } /* Name.Other */ +body:not([data-theme="light"]) .highlight .py { color: #d0d0d0 } /* Name.Property */ +body:not([data-theme="light"]) .highlight .nt { color: #6ebf26; font-weight: bold } /* Name.Tag */ +body:not([data-theme="light"]) .highlight .nv { color: #40ffff } /* Name.Variable */ +body:not([data-theme="light"]) .highlight .ow { color: #6ebf26; font-weight: bold } /* Operator.Word */ +body:not([data-theme="light"]) .highlight .pm { color: #d0d0d0 } /* Punctuation.Marker */ +body:not([data-theme="light"]) .highlight .w { color: #666666 } /* Text.Whitespace */ +body:not([data-theme="light"]) .highlight .mb { color: #51b2fd } /* Literal.Number.Bin */ +body:not([data-theme="light"]) .highlight .mf { color: #51b2fd } /* Literal.Number.Float */ +body:not([data-theme="light"]) .highlight .mh { color: #51b2fd } /* Literal.Number.Hex */ +body:not([data-theme="light"]) .highlight .mi { color: #51b2fd } /* Literal.Number.Integer */ +body:not([data-theme="light"]) .highlight .mo { color: #51b2fd } /* Literal.Number.Oct */ +body:not([data-theme="light"]) .highlight .sa { color: #ed9d13 } /* Literal.String.Affix */ +body:not([data-theme="light"]) .highlight .sb { color: #ed9d13 } /* Literal.String.Backtick */ +body:not([data-theme="light"]) .highlight .sc { color: #ed9d13 } /* Literal.String.Char */ +body:not([data-theme="light"]) .highlight .dl { color: #ed9d13 } /* Literal.String.Delimiter */ +body:not([data-theme="light"]) .highlight .sd { color: #ed9d13 } /* Literal.String.Doc */ +body:not([data-theme="light"]) .highlight .s2 { color: #ed9d13 } /* Literal.String.Double */ +body:not([data-theme="light"]) .highlight .se { color: #ed9d13 } /* Literal.String.Escape */ +body:not([data-theme="light"]) .highlight .sh { color: #ed9d13 } /* Literal.String.Heredoc */ +body:not([data-theme="light"]) .highlight .si { color: #ed9d13 } /* Literal.String.Interpol */ +body:not([data-theme="light"]) .highlight .sx { color: #ffa500 } /* Literal.String.Other */ +body:not([data-theme="light"]) .highlight .sr { color: #ed9d13 } /* Literal.String.Regex */ +body:not([data-theme="light"]) .highlight .s1 { color: #ed9d13 } /* Literal.String.Single */ +body:not([data-theme="light"]) .highlight .ss { color: #ed9d13 } /* Literal.String.Symbol */ +body:not([data-theme="light"]) .highlight .bp { color: #2fbccd } /* Name.Builtin.Pseudo */ +body:not([data-theme="light"]) .highlight .fm { color: #71adff } /* Name.Function.Magic */ +body:not([data-theme="light"]) .highlight .vc { color: #40ffff } /* Name.Variable.Class */ +body:not([data-theme="light"]) .highlight .vg { color: #40ffff } /* Name.Variable.Global */ +body:not([data-theme="light"]) .highlight .vi { color: #40ffff } /* Name.Variable.Instance */ +body:not([data-theme="light"]) .highlight .vm { color: #40ffff } /* Name.Variable.Magic */ +body:not([data-theme="light"]) .highlight .il { color: #51b2fd } /* Literal.Number.Integer.Long */ +} +} \ No newline at end of file diff --git a/docs/html/_static/scripts/furo-extensions.js b/docs/html/_static/scripts/furo-extensions.js new file mode 100644 index 0000000..e69de29 diff --git a/docs/html/_static/scripts/furo.js b/docs/html/_static/scripts/furo.js new file mode 100644 index 0000000..cbf6487 --- /dev/null +++ b/docs/html/_static/scripts/furo.js @@ -0,0 +1,3 @@ +/*! For license information please see furo.js.LICENSE.txt */ +(()=>{var t={212:function(t,e,n){var o,r;r=void 0!==n.g?n.g:"undefined"!=typeof window?window:this,o=function(){return function(t){"use strict";var e={navClass:"active",contentClass:"active",nested:!1,nestedClass:"active",offset:0,reflow:!1,events:!0},n=function(t,e,n){if(n.settings.events){var o=new CustomEvent(t,{bubbles:!0,cancelable:!0,detail:n});e.dispatchEvent(o)}},o=function(t){var e=0;if(t.offsetParent)for(;t;)e+=t.offsetTop,t=t.offsetParent;return e>=0?e:0},r=function(t){t&&t.sort((function(t,e){return o(t.content)=Math.max(document.body.scrollHeight,document.documentElement.scrollHeight,document.body.offsetHeight,document.documentElement.offsetHeight,document.body.clientHeight,document.documentElement.clientHeight)},l=function(t,e){var n=t[t.length-1];if(function(t,e){return!(!s()||!c(t.content,e,!0))}(n,e))return n;for(var o=t.length-1;o>=0;o--)if(c(t[o].content,e))return t[o]},a=function(t,e){if(e.nested&&t.parentNode){var n=t.parentNode.closest("li");n&&(n.classList.remove(e.nestedClass),a(n,e))}},i=function(t,e){if(t){var o=t.nav.closest("li");o&&(o.classList.remove(e.navClass),t.content.classList.remove(e.contentClass),a(o,e),n("gumshoeDeactivate",o,{link:t.nav,content:t.content,settings:e}))}},u=function(t,e){if(e.nested){var n=t.parentNode.closest("li");n&&(n.classList.add(e.nestedClass),u(n,e))}};return function(o,c){var s,a,d,f,m,v={setup:function(){s=document.querySelectorAll(o),a=[],Array.prototype.forEach.call(s,(function(t){var e=document.getElementById(decodeURIComponent(t.hash.substr(1)));e&&a.push({nav:t,content:e})})),r(a)},detect:function(){var t=l(a,m);t?d&&t.content===d.content||(i(d,m),function(t,e){if(t){var o=t.nav.closest("li");o&&(o.classList.add(e.navClass),t.content.classList.add(e.contentClass),u(o,e),n("gumshoeActivate",o,{link:t.nav,content:t.content,settings:e}))}}(t,m),d=t):d&&(i(d,m),d=null)}},h=function(e){f&&t.cancelAnimationFrame(f),f=t.requestAnimationFrame(v.detect)},g=function(e){f&&t.cancelAnimationFrame(f),f=t.requestAnimationFrame((function(){r(a),v.detect()}))};return v.destroy=function(){d&&i(d,m),t.removeEventListener("scroll",h,!1),m.reflow&&t.removeEventListener("resize",g,!1),a=null,s=null,d=null,f=null,m=null},m=function(){var t={};return Array.prototype.forEach.call(arguments,(function(e){for(var n in e){if(!e.hasOwnProperty(n))return;t[n]=e[n]}})),t}(e,c||{}),v.setup(),v.detect(),t.addEventListener("scroll",h,!1),m.reflow&&t.addEventListener("resize",g,!1),v}}(r)}.apply(e,[]),void 0===o||(t.exports=o)}},e={};function n(o){var r=e[o];if(void 0!==r)return r.exports;var c=e[o]={exports:{}};return t[o].call(c.exports,c,c.exports,n),c.exports}n.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var o in e)n.o(e,o)&&!n.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:e[o]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),(()=>{"use strict";var t=n(212),e=n.n(t),o=null,r=null,c=window.pageYOffset||document.documentElement.scrollTop;function s(){const t=localStorage.getItem("theme")||"auto";var e;"light"!==(e=window.matchMedia("(prefers-color-scheme: dark)").matches?"auto"===t?"light":"light"==t?"dark":"auto":"auto"===t?"dark":"dark"==t?"light":"auto")&&"dark"!==e&&"auto"!==e&&(console.error(`Got invalid theme mode: ${e}. Resetting to auto.`),e="auto"),document.body.dataset.theme=e,localStorage.setItem("theme",e),console.log(`Changed to ${e} mode.`)}function l(){!function(){const t=document.getElementsByClassName("theme-toggle");Array.from(t).forEach((t=>{t.addEventListener("click",s)}))}(),function(){let t=0,e=!1;window.addEventListener("scroll",(function(n){t=window.scrollY,e||(window.requestAnimationFrame((function(){var n;n=t,0==Math.floor(r.getBoundingClientRect().top)?r.classList.add("scrolled"):r.classList.remove("scrolled"),function(t){t<64?document.documentElement.classList.remove("show-back-to-top"):tc&&document.documentElement.classList.remove("show-back-to-top"),c=t}(n),function(t){null!==o&&(0==t?o.scrollTo(0,0):Math.ceil(t)>=Math.floor(document.documentElement.scrollHeight-window.innerHeight)?o.scrollTo(0,o.scrollHeight):document.querySelector(".scroll-current"))}(n),e=!1})),e=!0)})),window.scroll()}(),null!==o&&new(e())(".toc-tree a",{reflow:!0,recursive:!0,navClass:"scroll-current",offset:()=>{let t=parseFloat(getComputedStyle(document.documentElement).fontSize);return r.getBoundingClientRect().height+.5*t+1}})}document.addEventListener("DOMContentLoaded",(function(){document.body.parentNode.classList.remove("no-js"),r=document.querySelector("header"),o=document.querySelector(".toc-scroll"),l()}))})()})(); +//# sourceMappingURL=furo.js.map \ No newline at end of file diff --git a/docs/html/_static/scripts/furo.js.LICENSE.txt b/docs/html/_static/scripts/furo.js.LICENSE.txt new file mode 100644 index 0000000..1632189 --- /dev/null +++ b/docs/html/_static/scripts/furo.js.LICENSE.txt @@ -0,0 +1,7 @@ +/*! + * gumshoejs v5.1.2 (patched by @pradyunsg) + * A simple, framework-agnostic scrollspy script. + * (c) 2019 Chris Ferdinandi + * MIT License + * http://github.com/cferdinandi/gumshoe + */ diff --git a/docs/html/_static/scripts/furo.js.map b/docs/html/_static/scripts/furo.js.map new file mode 100644 index 0000000..7ed2be8 --- /dev/null +++ b/docs/html/_static/scripts/furo.js.map @@ -0,0 +1 @@ +{"version":3,"file":"scripts/furo.js","mappings":";iCAAA,MAQWA,SAWS,IAAX,EAAAC,EACH,EAAAA,EACkB,oBAAXC,OACPA,OACAC,KAbS,EAAF,WACP,OAaJ,SAAUD,GACR,aAMA,IAAIE,EAAW,CAEbC,SAAU,SACVC,aAAc,SAGdC,QAAQ,EACRC,YAAa,SAGbC,OAAQ,EACRC,QAAQ,EAGRC,QAAQ,GA6BNC,EAAY,SAAUC,EAAMC,EAAMC,GAEpC,GAAKA,EAAOC,SAASL,OAArB,CAGA,IAAIM,EAAQ,IAAIC,YAAYL,EAAM,CAChCM,SAAS,EACTC,YAAY,EACZL,OAAQA,IAIVD,EAAKO,cAAcJ,KAQjBK,EAAe,SAAUR,GAC3B,IAAIS,EAAW,EACf,GAAIT,EAAKU,aACP,KAAOV,GACLS,GAAYT,EAAKW,UACjBX,EAAOA,EAAKU,aAGhB,OAAOD,GAAY,EAAIA,EAAW,GAOhCG,EAAe,SAAUC,GACvBA,GACFA,EAASC,MAAK,SAAUC,EAAOC,GAG7B,OAFcR,EAAaO,EAAME,SACnBT,EAAaQ,EAAMC,UACF,EACxB,MA2CTC,EAAW,SAAUlB,EAAME,EAAUiB,GACvC,IAAIC,EAASpB,EAAKqB,wBACd1B,EAnCU,SAAUO,GAExB,MAA+B,mBAApBA,EAASP,OACX2B,WAAWpB,EAASP,UAItB2B,WAAWpB,EAASP,QA4Bd4B,CAAUrB,GACvB,OAAIiB,EAEAK,SAASJ,EAAOD,OAAQ,KACvB/B,EAAOqC,aAAeC,SAASC,gBAAgBC,cAG7CJ,SAASJ,EAAOS,IAAK,KAAOlC,GAOjCmC,EAAa,WACf,OACEC,KAAKC,KAAK5C,EAAOqC,YAAcrC,EAAO6C,cAnCjCF,KAAKG,IACVR,SAASS,KAAKC,aACdV,SAASC,gBAAgBS,aACzBV,SAASS,KAAKE,aACdX,SAASC,gBAAgBU,aACzBX,SAASS,KAAKP,aACdF,SAASC,gBAAgBC,eAqDzBU,EAAY,SAAUzB,EAAUX,GAClC,IAAIqC,EAAO1B,EAASA,EAAS2B,OAAS,GACtC,GAbgB,SAAUC,EAAMvC,GAChC,SAAI4B,MAAgBZ,EAASuB,EAAKxB,QAASf,GAAU,IAYjDwC,CAAYH,EAAMrC,GAAW,OAAOqC,EACxC,IAAK,IAAII,EAAI9B,EAAS2B,OAAS,EAAGG,GAAK,EAAGA,IACxC,GAAIzB,EAASL,EAAS8B,GAAG1B,QAASf,GAAW,OAAOW,EAAS8B,IAS7DC,EAAmB,SAAUC,EAAK3C,GAEpC,GAAKA,EAAST,QAAWoD,EAAIC,WAA7B,CAGA,IAAIC,EAAKF,EAAIC,WAAWE,QAAQ,MAC3BD,IAGLA,EAAGE,UAAUC,OAAOhD,EAASR,aAG7BkD,EAAiBG,EAAI7C,MAQnBiD,EAAa,SAAUC,EAAOlD,GAEhC,GAAKkD,EAAL,CAGA,IAAIL,EAAKK,EAAMP,IAAIG,QAAQ,MACtBD,IAGLA,EAAGE,UAAUC,OAAOhD,EAASX,UAC7B6D,EAAMnC,QAAQgC,UAAUC,OAAOhD,EAASV,cAGxCoD,EAAiBG,EAAI7C,GAGrBJ,EAAU,oBAAqBiD,EAAI,CACjCM,KAAMD,EAAMP,IACZ5B,QAASmC,EAAMnC,QACff,SAAUA,OASVoD,EAAiB,SAAUT,EAAK3C,GAElC,GAAKA,EAAST,OAAd,CAGA,IAAIsD,EAAKF,EAAIC,WAAWE,QAAQ,MAC3BD,IAGLA,EAAGE,UAAUM,IAAIrD,EAASR,aAG1B4D,EAAeP,EAAI7C,MA8LrB,OA1JkB,SAAUsD,EAAUC,GAKpC,IACIC,EAAU7C,EAAU8C,EAASC,EAAS1D,EADtC2D,EAAa,CAUjBA,MAAmB,WAEjBH,EAAWhC,SAASoC,iBAAiBN,GAGrC3C,EAAW,GAGXkD,MAAMC,UAAUC,QAAQC,KAAKR,GAAU,SAAUjB,GAE/C,IAAIxB,EAAUS,SAASyC,eACrBC,mBAAmB3B,EAAK4B,KAAKC,OAAO,KAEjCrD,GAGLJ,EAAS0D,KAAK,CACZ1B,IAAKJ,EACLxB,QAASA,OAKbL,EAAaC,IAMfgD,OAAoB,WAElB,IAAIW,EAASlC,EAAUzB,EAAUX,GAG5BsE,EASDb,GAAWa,EAAOvD,UAAY0C,EAAQ1C,UAG1CkC,EAAWQ,EAASzD,GAzFT,SAAUkD,EAAOlD,GAE9B,GAAKkD,EAAL,CAGA,IAAIL,EAAKK,EAAMP,IAAIG,QAAQ,MACtBD,IAGLA,EAAGE,UAAUM,IAAIrD,EAASX,UAC1B6D,EAAMnC,QAAQgC,UAAUM,IAAIrD,EAASV,cAGrC8D,EAAeP,EAAI7C,GAGnBJ,EAAU,kBAAmBiD,EAAI,CAC/BM,KAAMD,EAAMP,IACZ5B,QAASmC,EAAMnC,QACff,SAAUA,MAuEVuE,CAASD,EAAQtE,GAGjByD,EAAUa,GAfJb,IACFR,EAAWQ,EAASzD,GACpByD,EAAU,QAoBZe,EAAgB,SAAUvE,GAExByD,GACFxE,EAAOuF,qBAAqBf,GAI9BA,EAAUxE,EAAOwF,sBAAsBf,EAAWgB,SAOhDC,EAAgB,SAAU3E,GAExByD,GACFxE,EAAOuF,qBAAqBf,GAI9BA,EAAUxE,EAAOwF,uBAAsB,WACrChE,EAAaC,GACbgD,EAAWgB,aAoDf,OA7CAhB,EAAWkB,QAAU,WAEfpB,GACFR,EAAWQ,EAASzD,GAItBd,EAAO4F,oBAAoB,SAAUN,GAAe,GAChDxE,EAASN,QACXR,EAAO4F,oBAAoB,SAAUF,GAAe,GAItDjE,EAAW,KACX6C,EAAW,KACXC,EAAU,KACVC,EAAU,KACV1D,EAAW,MAQXA,EA3XS,WACX,IAAI+E,EAAS,GAOb,OANAlB,MAAMC,UAAUC,QAAQC,KAAKgB,WAAW,SAAUC,GAChD,IAAK,IAAIC,KAAOD,EAAK,CACnB,IAAKA,EAAIE,eAAeD,GAAM,OAC9BH,EAAOG,GAAOD,EAAIC,OAGfH,EAmXMK,CAAOhG,EAAUmE,GAAW,IAGvCI,EAAW0B,QAGX1B,EAAWgB,SAGXzF,EAAOoG,iBAAiB,SAAUd,GAAe,GAC7CxE,EAASN,QACXR,EAAOoG,iBAAiB,SAAUV,GAAe,GAS9CjB,GA7bA4B,CAAQvG,IAChB,QAFM,SAEN,uBCXDwG,EAA2B,GAG/B,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqBE,IAAjBD,EACH,OAAOA,EAAaE,QAGrB,IAAIC,EAASN,EAAyBE,GAAY,CAGjDG,QAAS,IAOV,OAHAE,EAAoBL,GAAU1B,KAAK8B,EAAOD,QAASC,EAAQA,EAAOD,QAASJ,GAGpEK,EAAOD,QCpBfJ,EAAoBO,EAAKF,IACxB,IAAIG,EAASH,GAAUA,EAAOI,WAC7B,IAAOJ,EAAiB,QACxB,IAAM,EAEP,OADAL,EAAoBU,EAAEF,EAAQ,CAAEG,EAAGH,IAC5BA,GCLRR,EAAoBU,EAAI,CAACN,EAASQ,KACjC,IAAI,IAAInB,KAAOmB,EACXZ,EAAoBa,EAAED,EAAYnB,KAASO,EAAoBa,EAAET,EAASX,IAC5EqB,OAAOC,eAAeX,EAASX,EAAK,CAAEuB,YAAY,EAAMC,IAAKL,EAAWnB,MCJ3EO,EAAoBxG,EAAI,WACvB,GAA0B,iBAAf0H,WAAyB,OAAOA,WAC3C,IACC,OAAOxH,MAAQ,IAAIyH,SAAS,cAAb,GACd,MAAOC,GACR,GAAsB,iBAAX3H,OAAqB,OAAOA,QALjB,GCAxBuG,EAAoBa,EAAI,CAACrB,EAAK6B,IAAUP,OAAOzC,UAAUqB,eAAenB,KAAKiB,EAAK6B,4CCK9EC,EAAY,KACZC,EAAS,KACTC,EAAgB/H,OAAO6C,aAAeP,SAASC,gBAAgByF,UA4EnE,SAASC,IACP,MAAMC,EAAeC,aAAaC,QAAQ,UAAY,OAZxD,IAAkBC,EACH,WADGA,EAaIrI,OAAOsI,WAAW,gCAAgCC,QAI/C,SAAjBL,EACO,QACgB,SAAhBA,EACA,OAEA,OAIU,SAAjBA,EACO,OACgB,QAAhBA,EACA,QAEA,SA9BoB,SAATG,GAA4B,SAATA,IACzCG,QAAQC,MAAM,2BAA2BJ,yBACzCA,EAAO,QAGT/F,SAASS,KAAK2F,QAAQC,MAAQN,EAC9BF,aAAaS,QAAQ,QAASP,GAC9BG,QAAQK,IAAI,cAAcR,WA4E5B,SAASlC,KART,WAEE,MAAM2C,EAAUxG,SAASyG,uBAAuB,gBAChDpE,MAAMqE,KAAKF,GAASjE,SAASoE,IAC3BA,EAAI7C,iBAAiB,QAAS6B,MAKhCiB,GA9CF,WAEE,IAAIC,EAA6B,EAC7BC,GAAU,EAEdpJ,OAAOoG,iBAAiB,UAAU,SAAUuB,GAC1CwB,EAA6BnJ,OAAOqJ,QAE/BD,IACHpJ,OAAOwF,uBAAsB,WAzDnC,IAAuB8D,IA0DDH,EA9GkC,GAAlDxG,KAAK4G,MAAMzB,EAAO7F,wBAAwBQ,KAC5CqF,EAAOjE,UAAUM,IAAI,YAErB2D,EAAOjE,UAAUC,OAAO,YAI5B,SAAmCwF,GAC7BA,EAXmB,GAYrBhH,SAASC,gBAAgBsB,UAAUC,OAAO,oBAEtCwF,EAAYvB,EACdzF,SAASC,gBAAgBsB,UAAUM,IAAI,oBAC9BmF,EAAYvB,GACrBzF,SAASC,gBAAgBsB,UAAUC,OAAO,oBAG9CiE,EAAgBuB,EAqChBE,CAA0BF,GAlC5B,SAA6BA,GACT,OAAdzB,IAKa,GAAbyB,EACFzB,EAAU4B,SAAS,EAAG,GAGtB9G,KAAKC,KAAK0G,IACV3G,KAAK4G,MAAMjH,SAASC,gBAAgBS,aAAehD,OAAOqC,aAE1DwF,EAAU4B,SAAS,EAAG5B,EAAU7E,cAGhBV,SAASoH,cAAc,oBAmBzCC,CAAoBL,GAwDdF,GAAU,KAGZA,GAAU,MAGdpJ,OAAO4J,SA8BPC,GA1BkB,OAAdhC,GAKJ,IAAI,IAAJ,CAAY,cAAe,CACzBrH,QAAQ,EACRsJ,WAAW,EACX3J,SAAU,iBACVI,OAAQ,KACN,IAAIwJ,EAAM7H,WAAW8H,iBAAiB1H,SAASC,iBAAiB0H,UAChE,OAAOnC,EAAO7F,wBAAwBiI,OAAS,GAAMH,EAAM,KA+BjEzH,SAAS8D,iBAAiB,oBAT1B,WACE9D,SAASS,KAAKW,WAAWG,UAAUC,OAAO,SAE1CgE,EAASxF,SAASoH,cAAc,UAChC7B,EAAYvF,SAASoH,cAAc,eAEnCvD","sources":["webpack:///./src/furo/assets/scripts/gumshoe-patched.js","webpack:///webpack/bootstrap","webpack:///webpack/runtime/compat get default export","webpack:///webpack/runtime/define property getters","webpack:///webpack/runtime/global","webpack:///webpack/runtime/hasOwnProperty shorthand","webpack:///./src/furo/assets/scripts/furo.js"],"sourcesContent":["/*!\n * gumshoejs v5.1.2 (patched by @pradyunsg)\n * A simple, framework-agnostic scrollspy script.\n * (c) 2019 Chris Ferdinandi\n * MIT License\n * http://github.com/cferdinandi/gumshoe\n */\n\n(function (root, factory) {\n if (typeof define === \"function\" && define.amd) {\n define([], function () {\n return factory(root);\n });\n } else if (typeof exports === \"object\") {\n module.exports = factory(root);\n } else {\n root.Gumshoe = factory(root);\n }\n})(\n typeof global !== \"undefined\"\n ? global\n : typeof window !== \"undefined\"\n ? window\n : this,\n function (window) {\n \"use strict\";\n\n //\n // Defaults\n //\n\n var defaults = {\n // Active classes\n navClass: \"active\",\n contentClass: \"active\",\n\n // Nested navigation\n nested: false,\n nestedClass: \"active\",\n\n // Offset & reflow\n offset: 0,\n reflow: false,\n\n // Event support\n events: true,\n };\n\n //\n // Methods\n //\n\n /**\n * Merge two or more objects together.\n * @param {Object} objects The objects to merge together\n * @returns {Object} Merged values of defaults and options\n */\n var extend = function () {\n var merged = {};\n Array.prototype.forEach.call(arguments, function (obj) {\n for (var key in obj) {\n if (!obj.hasOwnProperty(key)) return;\n merged[key] = obj[key];\n }\n });\n return merged;\n };\n\n /**\n * Emit a custom event\n * @param {String} type The event type\n * @param {Node} elem The element to attach the event to\n * @param {Object} detail Any details to pass along with the event\n */\n var emitEvent = function (type, elem, detail) {\n // Make sure events are enabled\n if (!detail.settings.events) return;\n\n // Create a new event\n var event = new CustomEvent(type, {\n bubbles: true,\n cancelable: true,\n detail: detail,\n });\n\n // Dispatch the event\n elem.dispatchEvent(event);\n };\n\n /**\n * Get an element's distance from the top of the Document.\n * @param {Node} elem The element\n * @return {Number} Distance from the top in pixels\n */\n var getOffsetTop = function (elem) {\n var location = 0;\n if (elem.offsetParent) {\n while (elem) {\n location += elem.offsetTop;\n elem = elem.offsetParent;\n }\n }\n return location >= 0 ? location : 0;\n };\n\n /**\n * Sort content from first to last in the DOM\n * @param {Array} contents The content areas\n */\n var sortContents = function (contents) {\n if (contents) {\n contents.sort(function (item1, item2) {\n var offset1 = getOffsetTop(item1.content);\n var offset2 = getOffsetTop(item2.content);\n if (offset1 < offset2) return -1;\n return 1;\n });\n }\n };\n\n /**\n * Get the offset to use for calculating position\n * @param {Object} settings The settings for this instantiation\n * @return {Float} The number of pixels to offset the calculations\n */\n var getOffset = function (settings) {\n // if the offset is a function run it\n if (typeof settings.offset === \"function\") {\n return parseFloat(settings.offset());\n }\n\n // Otherwise, return it as-is\n return parseFloat(settings.offset);\n };\n\n /**\n * Get the document element's height\n * @private\n * @returns {Number}\n */\n var getDocumentHeight = function () {\n return Math.max(\n document.body.scrollHeight,\n document.documentElement.scrollHeight,\n document.body.offsetHeight,\n document.documentElement.offsetHeight,\n document.body.clientHeight,\n document.documentElement.clientHeight,\n );\n };\n\n /**\n * Determine if an element is in view\n * @param {Node} elem The element\n * @param {Object} settings The settings for this instantiation\n * @param {Boolean} bottom If true, check if element is above bottom of viewport instead\n * @return {Boolean} Returns true if element is in the viewport\n */\n var isInView = function (elem, settings, bottom) {\n var bounds = elem.getBoundingClientRect();\n var offset = getOffset(settings);\n if (bottom) {\n return (\n parseInt(bounds.bottom, 10) <\n (window.innerHeight || document.documentElement.clientHeight)\n );\n }\n return parseInt(bounds.top, 10) <= offset;\n };\n\n /**\n * Check if at the bottom of the viewport\n * @return {Boolean} If true, page is at the bottom of the viewport\n */\n var isAtBottom = function () {\n if (\n Math.ceil(window.innerHeight + window.pageYOffset) >=\n getDocumentHeight()\n )\n return true;\n return false;\n };\n\n /**\n * Check if the last item should be used (even if not at the top of the page)\n * @param {Object} item The last item\n * @param {Object} settings The settings for this instantiation\n * @return {Boolean} If true, use the last item\n */\n var useLastItem = function (item, settings) {\n if (isAtBottom() && isInView(item.content, settings, true)) return true;\n return false;\n };\n\n /**\n * Get the active content\n * @param {Array} contents The content areas\n * @param {Object} settings The settings for this instantiation\n * @return {Object} The content area and matching navigation link\n */\n var getActive = function (contents, settings) {\n var last = contents[contents.length - 1];\n if (useLastItem(last, settings)) return last;\n for (var i = contents.length - 1; i >= 0; i--) {\n if (isInView(contents[i].content, settings)) return contents[i];\n }\n };\n\n /**\n * Deactivate parent navs in a nested navigation\n * @param {Node} nav The starting navigation element\n * @param {Object} settings The settings for this instantiation\n */\n var deactivateNested = function (nav, settings) {\n // If nesting isn't activated, bail\n if (!settings.nested || !nav.parentNode) return;\n\n // Get the parent navigation\n var li = nav.parentNode.closest(\"li\");\n if (!li) return;\n\n // Remove the active class\n li.classList.remove(settings.nestedClass);\n\n // Apply recursively to any parent navigation elements\n deactivateNested(li, settings);\n };\n\n /**\n * Deactivate a nav and content area\n * @param {Object} items The nav item and content to deactivate\n * @param {Object} settings The settings for this instantiation\n */\n var deactivate = function (items, settings) {\n // Make sure there are items to deactivate\n if (!items) return;\n\n // Get the parent list item\n var li = items.nav.closest(\"li\");\n if (!li) return;\n\n // Remove the active class from the nav and content\n li.classList.remove(settings.navClass);\n items.content.classList.remove(settings.contentClass);\n\n // Deactivate any parent navs in a nested navigation\n deactivateNested(li, settings);\n\n // Emit a custom event\n emitEvent(\"gumshoeDeactivate\", li, {\n link: items.nav,\n content: items.content,\n settings: settings,\n });\n };\n\n /**\n * Activate parent navs in a nested navigation\n * @param {Node} nav The starting navigation element\n * @param {Object} settings The settings for this instantiation\n */\n var activateNested = function (nav, settings) {\n // If nesting isn't activated, bail\n if (!settings.nested) return;\n\n // Get the parent navigation\n var li = nav.parentNode.closest(\"li\");\n if (!li) return;\n\n // Add the active class\n li.classList.add(settings.nestedClass);\n\n // Apply recursively to any parent navigation elements\n activateNested(li, settings);\n };\n\n /**\n * Activate a nav and content area\n * @param {Object} items The nav item and content to activate\n * @param {Object} settings The settings for this instantiation\n */\n var activate = function (items, settings) {\n // Make sure there are items to activate\n if (!items) return;\n\n // Get the parent list item\n var li = items.nav.closest(\"li\");\n if (!li) return;\n\n // Add the active class to the nav and content\n li.classList.add(settings.navClass);\n items.content.classList.add(settings.contentClass);\n\n // Activate any parent navs in a nested navigation\n activateNested(li, settings);\n\n // Emit a custom event\n emitEvent(\"gumshoeActivate\", li, {\n link: items.nav,\n content: items.content,\n settings: settings,\n });\n };\n\n /**\n * Create the Constructor object\n * @param {String} selector The selector to use for navigation items\n * @param {Object} options User options and settings\n */\n var Constructor = function (selector, options) {\n //\n // Variables\n //\n\n var publicAPIs = {};\n var navItems, contents, current, timeout, settings;\n\n //\n // Methods\n //\n\n /**\n * Set variables from DOM elements\n */\n publicAPIs.setup = function () {\n // Get all nav items\n navItems = document.querySelectorAll(selector);\n\n // Create contents array\n contents = [];\n\n // Loop through each item, get it's matching content, and push to the array\n Array.prototype.forEach.call(navItems, function (item) {\n // Get the content for the nav item\n var content = document.getElementById(\n decodeURIComponent(item.hash.substr(1)),\n );\n if (!content) return;\n\n // Push to the contents array\n contents.push({\n nav: item,\n content: content,\n });\n });\n\n // Sort contents by the order they appear in the DOM\n sortContents(contents);\n };\n\n /**\n * Detect which content is currently active\n */\n publicAPIs.detect = function () {\n // Get the active content\n var active = getActive(contents, settings);\n\n // if there's no active content, deactivate and bail\n if (!active) {\n if (current) {\n deactivate(current, settings);\n current = null;\n }\n return;\n }\n\n // If the active content is the one currently active, do nothing\n if (current && active.content === current.content) return;\n\n // Deactivate the current content and activate the new content\n deactivate(current, settings);\n activate(active, settings);\n\n // Update the currently active content\n current = active;\n };\n\n /**\n * Detect the active content on scroll\n * Debounced for performance\n */\n var scrollHandler = function (event) {\n // If there's a timer, cancel it\n if (timeout) {\n window.cancelAnimationFrame(timeout);\n }\n\n // Setup debounce callback\n timeout = window.requestAnimationFrame(publicAPIs.detect);\n };\n\n /**\n * Update content sorting on resize\n * Debounced for performance\n */\n var resizeHandler = function (event) {\n // If there's a timer, cancel it\n if (timeout) {\n window.cancelAnimationFrame(timeout);\n }\n\n // Setup debounce callback\n timeout = window.requestAnimationFrame(function () {\n sortContents(contents);\n publicAPIs.detect();\n });\n };\n\n /**\n * Destroy the current instantiation\n */\n publicAPIs.destroy = function () {\n // Undo DOM changes\n if (current) {\n deactivate(current, settings);\n }\n\n // Remove event listeners\n window.removeEventListener(\"scroll\", scrollHandler, false);\n if (settings.reflow) {\n window.removeEventListener(\"resize\", resizeHandler, false);\n }\n\n // Reset variables\n contents = null;\n navItems = null;\n current = null;\n timeout = null;\n settings = null;\n };\n\n /**\n * Initialize the current instantiation\n */\n var init = function () {\n // Merge user options into defaults\n settings = extend(defaults, options || {});\n\n // Setup variables based on the current DOM\n publicAPIs.setup();\n\n // Find the currently active content\n publicAPIs.detect();\n\n // Setup event listeners\n window.addEventListener(\"scroll\", scrollHandler, false);\n if (settings.reflow) {\n window.addEventListener(\"resize\", resizeHandler, false);\n }\n };\n\n //\n // Initialize and return the public APIs\n //\n\n init();\n return publicAPIs;\n };\n\n //\n // Return the Constructor\n //\n\n return Constructor;\n },\n);\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","import Gumshoe from \"./gumshoe-patched.js\";\n\n////////////////////////////////////////////////////////////////////////////////\n// Scroll Handling\n////////////////////////////////////////////////////////////////////////////////\nvar tocScroll = null;\nvar header = null;\nvar lastScrollTop = window.pageYOffset || document.documentElement.scrollTop;\nconst GO_TO_TOP_OFFSET = 64;\n\nfunction scrollHandlerForHeader() {\n if (Math.floor(header.getBoundingClientRect().top) == 0) {\n header.classList.add(\"scrolled\");\n } else {\n header.classList.remove(\"scrolled\");\n }\n}\n\nfunction scrollHandlerForBackToTop(positionY) {\n if (positionY < GO_TO_TOP_OFFSET) {\n document.documentElement.classList.remove(\"show-back-to-top\");\n } else {\n if (positionY < lastScrollTop) {\n document.documentElement.classList.add(\"show-back-to-top\");\n } else if (positionY > lastScrollTop) {\n document.documentElement.classList.remove(\"show-back-to-top\");\n }\n }\n lastScrollTop = positionY;\n}\n\nfunction scrollHandlerForTOC(positionY) {\n if (tocScroll === null) {\n return;\n }\n\n // top of page.\n if (positionY == 0) {\n tocScroll.scrollTo(0, 0);\n } else if (\n // bottom of page.\n Math.ceil(positionY) >=\n Math.floor(document.documentElement.scrollHeight - window.innerHeight)\n ) {\n tocScroll.scrollTo(0, tocScroll.scrollHeight);\n } else {\n // somewhere in the middle.\n const current = document.querySelector(\".scroll-current\");\n if (current == null) {\n return;\n }\n\n // https://github.com/pypa/pip/issues/9159 This breaks scroll behaviours.\n // // scroll the currently \"active\" heading in toc, into view.\n // const rect = current.getBoundingClientRect();\n // if (0 > rect.top) {\n // current.scrollIntoView(true); // the argument is \"alignTop\"\n // } else if (rect.bottom > window.innerHeight) {\n // current.scrollIntoView(false);\n // }\n }\n}\n\nfunction scrollHandler(positionY) {\n scrollHandlerForHeader();\n scrollHandlerForBackToTop(positionY);\n scrollHandlerForTOC(positionY);\n}\n\n////////////////////////////////////////////////////////////////////////////////\n// Theme Toggle\n////////////////////////////////////////////////////////////////////////////////\nfunction setTheme(mode) {\n if (mode !== \"light\" && mode !== \"dark\" && mode !== \"auto\") {\n console.error(`Got invalid theme mode: ${mode}. Resetting to auto.`);\n mode = \"auto\";\n }\n\n document.body.dataset.theme = mode;\n localStorage.setItem(\"theme\", mode);\n console.log(`Changed to ${mode} mode.`);\n}\n\nfunction cycleThemeOnce() {\n const currentTheme = localStorage.getItem(\"theme\") || \"auto\";\n const prefersDark = window.matchMedia(\"(prefers-color-scheme: dark)\").matches;\n\n if (prefersDark) {\n // Auto (dark) -> Light -> Dark\n if (currentTheme === \"auto\") {\n setTheme(\"light\");\n } else if (currentTheme == \"light\") {\n setTheme(\"dark\");\n } else {\n setTheme(\"auto\");\n }\n } else {\n // Auto (light) -> Dark -> Light\n if (currentTheme === \"auto\") {\n setTheme(\"dark\");\n } else if (currentTheme == \"dark\") {\n setTheme(\"light\");\n } else {\n setTheme(\"auto\");\n }\n }\n}\n\n////////////////////////////////////////////////////////////////////////////////\n// Setup\n////////////////////////////////////////////////////////////////////////////////\nfunction setupScrollHandler() {\n // Taken from https://developer.mozilla.org/en-US/docs/Web/API/Document/scroll_event\n let last_known_scroll_position = 0;\n let ticking = false;\n\n window.addEventListener(\"scroll\", function (e) {\n last_known_scroll_position = window.scrollY;\n\n if (!ticking) {\n window.requestAnimationFrame(function () {\n scrollHandler(last_known_scroll_position);\n ticking = false;\n });\n\n ticking = true;\n }\n });\n window.scroll();\n}\n\nfunction setupScrollSpy() {\n if (tocScroll === null) {\n return;\n }\n\n // Scrollspy -- highlight table on contents, based on scroll\n new Gumshoe(\".toc-tree a\", {\n reflow: true,\n recursive: true,\n navClass: \"scroll-current\",\n offset: () => {\n let rem = parseFloat(getComputedStyle(document.documentElement).fontSize);\n return header.getBoundingClientRect().height + 0.5 * rem + 1;\n },\n });\n}\n\nfunction setupTheme() {\n // Attach event handlers for toggling themes\n const buttons = document.getElementsByClassName(\"theme-toggle\");\n Array.from(buttons).forEach((btn) => {\n btn.addEventListener(\"click\", cycleThemeOnce);\n });\n}\n\nfunction setup() {\n setupTheme();\n setupScrollHandler();\n setupScrollSpy();\n}\n\n////////////////////////////////////////////////////////////////////////////////\n// Main entrypoint\n////////////////////////////////////////////////////////////////////////////////\nfunction main() {\n document.body.parentNode.classList.remove(\"no-js\");\n\n header = document.querySelector(\"header\");\n tocScroll = document.querySelector(\".toc-scroll\");\n\n setup();\n}\n\ndocument.addEventListener(\"DOMContentLoaded\", main);\n"],"names":["root","g","window","this","defaults","navClass","contentClass","nested","nestedClass","offset","reflow","events","emitEvent","type","elem","detail","settings","event","CustomEvent","bubbles","cancelable","dispatchEvent","getOffsetTop","location","offsetParent","offsetTop","sortContents","contents","sort","item1","item2","content","isInView","bottom","bounds","getBoundingClientRect","parseFloat","getOffset","parseInt","innerHeight","document","documentElement","clientHeight","top","isAtBottom","Math","ceil","pageYOffset","max","body","scrollHeight","offsetHeight","getActive","last","length","item","useLastItem","i","deactivateNested","nav","parentNode","li","closest","classList","remove","deactivate","items","link","activateNested","add","selector","options","navItems","current","timeout","publicAPIs","querySelectorAll","Array","prototype","forEach","call","getElementById","decodeURIComponent","hash","substr","push","active","activate","scrollHandler","cancelAnimationFrame","requestAnimationFrame","detect","resizeHandler","destroy","removeEventListener","merged","arguments","obj","key","hasOwnProperty","extend","setup","addEventListener","factory","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","__webpack_modules__","n","getter","__esModule","d","a","definition","o","Object","defineProperty","enumerable","get","globalThis","Function","e","prop","tocScroll","header","lastScrollTop","scrollTop","cycleThemeOnce","currentTheme","localStorage","getItem","mode","matchMedia","matches","console","error","dataset","theme","setItem","log","buttons","getElementsByClassName","from","btn","setupTheme","last_known_scroll_position","ticking","scrollY","positionY","floor","scrollHandlerForBackToTop","scrollTo","querySelector","scrollHandlerForTOC","scroll","setupScrollHandler","recursive","rem","getComputedStyle","fontSize","height"],"sourceRoot":""} \ No newline at end of file diff --git a/docs/html/_static/searchtools.js b/docs/html/_static/searchtools.js index 261ecaa..97d56a7 100644 --- a/docs/html/_static/searchtools.js +++ b/docs/html/_static/searchtools.js @@ -4,22 +4,24 @@ * * Sphinx JavaScript utilities for the full-text search. * - * :copyright: Copyright 2007-2020 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ +"use strict"; -if (!Scorer) { - /** - * Simple result scoring code. - */ +/** + * Simple result scoring code. + */ +if (typeof Scorer === "undefined") { 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] + // The function takes a result array [docname, title, anchor, descr, score, filename] // and returns the new score. /* - score: function(result) { - return result[4]; + score: result => { + const [docname, title, anchor, descr, score, filename] = result + return score }, */ @@ -28,9 +30,11 @@ if (!Scorer) { // 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 + 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, @@ -39,444 +43,495 @@ if (!Scorer) { partialTitle: 7, // query found in terms term: 5, - partialTerm: 2 + partialTerm: 2, }; } -if (!splitQuery) { - function splitQuery(query) { - return query.split(/\s+/); +const _removeChildren = (element) => { + while (element && element.lastChild) element.removeChild(element.lastChild); +}; + +/** + * See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions#escaping + */ +const _escapeRegExp = (string) => + string.replace(/[.*+\-?^${}()|[\]\\]/g, "\\$&"); // $& means the whole matched string + +const _displayItem = (item, searchTerms) => { + const docBuilder = DOCUMENTATION_OPTIONS.BUILDER; + const docUrlRoot = DOCUMENTATION_OPTIONS.URL_ROOT; + const docFileSuffix = DOCUMENTATION_OPTIONS.FILE_SUFFIX; + const docLinkSuffix = DOCUMENTATION_OPTIONS.LINK_SUFFIX; + const showSearchSummary = DOCUMENTATION_OPTIONS.SHOW_SEARCH_SUMMARY; + + const [docName, title, anchor, descr, score, _filename] = item; + + let listItem = document.createElement("li"); + let requestUrl; + let linkUrl; + if (docBuilder === "dirhtml") { + // dirhtml builder + let dirname = docName + "/"; + if (dirname.match(/\/index\/$/)) + dirname = dirname.substring(0, dirname.length - 6); + else if (dirname === "index/") dirname = ""; + requestUrl = docUrlRoot + dirname; + linkUrl = requestUrl; + } else { + // normal html builders + requestUrl = docUrlRoot + docName + docFileSuffix; + linkUrl = docName + docLinkSuffix; + } + let linkEl = listItem.appendChild(document.createElement("a")); + linkEl.href = linkUrl + anchor; + linkEl.dataset.score = score; + linkEl.innerHTML = title; + if (descr) + listItem.appendChild(document.createElement("span")).innerHTML = + " (" + descr + ")"; + else if (showSearchSummary) + fetch(requestUrl) + .then((responseData) => responseData.text()) + .then((data) => { + if (data) + listItem.appendChild( + Search.makeSearchSummary(data, searchTerms) + ); + }); + Search.output.appendChild(listItem); +}; +const _finishSearch = (resultCount) => { + Search.stopPulse(); + Search.title.innerText = _("Search Results"); + if (!resultCount) + Search.status.innerText = Documentation.gettext( + "Your search did not match any documents. Please make sure that all words are spelled correctly and that you've selected enough categories." + ); + else + Search.status.innerText = _( + `Search finished, found ${resultCount} page(s) matching the search query.` + ); +}; +const _displayNextItem = ( + results, + resultCount, + searchTerms +) => { + // results left, load the summary and display it + // this is intended to be dynamic (don't sub resultsCount) + if (results.length) { + _displayItem(results.pop(), searchTerms); + setTimeout( + () => _displayNextItem(results, resultCount, searchTerms), + 5 + ); } + // search finished, update title and status message + else _finishSearch(resultCount); +}; + +/** + * Default splitQuery function. Can be overridden in ``sphinx.search`` with a + * custom function per language. + * + * The regular expression works by splitting the string on consecutive characters + * that are not Unicode letters, numbers, underscores, or emoji characters. + * This is the same as ``\W+`` in Python, preserving the surrogate pair area. + */ +if (typeof splitQuery === "undefined") { + var splitQuery = (query) => query + .split(/[^\p{Letter}\p{Number}_\p{Emoji_Presentation}]+/gu) + .filter(term => term) // remove remaining empty strings } /** * Search Module */ -var Search = { - - _index : null, - _queued_query : null, - _pulse_status : -1, - - htmlToText : function(htmlString) { - var virtualDocument = document.implementation.createHTMLDocument('virtual'); - var htmlElement = $(htmlString, virtualDocument); - htmlElement.find('.headerlink').remove(); - docContent = htmlElement.find('[role=main]')[0]; - if(docContent === undefined) { - console.warn("Content block not found. Sphinx search tries to obtain it " + - "via '[role=main]'. Could you check your theme or template."); - return ""; - } - return docContent.textContent || docContent.innerText; +const Search = { + _index: null, + _queued_query: null, + _pulse_status: -1, + + htmlToText: (htmlString) => { + const htmlElement = new DOMParser().parseFromString(htmlString, 'text/html'); + htmlElement.querySelectorAll(".headerlink").forEach((el) => { el.remove() }); + const docContent = htmlElement.querySelector('[role="main"]'); + if (docContent !== undefined) return docContent.textContent; + console.warn( + "Content block not found. Sphinx search tries to obtain it via '[role=main]'. Could you check your theme or template." + ); + return ""; }, - init : function() { - var params = $.getQueryParameters(); - if (params.q) { - var query = params.q[0]; - $('input[name="q"]')[0].value = query; - this.performSearch(query); - } + init: () => { + const query = new URLSearchParams(window.location.search).get("q"); + document + .querySelectorAll('input[name="q"]') + .forEach((el) => (el.value = query)); + if (query) Search.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; - } - }}); - }, + loadIndex: (url) => + (document.body.appendChild(document.createElement("script")).src = url), - setIndex : function(index) { - var q; - this._index = index; - if ((q = this._queued_query) !== null) { - this._queued_query = null; - Search.query(q); + setIndex: (index) => { + Search._index = index; + if (Search._queued_query !== null) { + const query = Search._queued_query; + Search._queued_query = null; + Search.query(query); } }, - hasIndex : function() { - return this._index !== null; - }, + hasIndex: () => Search._index !== null, - deferQuery : function(query) { - this._queued_query = query; - }, + deferQuery: (query) => (Search._queued_query = query), - stopPulse : function() { - this._pulse_status = 0; - }, + stopPulse: () => (Search._pulse_status = -1), - startPulse : function() { - if (this._pulse_status >= 0) - return; - function pulse() { - var i; + startPulse: () => { + if (Search._pulse_status >= 0) return; + + const pulse = () => { 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); - } + Search.dots.innerText = ".".repeat(Search._pulse_status); + if (Search._pulse_status >= 0) window.setTimeout(pulse, 500); + }; pulse(); }, /** * perform a search for something (or wait until index is loaded) */ - performSearch : function(query) { + performSearch: (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 = $(' - - -
- -
-
- -
-

HistoryΒΆ

-
-

0.1.0 (2020-11-13)ΒΆ

+
+ +
+ +
+
+
+

History#

+
+

0.1.0 (2020-11-13)#

  • First release on PyPI.

-
-
- + + -
- + + + +
+
+ + On this page + +
+
+
- - - + + + - - - - - - - - - - + + + + + \ No newline at end of file diff --git a/docs/html/index.html b/docs/html/index.html index 09298b2..d1c4771 100644 --- a/docs/html/index.html +++ b/docs/html/index.html @@ -1,172 +1,233 @@ + + + + + + + + + SHaSTA 0.1.0 documentation + + + + + + - - - - + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+
+ +
+ +
+
+ +
+
+
+ + + + + Back to top + +
- - - - - - -
-
-
-
- -
-

Welcome to shasta’s documentation!ΒΆ

+
+ +
+ +
+
+
+

Welcome to shasta’s documentation!#

-
-
-

Indices and tablesΒΆ

+ +
+

Indices and tables#

-
- + -
- + +
+
- - -
- -
-

- - © Copyright 2020, Hemanth Manjunatha - -

-
- - - - Built with Sphinx using a - - theme - - provided by Read the Docs. - - - -
-
- - - + - - - - - - - - - - + + + + + \ No newline at end of file diff --git a/docs/html/installation.html b/docs/html/installation.html index 2b73097..e99635b 100644 --- a/docs/html/installation.html +++ b/docs/html/installation.html @@ -1,253 +1,323 @@ + + + + + + + + + Installation - SHaSTA 0.1.0 documentation + + + + + + - - - - + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+
+ +
+ +
+
+ +
+
+
+ + + + + Back to top + +
- - - - - - -
-
-
-
- -
-

InstallationΒΆ

-
-

Stable releaseΒΆ

+
+ +
+ +
+
+
+

Installation#

+
+

Stable release#

To install shasta, run this command in your terminal:

-
$ pip install shasta
+
$ pip install shasta
 

This is the preferred method to install shasta, as it will always install the most recent stable release.

If you don’t have pip installed, this Python installation guide can guide you through the process.

-
-
-

From sourcesΒΆ

+
+
+

From sources#

The sources for shasta can be downloaded from the Github repo.

You can either clone the public repository:

-
$ git clone git://github.com/hemumanju/shasta
-
-
-

Or download the tarball:

-
$ curl -OJL https://github.com/hemumanju/shasta/tarball/master
+
$ git clone git://github.com/hemumanju/shasta
 
-

Once you have a copy of the source, you can install it with:

-
$ python setup.py install
+
$ python setup.py install
 
-
-
- +
+
-
- + +
+
- - -
- -
-

- - © Copyright 2020, Hemanth Manjunatha - -

-
- - - - Built with Sphinx using a - - theme - - provided by Read the Docs. - - +
+
+ + On this page + +
+
- - - + + +
- - - - - - - - - - +
+ + + + \ No newline at end of file diff --git a/docs/html/objects.inv b/docs/html/objects.inv index ec74ebc53ffa607bd65bb8ef72778223706210d2..f163edcfb4c52b1bdaa1243a6cd01ee7c6b78622 100644 GIT binary patch delta 1481 zcmV;)1vdKj6{if4CzQt6HyzEWvluDrsG21r z_#{CWg9SJ@>8h{M*XxrMLwx;n4aNyc7f}*?_`U<2KfvmMmBx8}{!odsVUWMiaiayU z={sc~y`#K@Q*qE0``L*+{gOXr?qPw67BbY^3PfNOzhMO*J2b+uQu(ioV1AT;0x^M0 zs~PBnC=-Bzg~M7)x@|PvhKTE$osns!f~V551f``or-IvqMz#&nG9{+iDv(EaFv1sGP1gP3}0mUxCh^ZR&X&y z#IX<|Arv9n=i#u>N)+Gi?@t#nPaK$H`9TU~2G`W+ZGiQSb_F(J!pw}KRl^nyWCd)W z3HMSowMq@E(Dv-07gFs?@Cw%n(eAQhE%1wwEY+|nry8{m3o;SnqBpL8z;dQPN#F@! zYy845rj!U$Q}TQZ)H7uaVe@foVb$6-+||2l(10I9LCic3$1o#s8P{ir1zNPLSRkdLz7D6051zR-kHd3o1d4AC!!xTBh_`(Ugm*h?DhMqxS34mqmuWFC zO+>`?AvCfGbmwu~hO&}>@;#z_CvHO|f*X6*NDD-;)SxKl$q-G}GF#0X@oZYT=cHN! zH{ix-y815>PD^T`C9G0=t-73(9qZ@n04`wYnW_T4k-0iR{Q?rCIce zv70YRPq)F^=y5%SJ&{mI3Sk3%i8WpeQBnzQUZvo$~adj){g|kQGX+>QcP&|AU05k$1s`g`h$q- z2N5X({ATN;<@-1?CLUyf=KF3${lEB-)c;!(kotecM#82i^%TT0oa@L;jf;;EUqRhX z16vXNAM~;@waqwx%iWoLY+o@ZyppTYl&!E`E562TZHK~ml*DAF`u6YC7kDEHYpf4< zCmXqi>JG!wu+hp?=to#sqE2dQWjeXyOIN)HBgh==0$xEdBkiFmpd+xbi(CT_Cm`+B zSR&w!v5yVIoL~Go!Bh+(@2PHKHr}N*@VlThv#rMxNwE8Wds@|u5~@>C?S}RjVb`zn z(H8#NW38>vQbluIW&bx)t~0U~WHx%%1NVqnsZpQk)f)A>!YjS3Yw1=_W;))r-kgs4 zCQpx1W3k4Fs485hZBJj?ix-O7>*3YHiGL`)9;s?Dqkjd@6JCYF3ciXJwb|L&8uB*2;<$KRP6jBfSBdM<~bv^F1JfE08$q^e`6LzE@)#kQqccaK>T| zE~{3F69H@{!9FP z{xyNjdubM6ncS@9gFCv+cTW_68{Z}6{e4t6_ts#40O$=!<~!32fQ-*Q^ZwX0TX~!i z;D|bj$QO@0vgPyEXeAbSvsD|>Xx7;sY`(Bl&SLji(P~T+NABMNX3^DFkUdzU<$+o- zTd2h2SVLUdstO>E&sRF+3)M^J&+q|a-*V0_;3PE%VCRx}J}n6{f656!PZLu<%yAiM z@3X{z4iUl2hUg*ACfG3rfrQq>fEAI zI(%(^W(TTF@;VQ(FHKJBclRfIGYtczAHayHAlKqD_<#TYN99JYY4en|{hthgdB863 zVU2M5_D-?BB{Ox#%t-3SZj(}ixEv#B=txVHpcn!yZIbSSJZBFjHd%nSY$Qsq&7YzVygOmHS{h9p-G=7=P5}V+! delta 2722 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 diff --git a/docs/html/py-modindex.html b/docs/html/py-modindex.html index dbadb39..a9da302 100644 --- a/docs/html/py-modindex.html +++ b/docs/html/py-modindex.html @@ -1,447 +1,368 @@ + + + + + + + Python Module Index - SHaSTA 0.1.0 documentation + + + + + + - - - - + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+
+
+
+ +
+ +
+
+ +
+
+
+ + + + + Back to top + +
+
+ +
+ +
+
- - - - - - - - - - - - - - - -
- -
+
+
- - - - - -
-
-
-
+ +
+
+ + Made with Sphinx and @pradyunsg's + + Furo + +
+
- -

Python Module Index

- -
- _ | - d | - e | - g | - m | - u -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 
- _
- __initi__ -
 
- d
- default_actions -
 
- e
- envs -
    - envs.action_manager -
    - envs.agents -
    - envs.agents.control -
    - envs.agents.uav -
    - envs.agents.ugv -
    - envs.agents.utils -
    - envs.base_env -
    - envs.blue_team -
    - envs.blue_team.blue_base -
    - envs.blue_team.utils -
    - envs.enhance_env -
    - envs.interaction_manager -
    - envs.primitive_manager -
    - envs.primitives -
    - envs.primitives.engaging -
    - envs.primitives.engaging.shooting -
    - envs.primitives.formation -
    - envs.primitives.formation.control -
    - envs.primitives.planning -
    - envs.primitives.planning.planners -
    - envs.red_team -
    - envs.red_team.red_base -
    - envs.red_team.utils -
    - envs.sensors -
    - envs.state_manager -
    - envs.utils -
    - envs.utils.interaction -
    - envs.utils.magicattr -
 
- g
- gui -
    - gui.core -
    - gui.core.information -
    - gui.core.obj -
    - gui.core.shape_utils -
    - gui.core.user -
    - gui.core.utils -
    - gui.gui_main -
 
- m
- main -
 
- u
- utils -
- - -
-
-
- - -
- -
-

- - © Copyright 2020, Hemanth Manjunatha - -

-
- - - - Built with Sphinx using a - - theme - - provided by Read the Docs. - -
-
-
- - - + + +
+
- - - - - - - - - - +
+ + + + \ No newline at end of file diff --git a/docs/html/readme.html b/docs/html/readme.html index 488a4b3..785cac3 100644 --- a/docs/html/readme.html +++ b/docs/html/readme.html @@ -1,245 +1,386 @@ + + + + + + + + + Welcome - SHaSTA 0.1.0 documentation + + + + + + - - - - + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+
+ +
+ +
+
+ +
+
+
+ + + + + Back to top + +
- - - - - - -
-
-
-
- -
-

shastaΒΆ

-https://img.shields.io/pypi/v/shasta.svg -https://img.shields.io/travis/hemumanju/shasta.svg -Documentation Status -

SHaSTA: A simulator for human and swarm team applications.

+
+ +
+ +
+
+
+

Welcome#

+
+

SHaSTA (Simulator for Human and Swarm Team Applications)#

+

Simulator Banner +(Screenshot for illustration purposes only.)

+

Welcome to the SHaSTA! An open-source simulation platform to study human-swarm applications. The platform provides a unified interface for humans and learning algorithms to command/learn swarm robot behaviors. SHaSTA also provides a unique ability to collect physiological information from humans and time synchronize it with swarm simulation.

+
+

Table of Contents#

-
-

FeaturesΒΆ

+
+
+

Features#

    -
  • TODO

  • +
  • Realistic swarm simulation powered by the pybullet.

  • +
  • Human-Swarm Interaction interface.

  • +
  • Physiological signal (EEG, EMG, Eye movement, etc.) collection facility built on lab streaming layer.

  • +
  • OpenAI Gym interface for reinforcement learning experiments.

  • +
  • Highly customizable simulation environment.

  • +
  • Easy-to-use and well-documented codebase.

+
+
+

Installation#

+
    +
  1. Clone this repository to your local machine using:

    +
    git clone https://github.com/ub-nsf-hsi/shasta-ub.git
    +
    +
    -
    -

    CreditsΒΆ

    -

    This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

    +
  2. +
  3. Install the required dependencies:

    +
    pip install -r requirements.txt
    +
    +
  4. +
  5. Configure your XPlane installation and simulator settings as needed.

  6. +
+
+
+

Usage#

+
    +
  1. Launch the simulator by running:

    +
    python main.py
    +
    - - -
- +

If you want to run a particular block of code, replace the skip by run.

+ +
  • Explore the simulation environment, adjust settings, and start flying!

  • + + +
    +

    Contributing#

    +

    We welcome contributions from the community to improve and expand this simulator project. If you’re interested in contributing, please follow our Contribution Guidelines.

    +
    +
    +

    Code of Conduct#

    +

    Please review and adhere to our Code of Conduct when participating in our community. We strive to maintain a respectful and inclusive environment for everyone.

    +
    +
    +

    License#

    +

    This project is licensed under the MIT License, which means you are free to use, modify, and distribute the code in your projects.

    +
    +

    We hope you enjoy using the SHaSTA. Happy flying!

    +
    + + + + +
    +
    - - -
    - -
    -

    - - © Copyright 2020, Hemanth Manjunatha - -

    -
    - - - - Built with Sphinx using a - - theme - - provided by Read the Docs. - - + - - - + + +
    - - - - - - - - - - +
    + + + + \ No newline at end of file diff --git a/docs/html/search.html b/docs/html/search.html index f10c0ac..95f8e13 100644 --- a/docs/html/search.html +++ b/docs/html/search.html @@ -1,227 +1,271 @@ + + + + + + + Search - SHaSTA 0.1.0 documentation + + + + + - - - - + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
    +
    +
    + +
    + +
    +
    + +
    + +
    +
    + +
    +
    +
    + + + + + Back to top + +
    +
    + +
    + +
    +
    + +
    - - - - - - - - - - - - - -
    - -
      - -
    • »
    • - -
    • Search
    • - - -
    • +
    +
    +
    + +
    +
    + + Made with Sphinx and @pradyunsg's - - - - - - -
    -
    -
    -
    + Furo + +
    +
    - - - -
    - -
    - -
    -
    -
    - - -
    - -
    -

    - - © Copyright 2020, Hemanth Manjunatha - -

    -
    - - - - Built with Sphinx using a - - theme - - provided by Read the Docs. - -
    -
    -
    - - - + + +
    +
    - - - - - - +
    + + + - - - - - - - - + + + \ No newline at end of file diff --git a/docs/html/searchindex.js b/docs/html/searchindex.js index 946a676..3ce69b0 100644 --- a/docs/html/searchindex.js +++ b/docs/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({docnames:["autoapi/__initi__/index","autoapi/default_actions/index","autoapi/envs/action_manager/index","autoapi/envs/agents/control/index","autoapi/envs/agents/index","autoapi/envs/agents/uav/index","autoapi/envs/agents/ugv/index","autoapi/envs/agents/utils/index","autoapi/envs/base_env/index","autoapi/envs/blue_team/blue_base/index","autoapi/envs/blue_team/index","autoapi/envs/blue_team/utils/index","autoapi/envs/enhance_env/index","autoapi/envs/index","autoapi/envs/interaction_manager/index","autoapi/envs/primitive_manager/index","autoapi/envs/primitives/engaging/index","autoapi/envs/primitives/engaging/shooting/index","autoapi/envs/primitives/formation/control/index","autoapi/envs/primitives/formation/index","autoapi/envs/primitives/index","autoapi/envs/primitives/planning/index","autoapi/envs/primitives/planning/planners/index","autoapi/envs/red_team/index","autoapi/envs/red_team/red_base/index","autoapi/envs/red_team/utils/index","autoapi/envs/sensors/index","autoapi/envs/state_manager/index","autoapi/envs/utils/index","autoapi/envs/utils/interaction/index","autoapi/envs/utils/magicattr/index","autoapi/gui/core/index","autoapi/gui/core/information/index","autoapi/gui/core/obj/index","autoapi/gui/core/shape_utils/index","autoapi/gui/core/user/index","autoapi/gui/core/utils/index","autoapi/gui/gui_main/index","autoapi/gui/index","autoapi/index","autoapi/main/index","autoapi/utils/index","contributing","history","index","installation","readme","usage"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":2,"sphinx.domains.rst":2,"sphinx.domains.std":1,"sphinx.ext.viewcode":1,sphinx:56},filenames:["autoapi/__initi__/index.rst","autoapi/default_actions/index.rst","autoapi/envs/action_manager/index.rst","autoapi/envs/agents/control/index.rst","autoapi/envs/agents/index.rst","autoapi/envs/agents/uav/index.rst","autoapi/envs/agents/ugv/index.rst","autoapi/envs/agents/utils/index.rst","autoapi/envs/base_env/index.rst","autoapi/envs/blue_team/blue_base/index.rst","autoapi/envs/blue_team/index.rst","autoapi/envs/blue_team/utils/index.rst","autoapi/envs/enhance_env/index.rst","autoapi/envs/index.rst","autoapi/envs/interaction_manager/index.rst","autoapi/envs/primitive_manager/index.rst","autoapi/envs/primitives/engaging/index.rst","autoapi/envs/primitives/engaging/shooting/index.rst","autoapi/envs/primitives/formation/control/index.rst","autoapi/envs/primitives/formation/index.rst","autoapi/envs/primitives/index.rst","autoapi/envs/primitives/planning/index.rst","autoapi/envs/primitives/planning/planners/index.rst","autoapi/envs/red_team/index.rst","autoapi/envs/red_team/red_base/index.rst","autoapi/envs/red_team/utils/index.rst","autoapi/envs/sensors/index.rst","autoapi/envs/state_manager/index.rst","autoapi/envs/utils/index.rst","autoapi/envs/utils/interaction/index.rst","autoapi/envs/utils/magicattr/index.rst","autoapi/gui/core/index.rst","autoapi/gui/core/information/index.rst","autoapi/gui/core/obj/index.rst","autoapi/gui/core/shape_utils/index.rst","autoapi/gui/core/user/index.rst","autoapi/gui/core/utils/index.rst","autoapi/gui/gui_main/index.rst","autoapi/gui/index.rst","autoapi/index.rst","autoapi/main/index.rst","autoapi/utils/index.rst","contributing.rst","history.rst","index.rst","installation.rst","readme.rst","usage.rst"],objects:{"":{__initi__:[0,0,0,"-"],default_actions:[1,0,0,"-"],envs:[13,0,0,"-"],gui:[38,0,0,"-"],main:[40,0,0,"-"],utils:[41,0,0,"-"]},"envs.action_manager":{ActionManager:[2,2,1,""]},"envs.action_manager.ActionManager":{_init_platoons_setup:[2,3,1,""],get_actions:[2,3,1,""],get_allocated_vehicle:[2,3,1,""],perform_action_allocation:[2,3,1,""],primitive_execution:[2,3,1,""]},"envs.agents":{control:[3,0,0,"-"],uav:[5,0,0,"-"],ugv:[6,0,0,"-"],utils:[7,0,0,"-"]},"envs.agents.control":{UaVPDController:[3,2,1,""]},"envs.agents.control.UaVPDController":{compute_torque:[3,3,1,""]},"envs.agents.uav":{UaV:[5,2,1,""]},"envs.agents.uav.UaV":{_initial_setup:[5,3,1,""],get_image:[5,3,1,""],get_info:[5,3,1,""],get_pos_and_orientation:[5,3,1,""],remove_self:[5,3,1,""],reset:[5,3,1,""],set_position:[5,3,1,""]},"envs.agents.ugv":{UgV:[6,2,1,""]},"envs.agents.ugv.UgV":{_initial_setup:[6,3,1,""],get_image:[6,3,1,""],get_info:[6,3,1,""],get_pos_and_orientation:[6,3,1,""],remove_self:[6,3,1,""],reset:[6,3,1,""],set_position:[6,3,1,""]},"envs.agents.utils":{rotation_matrix:[7,1,1,""],transformation_matrix:[7,1,1,""]},"envs.base_env":{BaseEnv:[8,2,1,""]},"envs.base_env.BaseEnv":{base_env_simulation_reset:[8,3,1,""],base_env_step:[8,3,1,""]},"envs.blue_team":{blue_base:[9,0,0,"-"],utils:[11,0,0,"-"]},"envs.blue_team.blue_base":{BlueTeam:[9,2,1,""],get_initial_positions:[9,1,1,""]},"envs.blue_team.blue_base.BlueTeam":{_initial_uxv_setup:[9,3,1,""],execute:[9,3,1,""],get_attributes:[9,3,1,""],reset:[9,3,1,""]},"envs.blue_team.utils":{async_func:[11,1,1,""]},"envs.enhance_env":{EnhanceEnv:[12,2,1,""]},"envs.enhance_env.EnhanceEnv":{_initial_team_setup:[12,3,1,""],check_episode_done:[12,3,1,""],get_reward:[12,3,1,""],reset:[12,3,1,""],step:[12,3,1,""]},"envs.interaction_manager":{InteractionManager:[14,2,1,""]},"envs.interaction_manager.InteractionManager":{_set_action:[14,3,1,""],action_lookup_string:[14,3,1,""],get_action:[14,3,1,""],get_team_position:[14,3,1,""],set_action:[14,3,1,""],update_action:[14,3,1,""],update_actions:[14,3,1,""]},"envs.primitive_manager":{PrimitiveManager:[15,2,1,""]},"envs.primitive_manager.PrimitiveManager":{allocate_action:[15,3,1,""],execute_primitive:[15,3,1,""],formation_primitive:[15,3,1,""],get_centroid:[15,3,1,""],make_vehicles_idle:[15,3,1,""],make_vehicles_nonidle:[15,3,1,""],planning_primitive:[15,3,1,""],plot_path:[15,3,1,""],shooting_primitive:[15,3,1,""]},"envs.primitives":{engaging:[16,0,0,"-"],formation:[19,0,0,"-"],planning:[21,0,0,"-"]},"envs.primitives.engaging":{shooting:[17,0,0,"-"]},"envs.primitives.engaging.shooting":{Shooting:[17,2,1,""]},"envs.primitives.engaging.shooting.Shooting":{shoot:[17,3,1,""],shoot_original:[17,3,1,""]},"envs.primitives.formation":{control:[18,0,0,"-"]},"envs.primitives.formation.control":{FormationControl:[18,2,1,""]},"envs.primitives.formation.control.FormationControl":{calculate_vel:[18,3,1,""],execute:[18,3,1,""]},"envs.primitives.planning":{planners:[22,0,0,"-"]},"envs.primitives.planning.planners":{PathPlanning:[22,2,1,""]},"envs.primitives.planning.planners.PathPlanning":{convert_to_lat_lon:[22,3,1,""],find_homogenous_affine_transformation:[22,3,1,""],find_path:[22,3,1,""],linear_refine_implicit:[22,3,1,""]},"envs.red_team":{red_base:[24,0,0,"-"],utils:[25,0,0,"-"]},"envs.red_team.red_base":{RedTeam:[24,2,1,""],get_initial_positions:[24,1,1,""]},"envs.red_team.red_base.RedTeam":{_initial_uxv_setup:[24,3,1,""],execute:[24,3,1,""],get_attributes:[24,3,1,""],reset:[24,3,1,""]},"envs.red_team.utils":{async_func:[25,1,1,""]},"envs.sensors":{Sensors:[26,2,1,""]},"envs.sensors.Sensors":{get_camera_image:[26,3,1,""],ray_cast:[26,3,1,""]},"envs.state_manager":{StateManager:[27,2,1,""]},"envs.state_manager.StateManager":{_affine_transformation_and_graph:[27,3,1,""],_initial_buildings_setup:[27,3,1,""],_initial_mission_setup:[27,3,1,""],_initial_target_setup:[27,3,1,""],_initial_uxv:[27,3,1,""],building_info:[27,3,1,""],get_image:[27,3,1,""],get_states:[27,3,1,""],node_info:[27,3,1,""]},"envs.utils":{interaction:[29,0,0,"-"],magicattr:[30,0,0,"-"]},"envs.utils.interaction":{check_perimeter:[29,1,1,""],findkeys:[29,1,1,""]},"envs.utils.magicattr":{"delete":[30,1,1,""],_AST_TYPES:[30,4,1,""],_STRING_TYPE:[30,4,1,""],_lookup:[30,1,1,""],_lookup_subscript_value:[30,1,1,""],_parse:[30,1,1,""],get:[30,1,1,""],lookup:[30,1,1,""],set:[30,1,1,""]},"gui.core":{information:[32,0,0,"-"],obj:[33,0,0,"-"],shape_utils:[34,0,0,"-"],user:[35,0,0,"-"],utils:[36,0,0,"-"]},"gui.core.information":{ImageView:[32,2,1,""],Text:[32,2,1,""],Timer:[32,2,1,""]},"gui.core.information.ImageView":{prepare_projection:[32,3,1,""],update:[32,3,1,""]},"gui.core.information.Text":{prepare_projection:[32,3,1,""],reset:[32,3,1,""],update:[32,3,1,""]},"gui.core.information.Timer":{prepare_projection:[32,3,1,""],reset:[32,3,1,""],update:[32,3,1,""]},"gui.core.obj":{Obj:[33,2,1,""],lightfv:[33,4,1,""]},"gui.core.obj.Obj":{apply_transformation:[33,3,1,""],convert_to_obj_coordinates:[33,3,1,""],do_draw:[33,3,1,""],on_key_press:[33,3,1,""],on_mouse_drag:[33,3,1,""],on_mouse_release:[33,3,1,""],on_mouse_scroll:[33,3,1,""],pan_rotate:[33,3,1,""],prepare_projection:[33,3,1,""],update:[33,3,1,""]},"gui.core.shape_utils":{BaseObject:[34,2,1,""],Circle:[34,2,1,""],Cube:[34,2,1,""],Point2d:[34,2,1,""],Rectangle:[34,2,1,""],Sphere:[34,2,1,""],create_window:[34,1,1,""],lightfv:[34,4,1,""]},"gui.core.shape_utils.BaseObject":{before_draw:[34,3,1,""],enable_lightning:[34,3,1,""]},"gui.core.shape_utils.Circle":{draw:[34,3,1,""]},"gui.core.shape_utils.Cube":{draw:[34,3,1,""]},"gui.core.shape_utils.Rectangle":{bottom:[34,3,1,""],draw:[34,3,1,""],left:[34,3,1,""],right:[34,3,1,""],top:[34,3,1,""]},"gui.core.shape_utils.Sphere":{draw:[34,3,1,""]},"gui.core.user":{User:[35,2,1,""]},"gui.core.user.User":{do_claim:[35,3,1,""],draw:[35,3,1,""],on_key_press:[35,3,1,""],on_key_release:[35,3,1,""],on_mouse_drag:[35,3,1,""],on_mouse_motion:[35,3,1,""],on_mouse_press:[35,3,1,""],on_mouse_release:[35,3,1,""],on_mouse_scroll:[35,3,1,""]},"gui.core.utils":{ViewPort:[36,2,1,""],create_window:[36,1,1,""],lightfv:[36,4,1,""]},"gui.core.utils.ViewPort":{get_origin:[36,3,1,""],get_size:[36,3,1,""],is_inside:[36,3,1,""],set_viewport:[36,3,1,""],setup_bounding_box:[36,3,1,""]},"gui.gui_main":{MainGUI:[37,2,1,""],get_layout:[37,1,1,""]},"gui.gui_main.MainGUI":{on_close:[37,3,1,""],push_events:[37,3,1,""],run:[37,3,1,""]},"utils.ColorPrint":{print_run:[41,3,1,""],print_skip:[41,3,1,""],print_warn:[41,3,1,""]},default_actions:{blue_team_actions:[1,1,1,""],initial_nodes_setup:[1,1,1,""],red_team_actions:[1,1,1,""]},envs:{action_manager:[2,0,0,"-"],agents:[4,0,0,"-"],base_env:[8,0,0,"-"],blue_team:[10,0,0,"-"],enhance_env:[12,0,0,"-"],interaction_manager:[14,0,0,"-"],primitive_manager:[15,0,0,"-"],primitives:[20,0,0,"-"],red_team:[23,0,0,"-"],sensors:[26,0,0,"-"],state_manager:[27,0,0,"-"],utils:[28,0,0,"-"]},gui:{core:[31,0,0,"-"],gui_main:[37,0,0,"-"]},main:{config:[40,4,1,""],config_path:[40,4,1,""],default_blue_actions:[40,4,1,""],gui:[40,4,1,""]},utils:{ColorPrint:[41,2,1,""],SkipWith:[41,5,1,""],skip_run:[41,1,1,""]}},objnames:{"0":["py","module","Python module"],"1":["py","function","Python function"],"2":["py","class","Python class"],"3":["py","method","Python method"],"4":["py","data","Python data"],"5":["py","exception","Python exception"]},objtypes:{"0":"py:module","1":"py:function","2":"py:class","3":"py:method","4":"py:data","5":"py:exception"},terms:{"2018":30,"2019":18,"2020":44,"3x3":7,"abstract":26,"default":[22,37],"final":30,"float":[18,37],"function":[5,6,22,42],"import":47,"int":[2,22,27],"new":42,"public":45,"return":[2,5,6,7,18,22,26,27,29,30,34,41],"static":41,"while":37,The:[2,5,6,22,27,30,37,42,45],Then:42,__initi__:[39,44],_affine_transformation_and_graph:27,_ast_typ:30,_init_platoons_setup:2,_initial_buildings_setup:27,_initial_mission_setup:27,_initial_setup:[5,6],_initial_target_setup:27,_initial_team_setup:12,_initial_uxv:27,_initial_uxv_setup:[9,24],_lookup:30,_lookup_subscript_valu:30,_pars:30,_set_act:14,_string_typ:30,aarrai:18,about:[5,6,7,27,42],access:37,accord:37,acquir:27,action:[2,14,15,24,30],action_lookup_str:14,action_manag:[13,39],actionmanag:2,actions_uav:2,actions_ugv:2,add:42,addit:22,affin:22,agent:[12,13,18,27,39],all:[2,5,6,9,12,18,24,27,37,41,42],all_drones_po:18,alloc:2,allocate_act:15,allow:37,alwai:[42,45],angl:[5,6],angular:7,ani:[30,42],anyth:42,api:44,appear:37,applic:[37,46],apply_transform:33,appreci:42,appropri:37,apurvakumar:18,area:37,arg:7,arrai:[2,5,6,7,18,22,26,27,29],articl:42,assign:2,assum:42,ast:30,async_func:[11,25],attr:30,attribut:[2,9,24,30],attricut:2,audreyr:46,auto:39,autoapi:39,axi:7,back:[5,6],bar:37,base:[2,3,5,6,8,9,12,14,15,17,18,22,24,26,34,36,37,41],base_env:[12,13,39],base_env_simulation_reset:8,base_env_step:8,baseenv:[8,12],baseobject:34,befor:[30,34,42],before_draw:34,being:2,belong:27,best:42,between:[22,30],bit:42,block:41,blog:42,blue:29,blue_act:[12,14],blue_bas:[10,13,39],blue_team:[13,14,39],blue_team_act:1,blue_team_po:29,blueteam:9,bool:[2,30],borderless:37,bottom:34,branch:42,bugfix:42,build:27,building_info:27,bump2vers:42,button:[33,35,37],calcul:[7,18],calculate_vel:18,call:37,camera:[5,6,26],can:[37,42,45],cartesian:[22,27],cartesian_po:9,cartesian:22,centroid:[2,15,18,29],centroid_po:18,chang:42,check:[29,30,42],check_episode_don:12,check_perimet:29,checkout:42,circl:34,client:37,clone:[42,45],close:37,code:[2,18,41],color:34,colorprint:41,com:[42,45],combin:30,command:45,commit:42,common:41,compute_torqu:3,config:[1,5,6,8,9,12,14,22,24,27,29,37,40],config_path:40,configur:22,consecut:22,constraint:[5,6],contain:[2,5,6,18,27,29,39],content:44,context:37,contribut:44,control:[4,13,19,20,37,39],convent:37,convers:27,convert:22,convert_to_lat_lon:22,convert_to_obj_coordin:33,cookiecutt:46,coordin:22,copi:[42,45],copyright:30,core:[38,39],correspond:26,could:42,creat:[30,39,42,46],create_window:[34,36],credit:[42,44],cube:34,curl:45,current:[18,37],current_orin:3,current_po:3,current_tim:27,current_z_vel:3,date:18,decod:2,decor:37,default_act:[39,44],default_blue_act:40,delattr:30,delet:30,depend:[2,18],deploi:44,depth:[26,27],descript:42,desired_acc:3,desired_po:3,desired_vel:3,detail:42,develop:42,dict:[2,5,6,27,30],dictionari:[2,5,6,27,29],dimens:[22,34],distanc:[14,17,18],distribut:30,do_claim:35,do_draw:33,doc:42,docstr:42,document:[39,46],doing:30,don:45,done:[30,37,42],download:45,draw:[34,35],drawn:34,driven:42,durat:18,dynamic_properti:3,each:[2,22],easier:42,either:[2,45],empyt:2,enable_lightn:34,end:[22,34,41],engag:[13,20,39],enhanc:42,enhance_env:[13,39],enhanceenv:12,ensur:37,entir:37,entri:42,env:[39,44],environ:9,etc:27,even:42,everi:42,exampl:[2,37],except:41,execut:[2,9,15,18,24],execute_primit:15,exit:41,explain:42,extract:2,fals:[34,37],featur:44,file:[22,30,42],fill:37,find:22,find_homogenous_affine_transform:22,find_path:22,findkei:29,first:[37,43],flag:41,flake8:42,floor:27,fork:42,format:[13,15,20,39],formation_primit:15,formation_typ:18,formationcontrol:18,former:30,frame:37,free:46,from:[2,18,22,27,44],full:30,fullscreen:37,gener:[22,39],get:[5,6,15,18,26,27,30,44],get_act:[2,14],get_allocated_vehicl:2,get_attribut:[9,24],get_camera_imag:26,get_centroid:15,get_imag:[5,6,27],get_info:[5,6],get_initial_posit:[9,24],get_layout:37,get_origin:36,get_pos_and_orient:[5,6],get_reward:12,get_siz:36,get_stat:27,get_team_posit:14,getattr:30,git:[42,45],github:[42,45],given:[2,5,6,22,30,42],goal:27,graph:22,great:22,greatli:42,grid:27,group:18,gui:[39,40,44],gui_main:[38,39],guid:45,guidelin:44,hand:2,hand_cod:2,handl:37,handler:37,have:[37,42,45],heavyweight:37,height:[34,36,37],help:42,hemumanju:[42,45],here:42,higher:22,histori:[42,44],how:42,http:[42,45,46],human:46,idl:15,idx:27,imag:[5,6,22,26,27],image_typ:[5,6,26,27],imageview:32,implement:22,includ:[37,42],independ:37,index:[30,44],inform:[5,6,27,31,38,39],init_orient:[5,6],init_po:[5,6,24],initi:[1,2,5,6,27],initial_nodes_setup:1,input:[2,22],insert:22,instal:[42,44],instanc:[2,18],instead:30,interact:[13,28,39],interaction_manag:[13,39],interactionmanag:14,intermedi:22,interplo:22,is_insid:36,issu:42,item:34,its:[5,6],jairu:30,jani:18,june:30,just:42,kd_tran:3,keep:42,kei:[2,14,30],kind:[5,6],kp_rot:3,kp_tran:3,lat:[22,27],lat_lon:22,left:34,licens:[30,46],lightfv:[33,34,36],like:30,linear_refine_implicit:22,list:[2,18,29,30,42],littl:42,local:[37,42],locat:37,lon:[22,27],look:42,lookup:30,lower:34,magicattr:[13,28,39],mai:37,main:[39,44],maingui:37,maintain:42,major:42,make:[15,37,42],make_vehicles_idl:15,make_vehicles_nonidl:15,manag:2,mani:42,map:27,martin:30,mask:29,master:45,matrix:7,maximum:18,meet:42,member:2,messag:41,method:45,might:42,minim:37,minor:42,mit:[30,46],mkvirtualenv:42,modifi:[33,35],modul:44,more:42,most:45,move:[5,6],must:37,n_blue_team:14,n_red_team:14,n_split:22,n_team_blu:17,n_team_r:17,n_vehicl:2,name:[2,30,42],narrow:42,ndarrai:22,need:[30,37],nest:30,next:18,next_po:18,node:[1,22,27,29,30],node_info:27,non:[15,41],none:[1,2,32,41],notimplementederror:22,now:42,npt:22,number:[2,22,27],numpi:[5,6,7,22],obj:[30,31,38,39],obj_path:33,object:[2,3,5,6,8,9,14,15,17,18,24,26,30,34,36,37],obscur:37,occupi:37,offici:42,ojl:45,on_clos:37,on_key_press:[33,35],on_key_releas:35,on_mouse_drag:[33,35],on_mouse_mot:35,on_mouse_press:35,on_mouse_releas:[33,35],on_mouse_scrol:[33,35],onc:45,one:[2,37],onli:37,open:42,opengl:37,oper:[30,37,42],option:22,ordin:22,orient:[5,6],origin:42,other:[37,42],packag:46,page:[39,44],pan_rot:33,paramet:[2,5,6,18,22,27,29,30,41],pars:30,part:42,pass:42,patch:42,path:[15,18,22],path_point:22,path_vel:18,pathplan:22,peer:18,perform:[1,2,15,27],perform_action_alloc:2,perfrom:[2,27],perimet:27,physics_cli:[2,5,6,9,15,24],pip:[42,45],pitch:7,place:37,plan:[13,15,20,39],planner:[13,20,21,39],planning_primit:15,platform:37,platoon:[2,18,27],platoon_id:[5,6,27],platoon_typ:27,pleas:42,plot_path:15,point2d:34,point:[22,34],posit:[5,6,7,9,18,22,24,27,34],possibl:[37,42],post:42,postiion:2,prefer:45,prepare_project:[32,33],primit:[2,13,15,39],primitive_execut:2,primitive_manag:[13,39],primitivemanag:15,print_run:41,print_skip:41,print_warn:41,probabl:27,process:45,progress:27,project:[42,46,47],properti:[27,34],propos:42,pull:44,pull_request:42,push:42,push_ev:37,put:42,pybullet:22,pyglet:37,pypackag:46,pypi:[42,43],pytest:42,python:[42,45],radian:7,radiu:34,rais:22,ray_cast:26,readi:42,readm:42,readthedoc:46,recent:45,recommend:37,rectangl:34,red:29,red_act:[12,14],red_bas:[13,23,39],red_team:[13,14,39],red_team_act:1,red_team_po:29,redteam:24,refer:44,refin:22,region:[18,37],releas:[43,44],rememb:42,remind:42,remove_self:[5,6],render:37,repo:[42,45],repositori:45,repres:34,reproduc:42,request:44,requir:[2,27],reset:[5,6,9,12,24,32],resiz:[34,37],resourc:37,result:30,retriev:30,reward:[12,27],rgb:[26,27],right:34,ring:18,robot:[5,6,9,24],robot_id:[5,6],roll:7,rotat:[7,34],rotation_matrix:7,rst:42,run:[37,41,42,45],scene:[26,35],scope:42,screen:37,scroll_i:[33,35],scroll_x:[33,35],search:44,second:18,seg:27,segment:[22,26],self:[2,3,5,6,8,9,12,14,15,17,18,22,24,26,27,32,33,34,35,36,37],send:42,sensor:[13,39],set:[30,34,37,42],set_act:14,set_posit:[5,6],set_viewport:36,setattr:30,setup:[1,2,27,42,45],setup_bounding_box:36,shape:18,shape_util:[31,38,39],shasta:[42,45,47],shoot:[13,15,16,20,39],shoot_origin:17,shooting_primit:15,should:[5,6,22,42],show:37,simul:[22,46],singl:[5,6],skeleton:22,skip:41,skip_run:41,skipwith:41,softwar:[30,46],solid:18,sourc:[1,2,3,5,6,7,8,9,11,12,14,15,17,18,22,24,25,26,27,29,30,32,33,34,35,36,37,40,41,44],specif:[2,37],specifi:[2,5,6,18,22],sphere:34,sphinx:39,spline:22,split:22,stabl:44,start:[22,44],state:29,state_manag:[2,13,15,39],statemanag:27,step:[5,6,9,12,18,42],str:[2,5,6,18,27,41],string:30,subscript:30,subset:42,support:[30,42],sure:42,swarm:46,switch_to:37,symbol:[33,35],system:[22,37,42],tactic:2,tag:42,take:9,tarbal:45,target:[2,22,27],target_po:26,task:2,team:[14,29,46],team_typ:[1,5,6],templat:46,term:30,termin:45,test:42,test_shasta:42,text:32,than:22,thei:42,them:42,thi:[2,5,6,29,30,37,39,42,45,46],three:26,through:[42,45],time:18,timer:32,tip:44,titl:37,todo:46,top:34,tox:42,trajectori:22,transformation_matrix:7,transfrom:22,travi:42,troubleshoot:42,tupl:[26,30],two:22,type:[2,5,6,17,18,22,26,27,29,30,41,44],uav:[2,4,13,18,24,27,39],uav_p_1:2,uavpdcontrol:3,ugv:[2,4,5,13,18,24,27,39],under:30,unittest:42,updat:[12,18,32,33,42],update_act:14,upper:34,usag:44,use:[18,37,42,47],used:[2,18,30],useful:30,user:[31,37,38,39],using:[18,22,29],util:[4,10,13,23,31,38,39,44],uxv:18,uxv_p_:2,val:30,valid:30,valu:30,valueerror:22,variabl:2,vehicl:[2,5,6,15,18,27],vehicle_id:27,vehicles_id:2,vehicles_typ:2,veloc:18,version:42,via:37,viewport:[36,37],virtual:34,virtualenv:42,virtualenvwrapp:42,vmax:18,volunt:42,wai:42,want:42,web:42,websit:42,welcom:42,what:[5,6],when:[37,42],where:2,whether:[2,18,30,42],which:[2,5,6,27,29],whoever:42,widget:37,width:[34,36,37],window:37,window_height:37,window_width:37,work:42,world:34,would:42,x_po:32,y_po:32,yaml:22,yaw:[5,6,7],you:[30,37,42,45],your:[42,45],your_name_her:42,zero:22,zyx:7},titles:["__initi__","default_actions","envs.action_manager","envs.agents.control","envs.agents","envs.agents.uav","envs.agents.ugv","envs.agents.utils","envs.base_env","envs.blue_team.blue_base","envs.blue_team","envs.blue_team.utils","envs.enhance_env","envs","envs.interaction_manager","envs.primitive_manager","envs.primitives.engaging","envs.primitives.engaging.shooting","envs.primitives.formation.control","envs.primitives.formation","envs.primitives","envs.primitives.planning","envs.primitives.planning.planners","envs.red_team","envs.red_team.red_base","envs.red_team.utils","envs.sensors","envs.state_manager","envs.utils","envs.utils.interaction","envs.utils.magicattr","gui.core","gui.core.information","gui.core.obj","gui.core.shape_utils","gui.core.user","gui.core.utils","gui.gui_main","gui","API Reference","main","utils","Contributing","History","Welcome to shasta\u2019s documentation!","Installation","shasta","Usage"],titleterms:{"2020":43,"class":[2,3,5,6,8,9,12,14,15,17,18,22,24,26,27,32,33,34,35,36,37,41],"function":[1,7,9,11,24,25,29,30,34,36,37,41],__initi__:0,action_manag:2,agent:[3,4,5,6,7],api:39,base_env:8,blue_bas:9,blue_team:[9,10,11],bug:42,content:[1,2,3,5,6,7,8,9,11,12,14,15,17,18,22,24,25,26,27,29,30,32,33,34,35,36,37,40,41],contribut:42,control:[3,18],core:[31,32,33,34,35,36],credit:46,default_act:1,deploi:42,document:[42,44],engag:[16,17],enhance_env:12,env:[2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30],featur:[42,46],feedback:42,fix:42,format:[18,19],from:45,get:42,gui:[31,32,33,34,35,36,37,38],gui_main:37,guidelin:42,histori:43,implement:42,indic:44,inform:32,instal:45,interact:29,interaction_manag:14,magicattr:30,main:40,modul:[1,2,3,5,6,7,8,9,11,12,14,15,17,18,22,24,25,26,27,29,30,32,33,34,35,36,37,40,41],obj:33,plan:[21,22],planner:22,primit:[16,17,18,19,20,21,22],primitive_manag:15,pull:42,red_bas:24,red_team:[23,24,25],refer:39,releas:45,report:42,request:42,sensor:26,shape_util:34,shasta:[44,46],shoot:17,sourc:45,stabl:45,start:42,state_manag:27,submit:42,submodul:[4,10,13,16,19,21,23,28,31,38],subpackag:[13,20,38],tabl:44,tip:42,type:42,uav:5,ugv:6,usag:47,user:35,util:[7,11,25,28,29,30,36,41],welcom:44,write:42}}) \ No newline at end of file +Search.setIndex({"docnames": ["autoapi/index", "autoapi/shasta/actor/index", "autoapi/shasta/base_experiment/index", "autoapi/shasta/core/index", "autoapi/shasta/env/index", "autoapi/shasta/index", "autoapi/shasta/map/index", "autoapi/shasta/preprocessing/bake_texture/index", "autoapi/shasta/preprocessing/index", "autoapi/shasta/preprocessing/preprocess/index", "autoapi/shasta/preprocessing/utils/index", "autoapi/shasta/primitives/formation/index", "autoapi/shasta/primitives/index", "autoapi/shasta/primitives/path_planning/index", "autoapi/shasta/utils/index", "autoapi/shasta/visualize/index", "autoapi/shasta/world/index", "code_of_conduct", "contributing", "history", "index", "installation", "readme", "usage"], "filenames": ["autoapi/index.rst", "autoapi/shasta/actor/index.rst", "autoapi/shasta/base_experiment/index.rst", "autoapi/shasta/core/index.rst", "autoapi/shasta/env/index.rst", "autoapi/shasta/index.rst", "autoapi/shasta/map/index.rst", "autoapi/shasta/preprocessing/bake_texture/index.rst", "autoapi/shasta/preprocessing/index.rst", "autoapi/shasta/preprocessing/preprocess/index.rst", "autoapi/shasta/preprocessing/utils/index.rst", "autoapi/shasta/primitives/formation/index.rst", "autoapi/shasta/primitives/index.rst", "autoapi/shasta/primitives/path_planning/index.rst", "autoapi/shasta/utils/index.rst", "autoapi/shasta/visualize/index.rst", "autoapi/shasta/world/index.rst", "code_of_conduct.rst", "contributing.rst", "history.rst", "index.rst", "installation.rst", "readme.rst", "usage.rst"], "titles": ["API Reference", "shasta.actor", "shasta.base_experiment", "shasta.core", "shasta.env", "shasta", "shasta.map", "shasta.preprocessing.bake_texture", "shasta.preprocessing", "shasta.preprocessing.preprocess", "shasta.preprocessing.utils", "shasta.primitives.formation", "shasta.primitives", "shasta.primitives.path_planning", "shasta.utils", "shasta.visualize", "shasta.world", "Code of Conduct", "Contributing", "History", "Welcome to shasta\u2019s documentation!", "Installation", "Welcome", "Usage"], "terms": {"thi": [0, 1, 3, 4, 17, 18, 21, 22], "page": [0, 20], "contain": [0, 6, 11, 12], "auto": 0, "gener": [0, 12, 13, 18], "document": [0, 18, 22], "1": [0, 12, 13, 20], "shasta": [0, 18, 21, 23], "preprocess": [0, 5], "bake_textur": [0, 5, 8], "util": [0, 5, 8], "primit": [0, 5], "format": [0, 5, 12, 14, 18], "path_plan": [0, 5, 12], "actor": [0, 2, 3, 5, 14, 16], "base_experi": [0, 5], "core": [0, 2, 5], "env": [0, 5], "map": [0, 3, 5], "visual": [0, 5], "world": [0, 3, 5, 6], "creat": [0, 18], "sphinx": 0, "autoapi": 0, "baseactor": 1, "sourc": [1, 2, 3, 4, 6, 7, 9, 10, 11, 12, 13, 14, 15, 16, 20, 22], "base": [1, 2, 4, 11, 12, 13], "with_metaclass": [1, 2], "abcmeta": [1, 2], "object": [1, 2, 3, 11, 12, 13, 16], "singl": [1, 17, 18], "ugv": [1, 11, 12], "robot": [1, 22], "physics_cli": 1, "_load": 1, "fals": [1, 10], "load": [1, 6, 16], "pybullet": [1, 6, 12, 13, 22], "return": [1, 2, 3, 4, 6, 11, 12, 13, 14, 16], "list": [1, 2, 3, 11, 12, 16], "bodi": [1, 17], "id": [1, 3, 6, 12, 13], "get_actor_id": 1, "get": [1, 3, 6, 11, 12], "The": [1, 2, 3, 6, 12, 13, 16, 17, 21, 22], "simul": [1, 2, 3, 4, 18, 20], "type": [1, 3, 4, 6, 11, 12, 13, 14, 16], "int": [1, 3, 6, 12, 13, 14], "abstract": [1, 2, 9, 12, 13], "load_asset": 1, "arg": [1, 2], "kwarg": 1, "assest": 1, "reset": [1, 2, 3, 4], "rais": [1, 6, 12, 13], "notimplementederror": [1, 12, 13], "get_observ": [1, 2], "observ": [1, 2, 4], "from": [1, 3, 11, 12, 16, 17, 18, 20, 22], "apply_act": [1, 2], "appli": [1, 2, 17], "action": [1, 2, 4, 17], "destroi": 1, "baseexperi": 2, "config": [2, 3, 4, 6, 11, 12, 15, 16], "experiment_config": [2, 3, 6], "none": [2, 3, 4, 6, 9, 11, 12, 16], "karg": 2, "call": 2, "begin": 2, "each": [2, 12, 13], "time": [2, 11, 12, 17, 22], "i": [2, 4, 6, 11, 12, 13, 17, 18, 21, 22], "get_action_spac": 2, "space": [2, 17], "get_observation_spac": 2, "get_act": 2, "given": [2, 3, 6, 12, 13, 16], "group": [2, 3, 11, 12], "individu": [2, 17], "paramet": [2, 3, 6, 11, 12, 13, 14, 15, 16], "valu": [2, 3], "output": 2, "polici": 2, "function": [2, 12, 13, 18], "do": [2, 18], "all": [2, 3, 4, 6, 11, 12, 17, 18], "post": [2, 17], "process": [2, 18, 21], "sensor": [2, 3], "data": [2, 3, 18], "sensor_data": 2, "dictionari": [2, 6], "sensor_nam": 2, "should": [2, 12, 13, 18], "tupl": 2, "two": [2, 12, 13], "item": 2, "well": [2, 4, 17, 22], "variabl": 2, "addit": [2, 12, 13], "inform": [2, 6, 17, 22], "about": [2, 6, 17], "can": [2, 18, 21], "empti": 2, "get_done_statu": 2, "whether": [2, 11, 12], "experi": [2, 6, 17, 22], "ha": 2, "end": [2, 12, 13], "compute_reward": 2, "comput": [2, 4], "reward": [2, 4], "kill_all_serv": 3, "kill": 3, "pid": 3, "start": [3, 12, 13, 18, 22], "carla": 3, "shastacor": 3, "actor_group": [3, 4], "dict": [3, 4, 6], "respons": [3, 4, 18], "handl": [3, 4], "differ": [3, 17], "server": 3, "client": 3, "connect": 3, "spawn": [3, 6, 16], "_setup_physics_cli": 3, "setup": [3, 6, 10, 21], "physic": [3, 17], "get_physics_cli": 3, "ge": 3, "bullet": 3, "init_serv": 3, "random": [3, 6], "port": 3, "setup_experi": 3, "initi": [3, 6, 10, 14], "hero": 3, "get_world": 3, "get_map": 3, "vehicl": [3, 11, 12], "its": 3, "spawn_actor": [3, 16], "walker": 3, "also": [3, 17, 18, 22], "set": [3, 17, 22], "up": 3, "traffic": 3, "manag": 3, "get_actor_group": 3, "kei": 3, "get_actors_by_group_id": 3, "group_id": 3, "A": [3, 6, 11, 12, 13, 17], "tick": [3, 4], "perform": [3, 4, 6], "one": [3, 4], "move": 3, "close_simul": 3, "close": [3, 4], "shastaenv": 4, "gym": [4, 18, 22], "environ": [4, 17, 18, 22], "relat": [4, 18], "step": [4, 11, 12], "train": 4, "descript": [4, 18], "order": 4, "new": [4, 18], "overrid": 4, "your": [4, 18, 21, 22], "subclass": 4, "ani": [4, 17, 18], "necessari": 4, "cleanup": 4, "automat": 4, "themselv": 4, "when": [4, 17, 22], "garbag": 4, "collect": [4, 22], "program": 4, "exit": 4, "directori": 6, "assets_root": 6, "_affine_transformation_and_graph": 6, "convers": 6, "lat": 6, "lon": 6, "cartesian": [6, 12, 13, 14], "_setup_building_info": 6, "e": [6, 17], "g": 6, "yaml": [6, 15], "file": [6, 15], "provid": [6, 15, 17, 22], "configur": [6, 15, 22], "filenotfounderror": 6, "If": [6, 18, 21, 22], "found": 6, "error": 6, "get_affine_transformation_and_graph": 6, "transform": 6, "matrix": 6, "node": [6, 12, 13, 15], "graph": [6, 12, 13, 15], "arrai": [6, 11, 12, 13, 14, 16], "get_node_graph": 6, "networkx": 6, "get_node_info": 6, "node_index": 6, "convert_to_lat_lon": 6, "point": [6, 12, 13, 14, 16], "convert": 6, "co": [6, 12, 13], "ordin": [6, 12, 13], "numpi": 6, "lat_lon": 6, "convert_to_cartesian": 6, "coordin": [6, 12, 13], "get_building_info": 6, "building_index": 6, "build": [6, 10], "perimet": 6, "posit": [6, 11, 12, 13, 14, 16, 17], "number": [6, 12, 13, 14], "floor": 6, "get_lat_lon_spawn_point": 6, "n_point": 6, "5": 6, "latitud": 6, "longitud": 6, "option": [6, 12, 13, 16], "default": [6, 12, 13, 16], "an": [6, 11, 12, 13, 14, 16, 17, 18, 22], "get_cartesian_node_posit": 6, "index": [6, 20], "get_lat_lon_node_posit": 6, "get_cartesian_spawn_point": 6, "get_all_build": 6, "datafram": 6, "get_transformation_matrix": 6, "op": 7, "scene": 7, "mesh": 7, "ob": 7, "ctx": 7, "imag": [7, 12, 13], "matslot": 7, "mat": 7, "tex": 7, "slot": 7, "osm_map_path": 9, "blender_path": 9, "_save_building_info": 9, "_save_graph_info": 9, "run_process": 9, "extract_building_info": 10, "osm_path": 10, "save_fig": 10, "perfrom": 10, "save_buildings_map": 10, "extract_path_info": 10, "control": [11, 12], "us": [11, 12, 13, 17, 22, 23], "region": [11, 12], "shape": [11, 12], "code": [11, 12, 20], "apurvakumar": [11, 12], "jani": [11, 12], "date": [11, 12], "18": [11, 12], "9": [11, 12], "2019": [11, 12], "calculate_vel": [11, 12], "dt": [11, 12], "all_drones_po": [11, 12], "centroid_po": [11, 12], "path_vel": [11, 12], "vmax": [11, 12], "formation_typ": [11, 12], "calcul": [11, 12], "veloc": [11, 12], "depend": [11, 12, 22], "peer": [11, 12], "instanc": [11, 12, 17, 18], "uxv": [11, 12], "agent": [11, 12], "float": [11, 12, 14, 16], "durat": [11, 12], "second": [11, 12], "next": [11, 12], "aarrai": [11, 12], "platoon": [11, 12], "specifi": [11, 12, 13, 17], "centroid": [11, 12], "path": [11, 12, 13, 16], "current": [11, 12], "maximum": [11, 12], "str": [11, 12, 16], "solid": [11, 12], "ring": [11, 12, 14], "updat": [11, 12], "execut": [11, 12, 13], "next_po": [11, 12], "uav": [11, 12], "x": [11, 12, 13], "y": [11, 12], "z": [11, 12], "distanc": [11, 12, 16], "pathplan": [12, 13], "env_map": [12, 13], "planner": [12, 13], "skeleton": [12, 13], "spline": [12, 13], "linear_refine_implicit": [12, 13], "n": [12, 13, 14], "2d": [12, 13], "ndarrai": [12, 13], "npt": [12, 13], "m": [12, 13, 18], "dimens": [12, 13], "insert": [12, 13], "2": [12, 13], "trajectori": [12, 13], "segment": [12, 13], "input": [12, 13], "intermedi": [12, 13], "between": [12, 13], "consecut": [12, 13], "interplo": [12, 13], "implement": [12, 13], "3d": [12, 13], "higher": [12, 13], "valueerror": [12, 13], "great": [12, 13], "than": [12, 13, 18], "zero": [12, 13], "find_path": [12, 13], "n_split": [12, 13], "find": [12, 13, 18], "split": [12, 13], "refin": [12, 13], "path_point": [12, 13], "system": [12, 13], "get_initial_posit": 14, "cartesian_po": 14, "r": [14, 22], "form": 14, "po": 14, "radiu": 14, "circl": 14, "plot_nod": 15, "load_world_model": 16, "read_path": 16, "urdf": 16, "model": 16, "change_camera_posit": 16, "camera_dist": 16, "150": 16, "0": [16, 17, 20], "camera_yaw": 16, "camera_pitch": 16, "89": 16, "999": 16, "camera_target_posit": 16, "30": 16, "chang": [16, 18], "camera": 16, "target": 16, "yaw": 16, "pitch": 16, "spawn_point": 16, "spawm": 16, "we": [17, 22], "member": 17, "leader": 17, "make": [17, 18], "particip": [17, 18, 22], "commun": [17, 18, 22], "harass": 17, "free": [17, 22], "everyon": [17, 18, 22], "regardless": 17, "ag": 17, "size": 17, "visibl": 17, "invis": 17, "disabl": 17, "ethnic": 17, "sex": 17, "characterist": 17, "gender": 17, "ident": 17, "express": 17, "level": 17, "educ": 17, "socio": 17, "econom": 17, "statu": 17, "nation": 17, "person": 17, "appear": 17, "race": 17, "religion": 17, "sexual": 17, "orient": 17, "act": 17, "interact": [17, 22], "wai": 17, "contribut": [17, 20], "open": [17, 22], "welcom": [17, 18], "divers": 17, "inclus": [17, 18, 22], "healthi": 17, "exampl": [17, 18], "behavior": [17, 22], "includ": [17, 18], "demonstr": 17, "empathi": 17, "kind": 17, "toward": 17, "other": 17, "peopl": 17, "Being": 17, "respect": [17, 18, 22], "opinion": 17, "viewpoint": 17, "give": 17, "gracefulli": 17, "accept": 17, "construct": 17, "feedback": [17, 18], "apolog": 17, "those": 17, "affect": 17, "mistak": 17, "learn": [17, 22], "focus": 17, "what": 17, "best": 17, "just": 17, "u": 17, "overal": 17, "unaccept": 17, "languag": 17, "imageri": 17, "attent": [17, 18], "advanc": 17, "troll": 17, "insult": 17, "derogatori": 17, "comment": [17, 18], "polit": 17, "attack": 17, "public": [17, 21], "privat": 17, "publish": 17, "email": 17, "address": [17, 18], "without": 17, "explicit": 17, "permiss": 17, "which": [17, 22], "could": 17, "reason": 17, "consid": [17, 18], "inappropri": 17, "profession": 17, "ar": [17, 18, 22], "clarifi": 17, "take": [17, 18], "appropri": 17, "fair": 17, "thei": [17, 18], "deem": 17, "threaten": 17, "offens": 17, "harm": 17, "have": [17, 21], "right": 17, "remov": 17, "edit": 17, "reject": 17, "commit": [17, 18], "wiki": 17, "issu": [17, 18], "align": 17, "moder": 17, "decis": 17, "within": 17, "offici": 17, "repres": 17, "mail": 17, "via": 17, "social": 17, "media": 17, "account": [17, 18], "appoint": 17, "onlin": 17, "offlin": 17, "event": 17, "abus": 17, "otherwis": 17, "mai": 17, "report": 17, "http": [17, 18, 22], "www": 17, "context": 17, "lab": [17, 22], "com": [17, 18, 21, 22], "contact": 17, "complaint": 17, "review": [17, 18, 22], "investig": 17, "promptli": 17, "fairli": 17, "oblig": 17, "privaci": 17, "secur": 17, "incid": 17, "follow": [17, 22], "impact": 17, "determin": 17, "consequ": 17, "violat": 17, "unprofession": 17, "unwelcom": 17, "written": 17, "clariti": 17, "around": 17, "natur": 17, "explan": 17, "why": 17, "wa": 17, "apologi": 17, "request": [17, 18], "through": [17, 21], "seri": 17, "continu": 17, "No": 17, "involv": [17, 18], "unsolicit": 17, "period": 17, "avoid": [17, 18], "extern": 17, "channel": 17, "like": 17, "term": 17, "lead": 17, "seriou": 17, "sustain": 17, "sort": 17, "allow": 17, "dure": [17, 18], "pattern": 17, "aggress": 17, "disparag": 17, "class": [17, 18], "adapt": 17, "version": 17, "avail": 17, "org": 17, "code_of_conduct": 17, "html": 17, "were": 17, "inspir": 17, "mozilla": 17, "": 17, "ladder": 17, "For": 17, "answer": 17, "common": 17, "question": 17, "see": 17, "faq": 17, "translat": 17, "thank": 18, "you": [18, 21, 22], "interest": [18, 22], "xplane": [18, 22], "collector": 18, "openai": [18, 22], "interfac": [18, 22], "project": [18, 22, 23], "help": 18, "improv": [18, 22], "enhanc": 18, "pleas": [18, 22], "moment": 18, "befor": 18, "submit": 18, "read": 18, "our": [18, 22], "expect": 18, "contributor": [18, 20], "ensur": 18, "fork": 18, "repositori": [18, 21, 22], "github": [18, 21, 22], "clone": [18, 21, 22], "local": [18, 22], "machin": [18, 22], "git": [18, 21, 22], "ub": [18, 22], "nsf": [18, 22], "hsi": [18, 22], "branch": 18, "checkout": 18, "b": 18, "featur": 18, "fix": 18, "clear": 18, "messag": 18, "add": 18, "push": 18, "origin": 18, "pull": 18, "pr": 18, "main": [18, 22], "titl": 18, "clearli": 18, "explain": 18, "purpos": [18, 22], "refer": [18, 20], "relev": 18, "applic": [18, 20], "discuss": 18, "onc": 18, "approv": 18, "merg": 18, "check": 18, "section": 18, "exist": 18, "need": [18, 22], "potenti": 18, "re": [18, 22], "ad": 18, "signific": 18, "propos": 18, "first": [18, 19], "reach": 18, "out": 18, "maintain": [18, 22], "write": 18, "comprehens": 18, "introduc": 18, "test": 18, "thoroughli": 18, "work": 18, "break": 18, "Be": 18, "patient": 18, "valuabl": 18, "qualiti": 18, "against": 18, "describ": 18, "pep": 18, "8": 18, "camelcas": 18, "snake_cas": 18, "n_sampl": 18, "rather": 18, "nsampl": 18, "charact": 18, "unless": 18, "insid": 18, "In": 18, "most": [18, 21], "case": 18, "look": 18, "figur": 18, "t": [18, 21], "consult": 18, "more": 18, "complic": 18, "embed": 18, "cite": 18, "render": 18, "mathemat": 18, "By": 18, "agre": 18, "licens": 18, "under": [18, 22], "apach": 18, "along": 18, "rest": 18, "nuplan": 18, "even": 18, "better": 18, "releas": [19, 20], "pypi": 19, "human": 20, "swarm": 20, "team": 20, "instal": 20, "stabl": 20, "guidelin": [20, 22], "conduct": 20, "coven": 20, "histori": 20, "2020": 20, "11": 20, "13": 20, "api": 20, "modul": 20, "search": 20, "To": [21, 23], "run": [21, 22], "command": [21, 22], "termin": 21, "pip": [21, 22], "prefer": 21, "method": 21, "alwai": 21, "recent": 21, "don": 21, "python": [21, 22], "guid": 21, "download": 21, "repo": 21, "either": 21, "hemumanju": 21, "py": [21, 22], "screenshot": 22, "illustr": 22, "onli": 22, "platform": 22, "studi": 22, "unifi": 22, "algorithm": 22, "uniqu": 22, "abil": 22, "physiolog": 22, "synchron": 22, "realist": 22, "power": 22, "signal": 22, "eeg": 22, "emg": 22, "ey": 22, "movement": 22, "etc": 22, "facil": 22, "built": 22, "stream": 22, "layer": 22, "reinforc": 22, "highli": 22, "customiz": 22, "easi": 22, "codebas": 22, "requir": 22, "txt": 22, "launch": 22, "want": 22, "particular": 22, "block": 22, "replac": 22, "skip": 22, "explor": 22, "adjust": 22, "fly": 22, "expand": 22, "adher": 22, "strive": 22, "mit": 22, "mean": 22, "modifi": 22, "distribut": 22, "hope": 22, "enjoi": 22, "happi": 22, "import": 23}, "objects": {"": [[5, 0, 0, "-", "shasta"]], "shasta": [[1, 0, 0, "-", "actor"], [2, 0, 0, "-", "base_experiment"], [3, 0, 0, "-", "core"], [4, 0, 0, "-", "env"], [6, 0, 0, "-", "map"], [8, 0, 0, "-", "preprocessing"], [12, 0, 0, "-", "primitives"], [14, 0, 0, "-", "utils"], [15, 0, 0, "-", "visualize"], [16, 0, 0, "-", "world"]], "shasta.actor": [[1, 1, 1, "", "BaseActor"]], "shasta.actor.BaseActor": [[1, 2, 1, "", "_load"], [1, 3, 1, "", "_loaded"], [1, 2, 1, "", "apply_action"], [1, 2, 1, "", "destroy"], [1, 2, 1, "", "get_actor_id"], [1, 2, 1, "", "get_observation"], [1, 2, 1, "", "load_asset"], [1, 3, 1, "", "physics_client"], [1, 2, 1, "", "reset"]], "shasta.base_experiment": [[2, 1, 1, "", "BaseExperiment"]], "shasta.base_experiment.BaseExperiment": [[2, 2, 1, "", "apply_actions"], [2, 2, 1, "", "compute_reward"], [2, 2, 1, "", "get_action_space"], [2, 2, 1, "", "get_actions"], [2, 2, 1, "", "get_done_status"], [2, 2, 1, "", "get_observation"], [2, 2, 1, "", "get_observation_space"], [2, 2, 1, "", "reset"]], "shasta.core": [[3, 1, 1, "", "ShastaCore"], [3, 4, 1, "", "kill_all_servers"]], "shasta.core.ShastaCore": [[3, 2, 1, "", "_setup_physics_client"], [3, 2, 1, "", "close_simulation"], [3, 2, 1, "", "get_actor_groups"], [3, 2, 1, "", "get_actors_by_group_id"], [3, 2, 1, "", "get_map"], [3, 2, 1, "", "get_physics_client"], [3, 2, 1, "", "get_world"], [3, 2, 1, "", "init_server"], [3, 2, 1, "", "reset"], [3, 2, 1, "", "setup_experiment"], [3, 2, 1, "", "spawn_actors"], [3, 2, 1, "", "tick"]], "shasta.env": [[4, 1, 1, "", "ShastaEnv"]], "shasta.env.ShastaEnv": [[4, 2, 1, "", "close"], [4, 2, 1, "", "reset"], [4, 2, 1, "", "step"]], "shasta.map": [[6, 1, 1, "", "Map"], [6, 5, 1, "", "assets_root"], [6, 5, 1, "", "directories"]], "shasta.map.Map": [[6, 2, 1, "", "_affine_transformation_and_graph"], [6, 2, 1, "", "_setup_building_info"], [6, 2, 1, "", "convert_to_cartesian"], [6, 2, 1, "", "convert_to_lat_lon"], [6, 2, 1, "", "get_affine_transformation_and_graph"], [6, 2, 1, "", "get_all_buildings"], [6, 2, 1, "", "get_building_info"], [6, 2, 1, "", "get_cartesian_node_position"], [6, 2, 1, "", "get_cartesian_spawn_points"], [6, 2, 1, "", "get_lat_lon_node_position"], [6, 2, 1, "", "get_lat_lon_spawn_points"], [6, 2, 1, "", "get_node_graph"], [6, 2, 1, "", "get_node_info"], [6, 2, 1, "", "get_transformation_matrix"], [6, 2, 1, "", "setup"]], "shasta.preprocessing": [[7, 0, 0, "-", "bake_texture"], [9, 0, 0, "-", "preprocess"], [10, 0, 0, "-", "utils"]], "shasta.preprocessing.bake_texture": [[7, 5, 1, "", "ctx"], [7, 5, 1, "", "image"], [7, 5, 1, "", "mat"], [7, 5, 1, "", "matslots"], [7, 5, 1, "", "mesh"], [7, 5, 1, "", "obs"], [7, 5, 1, "", "ops"], [7, 5, 1, "id0", "scene"], [7, 5, 1, "", "slot"], [7, 5, 1, "", "tex"]], "shasta.preprocessing.preprocess": [[9, 1, 1, "", "PreProcess"], [9, 5, 1, "", "preprocess"]], "shasta.preprocessing.preprocess.PreProcess": [[9, 2, 1, "", "_save_building_info"], [9, 2, 1, "", "_save_graph_info"], [9, 2, 1, "", "run_processing"]], "shasta.preprocessing.utils": [[10, 4, 1, "", "extract_building_info"], [10, 4, 1, "", "extract_path_info"], [10, 4, 1, "", "save_buildings_map"]], "shasta.primitives": [[12, 1, 1, "", "Formation"], [12, 1, 1, "", "PathPlanning"], [11, 0, 0, "-", "formation"], [13, 0, 0, "-", "path_planning"]], "shasta.primitives.Formation": [[12, 2, 1, "", "calculate_vel"], [12, 2, 1, "", "execute"]], "shasta.primitives.PathPlanning": [[12, 2, 1, "", "execute"], [12, 2, 1, "", "find_path"], [12, 2, 1, "", "linear_refine_implicit"]], "shasta.primitives.formation": [[11, 1, 1, "", "Formation"]], "shasta.primitives.formation.Formation": [[11, 2, 1, "", "calculate_vel"], [11, 2, 1, "", "execute"]], "shasta.primitives.path_planning": [[13, 1, 1, "", "PathPlanning"]], "shasta.primitives.path_planning.PathPlanning": [[13, 2, 1, "", "execute"], [13, 2, 1, "", "find_path"], [13, 2, 1, "", "linear_refine_implicit"]], "shasta.utils": [[14, 4, 1, "", "get_initial_positions"]], "shasta.visualize": [[15, 4, 1, "", "plot_nodes"]], "shasta.world": [[16, 1, 1, "", "World"]], "shasta.world.World": [[16, 2, 1, "", "change_camera_position"], [16, 2, 1, "", "load_world_model"], [16, 2, 1, "", "spawn_actor"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:method", "3": "py:attribute", "4": "py:function", "5": "py:data"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "method", "Python method"], "3": ["py", "attribute", "Python attribute"], "4": ["py", "function", "Python function"], "5": ["py", "data", "Python data"]}, "titleterms": {"api": 0, "refer": 0, "shasta": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 20, 22], "actor": 1, "modul": [1, 2, 3, 4, 6, 7, 9, 10, 11, 13, 14, 15, 16], "content": [1, 2, 3, 4, 6, 7, 9, 10, 11, 12, 13, 14, 15, 16, 20, 22], "class": [1, 2, 3, 4, 6, 9, 11, 12, 13, 16], "base_experi": 2, "core": 3, "function": [3, 10, 14, 15], "env": 4, "subpackag": 5, "submodul": [5, 8, 12], "map": 6, "attribut": [6, 9, 17, 18], "preprocess": [7, 8, 9, 10], "bake_textur": 7, "util": [10, 14], "primit": [11, 12, 13], "format": 11, "packag": 12, "path_plan": 13, "visual": 15, "world": 16, "code": [17, 18, 22], "conduct": [17, 18, 22], "contributor": 17, "coven": 17, "our": 17, "pledg": 17, "standard": [17, 18], "enforc": 17, "respons": 17, "scope": 17, "guidelin": [17, 18], "1": [17, 19], "correct": 17, "2": 17, "warn": 17, "3": 17, "temporari": 17, "ban": 17, "4": 17, "perman": 17, "contribut": [18, 22], "how": 18, "tip": 18, "style": 18, "adher": 18, "python": 18, "us": 18, "consist": 18, "variabl": 18, "name": 18, "we": 18, "mostli": 18, "follow": 18, "numpi": 18, "docstr": 18, "histori": 19, "0": 19, "2020": 19, "11": 19, "13": 19, "welcom": [20, 22], "": 20, "document": 20, "indic": 20, "tabl": [20, 22], "instal": [21, 22], "stabl": 21, "releas": 21, "from": 21, "sourc": 21, "simul": 22, "human": 22, "swarm": 22, "team": 22, "applic": 22, "featur": 22, "usag": [22, 23], "licens": 22}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 8, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1, "sphinx": 57}, "alltitles": {"API Reference": [[0, "api-reference"]], "shasta.actor": [[1, "module-shasta.actor"]], "Module Contents": [[1, "module-contents"], [2, "module-contents"], [3, "module-contents"], [4, "module-contents"], [6, "module-contents"], [7, "module-contents"], [9, "module-contents"], [10, "module-contents"], [11, "module-contents"], [13, "module-contents"], [14, "module-contents"], [15, "module-contents"], [16, "module-contents"]], "Classes": [[1, "classes"], [2, "classes"], [3, "classes"], [4, "classes"], [6, "classes"], [9, "classes"], [11, "classes"], [12, "classes"], [13, "classes"], [16, "classes"]], "shasta.base_experiment": [[2, "module-shasta.base_experiment"]], "shasta.core": [[3, "module-shasta.core"]], "Functions": [[3, "functions"], [10, "functions"], [14, "functions"], [15, "functions"]], "shasta.env": [[4, "module-shasta.env"]], "shasta": [[5, "module-shasta"]], "Subpackages": [[5, "subpackages"]], "Submodules": [[5, "submodules"], [8, "submodules"], [12, "submodules"]], "shasta.map": [[6, "module-shasta.map"]], "Attributes": [[6, "attributes"], [9, "attributes"]], "shasta.preprocessing.bake_texture": [[7, "module-shasta.preprocessing.bake_texture"]], "shasta.preprocessing": [[8, "module-shasta.preprocessing"]], "shasta.preprocessing.preprocess": [[9, "module-shasta.preprocessing.preprocess"]], "shasta.preprocessing.utils": [[10, "module-shasta.preprocessing.utils"]], "shasta.primitives.formation": [[11, "module-shasta.primitives.formation"]], "shasta.primitives": [[12, "module-shasta.primitives"]], "Package Contents": [[12, "package-contents"]], "shasta.primitives.path_planning": [[13, "module-shasta.primitives.path_planning"]], "shasta.utils": [[14, "module-shasta.utils"]], "shasta.visualize": [[15, "module-shasta.visualize"]], "shasta.world": [[16, "module-shasta.world"]], "Code of Conduct": [[17, "code-of-conduct"], [18, "code-of-conduct"], [22, "code-of-conduct"]], "Contributor Covenant Code of Conduct": [[17, "contributor-covenant-code-of-conduct"]], "Our Pledge": [[17, "our-pledge"]], "Our Standards": [[17, "our-standards"]], "Enforcement Responsibilities": [[17, "enforcement-responsibilities"]], "Scope": [[17, "scope"]], "Enforcement": [[17, "enforcement"]], "Enforcement Guidelines": [[17, "enforcement-guidelines"]], "1. Correction": [[17, "correction"]], "2. Warning": [[17, "warning"]], "3. Temporary Ban": [[17, "temporary-ban"]], "4. Permanent Ban": [[17, "permanent-ban"]], "Attribution": [[17, "attribution"], [18, "attribution"]], "Contributing": [[18, "contributing"], [22, "contributing"]], "Contributing Guidelines": [[18, "contributing-guidelines"]], "How to Contribute": [[18, "how-to-contribute"]], "Tips for Contributing": [[18, "tips-for-contributing"]], "Code style": [[18, "code-style"]], "Adhere to standard Python style guidelines": [[18, "adhere-to-standard-python-style-guidelines"]], "Use consistent variable naming": [[18, "use-consistent-variable-naming"]], "We (mostly) follow NumPy style for docstrings": [[18, "we-mostly-follow-numpy-style-for-docstrings"]], "History": [[19, "history"]], "0.1.0 (2020-11-13)": [[19, "id1"]], "Welcome to shasta\u2019s documentation!": [[20, "welcome-to-shasta-s-documentation"]], "Contents:": [[20, null]], "Indices and tables": [[20, "indices-and-tables"]], "Installation": [[21, "installation"], [22, "installation"]], "Stable release": [[21, "stable-release"]], "From sources": [[21, "from-sources"]], "Welcome": [[22, "welcome"]], "SHaSTA (Simulator for Human and Swarm Team Applications)": [[22, "shasta-simulator-for-human-and-swarm-team-applications"]], "Table of Contents": [[22, "table-of-contents"]], "Features": [[22, "features"]], "Usage": [[22, "usage"], [23, "usage"]], "License": [[22, "license"]]}, "indexentries": {"baseactor (class in shasta.actor)": [[1, "shasta.actor.BaseActor"]], "_load() (baseactor method)": [[1, "shasta.actor.BaseActor._load"]], "_loaded (baseactor attribute)": [[1, "shasta.actor.BaseActor._loaded"]], "apply_action() (baseactor method)": [[1, "shasta.actor.BaseActor.apply_action"]], "destroy() (baseactor method)": [[1, "shasta.actor.BaseActor.destroy"]], "get_actor_id() (baseactor method)": [[1, "shasta.actor.BaseActor.get_actor_id"]], "get_observation() (baseactor method)": [[1, "shasta.actor.BaseActor.get_observation"]], "load_asset() (baseactor method)": [[1, "shasta.actor.BaseActor.load_asset"]], "module": [[1, "module-shasta.actor"], [2, "module-shasta.base_experiment"], [3, "module-shasta.core"], [4, "module-shasta.env"], [5, "module-shasta"], [6, "module-shasta.map"], [7, "module-shasta.preprocessing.bake_texture"], [8, "module-shasta.preprocessing"], [9, "module-shasta.preprocessing.preprocess"], [10, "module-shasta.preprocessing.utils"], [11, "module-shasta.primitives.formation"], [12, "module-shasta.primitives"], [13, "module-shasta.primitives.path_planning"], [14, "module-shasta.utils"], [15, "module-shasta.visualize"], [16, "module-shasta.world"]], "physics_client (baseactor attribute)": [[1, "shasta.actor.BaseActor.physics_client"]], "reset() (baseactor method)": [[1, "shasta.actor.BaseActor.reset"]], "shasta.actor": [[1, "module-shasta.actor"]], "baseexperiment (class in shasta.base_experiment)": [[2, "shasta.base_experiment.BaseExperiment"]], "apply_actions() (baseexperiment method)": [[2, "shasta.base_experiment.BaseExperiment.apply_actions"]], "compute_reward() (baseexperiment method)": [[2, "shasta.base_experiment.BaseExperiment.compute_reward"]], "get_action_space() (baseexperiment method)": [[2, "shasta.base_experiment.BaseExperiment.get_action_space"]], "get_actions() (baseexperiment method)": [[2, "shasta.base_experiment.BaseExperiment.get_actions"]], "get_done_status() (baseexperiment method)": [[2, "shasta.base_experiment.BaseExperiment.get_done_status"]], "get_observation() (baseexperiment method)": [[2, "shasta.base_experiment.BaseExperiment.get_observation"]], "get_observation_space() (baseexperiment method)": [[2, "shasta.base_experiment.BaseExperiment.get_observation_space"]], "reset() (baseexperiment method)": [[2, "shasta.base_experiment.BaseExperiment.reset"]], "shasta.base_experiment": [[2, "module-shasta.base_experiment"]], "shastacore (class in shasta.core)": [[3, "shasta.core.ShastaCore"]], "_setup_physics_client() (shastacore method)": [[3, "shasta.core.ShastaCore._setup_physics_client"]], "close_simulation() (shastacore method)": [[3, "shasta.core.ShastaCore.close_simulation"]], "get_actor_groups() (shastacore method)": [[3, "shasta.core.ShastaCore.get_actor_groups"]], "get_actors_by_group_id() (shastacore method)": [[3, "shasta.core.ShastaCore.get_actors_by_group_id"]], "get_map() (shastacore method)": [[3, "shasta.core.ShastaCore.get_map"]], "get_physics_client() (shastacore method)": [[3, "shasta.core.ShastaCore.get_physics_client"]], "get_world() (shastacore method)": [[3, "shasta.core.ShastaCore.get_world"]], "init_server() (shastacore method)": [[3, "shasta.core.ShastaCore.init_server"]], "kill_all_servers() (in module shasta.core)": [[3, "shasta.core.kill_all_servers"]], "reset() (shastacore method)": [[3, "shasta.core.ShastaCore.reset"]], "setup_experiment() (shastacore method)": [[3, "shasta.core.ShastaCore.setup_experiment"]], "shasta.core": [[3, "module-shasta.core"]], "spawn_actors() (shastacore method)": [[3, "shasta.core.ShastaCore.spawn_actors"]], "tick() (shastacore method)": [[3, "shasta.core.ShastaCore.tick"]], "shastaenv (class in shasta.env)": [[4, "shasta.env.ShastaEnv"]], "close() (shastaenv method)": [[4, "shasta.env.ShastaEnv.close"]], "reset() (shastaenv method)": [[4, "shasta.env.ShastaEnv.reset"]], "shasta.env": [[4, "module-shasta.env"]], "step() (shastaenv method)": [[4, "shasta.env.ShastaEnv.step"]], "shasta": [[5, "module-shasta"]], "map (class in shasta.map)": [[6, "shasta.map.Map"]], "_affine_transformation_and_graph() (map method)": [[6, "shasta.map.Map._affine_transformation_and_graph"]], "_setup_building_info() (map method)": [[6, "shasta.map.Map._setup_building_info"]], "assets_root (in module shasta.map)": [[6, "shasta.map.assets_root"]], "convert_to_cartesian() (map method)": [[6, "shasta.map.Map.convert_to_cartesian"]], "convert_to_lat_lon() (map method)": [[6, "shasta.map.Map.convert_to_lat_lon"]], "directories (in module shasta.map)": [[6, "shasta.map.directories"]], "get_affine_transformation_and_graph() (map method)": [[6, "shasta.map.Map.get_affine_transformation_and_graph"]], "get_all_buildings() (map method)": [[6, "shasta.map.Map.get_all_buildings"]], "get_building_info() (map method)": [[6, "shasta.map.Map.get_building_info"]], "get_cartesian_node_position() (map method)": [[6, "shasta.map.Map.get_cartesian_node_position"]], "get_cartesian_spawn_points() (map method)": [[6, "shasta.map.Map.get_cartesian_spawn_points"]], "get_lat_lon_node_position() (map method)": [[6, "shasta.map.Map.get_lat_lon_node_position"]], "get_lat_lon_spawn_points() (map method)": [[6, "shasta.map.Map.get_lat_lon_spawn_points"]], "get_node_graph() (map method)": [[6, "shasta.map.Map.get_node_graph"]], "get_node_info() (map method)": [[6, "shasta.map.Map.get_node_info"]], "get_transformation_matrix() (map method)": [[6, "shasta.map.Map.get_transformation_matrix"]], "setup() (map method)": [[6, "shasta.map.Map.setup"]], "shasta.map": [[6, "module-shasta.map"]], "ctx (in module shasta.preprocessing.bake_texture)": [[7, "shasta.preprocessing.bake_texture.ctx"]], "image (in module shasta.preprocessing.bake_texture)": [[7, "shasta.preprocessing.bake_texture.image"]], "mat (in module shasta.preprocessing.bake_texture)": [[7, "shasta.preprocessing.bake_texture.mat"]], "matslots (in module shasta.preprocessing.bake_texture)": [[7, "shasta.preprocessing.bake_texture.matslots"]], "mesh (in module shasta.preprocessing.bake_texture)": [[7, "shasta.preprocessing.bake_texture.mesh"]], "obs (in module shasta.preprocessing.bake_texture)": [[7, "shasta.preprocessing.bake_texture.obs"]], "ops (in module shasta.preprocessing.bake_texture)": [[7, "shasta.preprocessing.bake_texture.ops"]], "scene (in module shasta.preprocessing.bake_texture)": [[7, "id0"], [7, "shasta.preprocessing.bake_texture.scene"]], "shasta.preprocessing.bake_texture": [[7, "module-shasta.preprocessing.bake_texture"]], "slot (in module shasta.preprocessing.bake_texture)": [[7, "shasta.preprocessing.bake_texture.slot"]], "tex (in module shasta.preprocessing.bake_texture)": [[7, "shasta.preprocessing.bake_texture.tex"]], "shasta.preprocessing": [[8, "module-shasta.preprocessing"]], "preprocess (class in shasta.preprocessing.preprocess)": [[9, "shasta.preprocessing.preprocess.PreProcess"]], "_save_building_info() (preprocess method)": [[9, "shasta.preprocessing.preprocess.PreProcess._save_building_info"]], "_save_graph_info() (preprocess method)": [[9, "shasta.preprocessing.preprocess.PreProcess._save_graph_info"]], "preprocess (in module shasta.preprocessing.preprocess)": [[9, "shasta.preprocessing.preprocess.preprocess"]], "run_processing() (preprocess method)": [[9, "shasta.preprocessing.preprocess.PreProcess.run_processing"]], "shasta.preprocessing.preprocess": [[9, "module-shasta.preprocessing.preprocess"]], "extract_building_info() (in module shasta.preprocessing.utils)": [[10, "shasta.preprocessing.utils.extract_building_info"]], "extract_path_info() (in module shasta.preprocessing.utils)": [[10, "shasta.preprocessing.utils.extract_path_info"]], "save_buildings_map() (in module shasta.preprocessing.utils)": [[10, "shasta.preprocessing.utils.save_buildings_map"]], "shasta.preprocessing.utils": [[10, "module-shasta.preprocessing.utils"]], "formation (class in shasta.primitives.formation)": [[11, "shasta.primitives.formation.Formation"]], "calculate_vel() (formation method)": [[11, "shasta.primitives.formation.Formation.calculate_vel"], [12, "shasta.primitives.Formation.calculate_vel"]], "execute() (formation method)": [[11, "shasta.primitives.formation.Formation.execute"], [12, "shasta.primitives.Formation.execute"]], "shasta.primitives.formation": [[11, "module-shasta.primitives.formation"]], "formation (class in shasta.primitives)": [[12, "shasta.primitives.Formation"]], "pathplanning (class in shasta.primitives)": [[12, "shasta.primitives.PathPlanning"]], "execute() (pathplanning method)": [[12, "shasta.primitives.PathPlanning.execute"], [13, "shasta.primitives.path_planning.PathPlanning.execute"]], "find_path() (pathplanning method)": [[12, "shasta.primitives.PathPlanning.find_path"], [13, "shasta.primitives.path_planning.PathPlanning.find_path"]], "linear_refine_implicit() (pathplanning method)": [[12, "shasta.primitives.PathPlanning.linear_refine_implicit"], [13, "shasta.primitives.path_planning.PathPlanning.linear_refine_implicit"]], "shasta.primitives": [[12, "module-shasta.primitives"]], "pathplanning (class in shasta.primitives.path_planning)": [[13, "shasta.primitives.path_planning.PathPlanning"]], "shasta.primitives.path_planning": [[13, "module-shasta.primitives.path_planning"]], "get_initial_positions() (in module shasta.utils)": [[14, "shasta.utils.get_initial_positions"]], "shasta.utils": [[14, "module-shasta.utils"]], "plot_nodes() (in module shasta.visualize)": [[15, "shasta.visualize.plot_nodes"]], "shasta.visualize": [[15, "module-shasta.visualize"]], "world (class in shasta.world)": [[16, "shasta.world.World"]], "change_camera_position() (world method)": [[16, "shasta.world.World.change_camera_position"]], "load_world_model() (world method)": [[16, "shasta.world.World.load_world_model"]], "shasta.world": [[16, "module-shasta.world"]], "spawn_actor() (world method)": [[16, "shasta.world.World.spawn_actor"]]}}) \ No newline at end of file diff --git a/docs/html/usage.html b/docs/html/usage.html index 60de259..754892c 100644 --- a/docs/html/usage.html +++ b/docs/html/usage.html @@ -1,227 +1,268 @@ + + + + + + + + + Usage - SHaSTA 0.1.0 documentation + + + + + + - - - - + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
    +
    +
    + +
    + +
    +
    + +
    + +
    +
    + +
    +
    +
    + + + + + Back to top + +
    - - - - - - -
    -
    -
    -
    - -
    -

    UsageΒΆ

    +
    + +
    + +
    +
    +
    +

    Usage#

    To use shasta in a project:

    import shasta
     
    -
    + - -
    - + +
    +
    - - -
    - -
    -

    - - © Copyright 2020, Hemanth Manjunatha - -

    -
    - - - - Built with Sphinx using a - - theme - - provided by Read the Docs. - - - -
    -
    - - - +
    - - - - - - - - - - + + + + + \ No newline at end of file diff --git a/docs/index.rst b/docs/index.rst index 3cf3bb5..ba4a499 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -7,8 +7,8 @@ Welcome to shasta's documentation! readme installation - usage contributing + code_of_conduct history Indices and tables diff --git a/docs/installation.rst b/docs/installation.rst index 729dd20..edbe5a3 100644 --- a/docs/installation.rst +++ b/docs/installation.rst @@ -34,18 +34,9 @@ You can either clone the public repository: $ git clone git://github.com/hemumanju/shasta -Or download the `tarball`_: - -.. code-block:: console - - $ curl -OJL https://github.com/hemumanju/shasta/tarball/master - -Once you have a copy of the source, you can install it with: - .. code-block:: console $ python setup.py install .. _Github repo: https://github.com/hemumanju/shasta -.. _tarball: https://github.com/hemumanju/shasta/tarball/master diff --git a/docs/readme.rst b/docs/readme.rst index 72a3355..95cacbc 100644 --- a/docs/readme.rst +++ b/docs/readme.rst @@ -1 +1,4 @@ -.. include:: ../README.rst +Welcome +=========== +.. include:: ../README.md + :parser: myst_parser.sphinx_
    +
    +
    + +
    +
    +
    +
    + +
    + +
    +
    + +
    +
    +
    + + + + + Back to top + +
    +
    + +
    + +
    + +
    + +
    +
    - - - - - - - - - - +

    ?Dpz&`V$3H^Ah6aqxvWzLeo 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 delta 678 zcmaiy%SyvQ6ov`u%_@kO>cT2fL~6B3qk251 zm%f4vUAuPW1NZ`NeE~rywQAhx;%v@*=RfEFndjm6q1aWtMVhg@K8V8rO*p!XY!W~p z2+gNjMgS4Aw0mp&@M!eo{?du%-m6kQScFx z#_@TtJN*r6NQiM^qH*iWjVqRJGzMeh+B0owM}!g=cQN;z?>paj=AN_B^QG6j?0fd< ziT7Kp<bnG^<%l&nf*A*mY(=w$1z z<1Jk``2fUbIP~J_!_$vvkd3&Huxsw-a7ff7lGd_mQBx&Tr0lMHwDAO-gi~-DCgBYG z?7nj)4kOS3!_axw3sFd!83CNMR)}gM)d@*l*M)qZ=v=5)n&BqIA%VEPP*iO5Oqm%{ zreLo<1HPg*w(c1`P*hjK1Q6q?Vpz<3`B)TYOE*(RlD~CqEgC`sa1gxleuzfl@lFKn zk+1z|r9&kR50T>jR=>_VmR~1X>^z5Y_SJW3DGr5ltHKCfsRgzBa?g>xyj$`uWV})J zgH42`!Q0&a!9FWAhC;^JntvKSe%#SxSAFYt9^coh?esWbKjH8gK}GLsL7g7$hx*lc%&pY;A^S>LTGVj7?b01^PU$VfG-{%T}6(S|W<9lC(n99EG$Z&&iaZ5BIZ| z!Jf7@pfqocrBZp4H^#2jd+&Sm-sbRDMqHJi zqc!nI0wmavWnDE;!=jJ?fylzGkN`nQ;VM}cruvndRyCD+qlOlXhRHxf&T#LJKHq1AqOWIZy$IiyES?Ic--o1 z9}|1Do0!|gha7lyFYq!`yxX?SIu0wx?^AaoBpffX3QFX?Jay1-!cjRPmt>xr*Cv_($zdB(%I}yUy zxOeJj#cl0I<(;_TpL>D3oN$}LYV!BuOlxu77FX=~d1O&66ESuqod(O&&61)xj#Jc^ zEYKQ7&6rhc=(eIG-6UhNiGkEVkfmw!X0eW}85cxe#m)?5YiRsFMSud5`EHlgf94ksPX*n zqH~aQv_;%vr|28sOul3#3cM<+yeR92AW6Iq0)E(CeoU|Ev=YtG@&4HZ^V=vf4@%i> zY}GG0y+Uc#Z=eF>#R}ryTKc_zv4jfFH26iuF@XSUZ8&lN#O_d%ZM9g)3w4H zX%LObHCOFAy&AfcS~KBgVA)A;Hr%Ik;Zr9MV$AD6W{LlBVDyxxwE3>n^=<#rt#A^B zKi+AMS=;g2RyX9>Cyl^m`gY_!oXU;JaV&V&D~Lz)g_0FHEgE1}(cY@!+0OHwyfSV_ z$USo>W^qMNng`B1xC7Xrqr>6P#NI;wx!BBLwl&P{*|P)fXm*F4_0%lTUt`CyCbf4a z2-#L1i*!2JmwpY}AcN8Y)e6)U8BK!!qqbzTVY_C}?ZWvzeu&`=jWL|p{|^pZlH0>N zT^(9Vhq2sUEBmW^lfF-X+J9p3A8VzV#ECeI`8*r((>uWo{WKBg#^@J`Ic{q0Y2qfw zEw6P(-rz8{p3KwlQd1*wNt8)NB68D!iX^s0!#=lff^H?pQYkPDRX;jCtrAr)s*46F za#7KmG@m-18+R}3f*}~1P`gaDqDYJe%b3QelU`4~Ngt)Y9Epi-p@|fVP#5K=sQZqzFuINN+AUno8^y|^j61M~^()9QRU&80~!cu#Y7;s1t~K y3{h{x2K?+m!j^;AI>|uS66qpWh=_7cGV83Traf<4;X0`)n!q}-%WMZ`wfHyOU=hFo delta 2402 zcmbtW?`s=%7~eI$q)pPKZQ8E2X>)1PHvN^vigmVg%48c`yL3!J#bw5 zp|G;`g;?DeWqxm6bgsLJTf%?dLU2tFsL<5Eh1ySELUz|t%L#z6V9zi^^BS#W0hDoxnmy452bzOk+ z8kii}htf__rYtCpfD$4P>fQjOCv}H9KhRCYGoYE+Z#;tp=GtX~FylM6iNQE-3k&&7 zUdZGMnwZTB1th|SUWK!R&3UrI`$@2VrsrH4smX$L+DwN0U7uz7pg3G=kVp~K3eS$E z#fm__(;V2x$)4Tc$Kw_=b16M4Xed*t@kIt4&)3Is*BNrR zvCCa4OIc74u5OiGHIO?F$+e1Z8u&OwID6PtwV?O?%{6&Q{-mD+MWeo50 zyN|2NqF@lcP%SO`6F`2i^ng;Ek@ArtV*Kg`+|y*+dDa%k<7C%4?ylM!0uSxv(<;h) zt`PM7Q&)$N$F36@4Hf4FRmv+=ZLeI|V>yy8D-HT%6)_s>_{m& zpqQki_g8e<4s%$77Ocv!;OZr0sw+pswX{g!$qE72bb3#p=-6~<;y&5(6ZI8^JL z)(ldr)$6O(tBfQp-++AnKQwaC5?Hm7hi73J*~VhKN)%E`epyf!SW}HT8fA}DV$R$) zLPirxKzF0l5cT1A{})OnCpk}>6p(ZD&#W*TRqB8^5-^$brn~3z3p9CmO74>2)EiJ|J5=_Wl--&~MQ%O^l zY$2MFv<0d}I@?|%6TV?G+x8`~wU3cw?Vnt}C1Te_%MOHG_QYz^NuAB3Sj2XC2V~L( z_=LcYoVX|%*Ae+!$Xosf4)hTHhVG*u(JtDNzoydL^teus&*-sEkDG85aU(_0mh;kE z6wm-kpoa-`e+})fG3x}gTw_*iMbu2yn41A`GX-w$p&j%y^MM{24zTG!{(NJlW1MSq Trlpjkidsg=>Fo2QI3N87n1mNM diff --git a/docs/html/.doctrees/readme.doctree b/docs/html/.doctrees/readme.doctree index 6ee6b82dee59300776abf2aea5d7481634bc704a..6a5e67851ae29e60f2d5677ca45248f1ada8c761 100644 GIT binary patch literal 602970 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