Main branch¶
+-
+
Fix: Error with ‘you’ mapping in third-person style of +
msg_contents(InspectorCaracal)
+[Fix][pull3472]: The new
filter_visibledidn’t exclude oneself by default +(InspectorCaracal)
+
From dda8469480beb2149203da046f07be5b07df93bf Mon Sep 17 00:00:00 2001
From: Evennia docbuilder action Fix: Error with ‘you’ mapping in third-person style of
+ [Fix][pull3472]: The new April 1, 2024Table of Contents
+
Changelog¶
+Main branch¶
+
+
+msg_contents (InspectorCaracal)filter_visible didn’t exclude oneself by default
+(InspectorCaracal)Evennia 4.1.0¶
Fix: The menu_login contrib regression caused it to error out
when creating a new character (Griatch)
Doc: Added Beginner Tutorial lessons for AI, Quests and Procedural dungeon (Griatch)
Doc: Added Beginner Tutorial lessons for Monster and NPC AI, +Quests and Making a Procedural dungeon (Griatch)
Doc fixes (Griatch, InspectorCaracal, homeofpoe)
aliases = ['ls', 'l']¶aliases = ['l', 'ls']¶
search_index_entry = {'aliases': 'ls l', 'category': 'general', 'key': 'look', 'no_prefix': ' ls l', 'tags': '', 'text': '\n look while out-of-character\n\n Usage:\n look\n\n Look in the ooc state.\n '}¶search_index_entry = {'aliases': 'l ls', 'category': 'general', 'key': 'look', 'no_prefix': ' l ls', 'tags': '', 'text': '\n look while out-of-character\n\n Usage:\n look\n\n Look in the ooc state.\n '}¶
aliases = ['batchcmd', 'batchcommand']¶aliases = ['batchcommand', 'batchcmd']¶
search_index_entry = {'aliases': 'batchcmd batchcommand', 'category': 'building', 'key': 'batchcommands', 'no_prefix': ' batchcmd batchcommand', 'tags': '', 'text': '\n build from batch-command file\n\n Usage:\n batchcommands[/interactive] <python.path.to.file>\n\n Switch:\n interactive - this mode will offer more control when\n executing the batch file, like stepping,\n skipping, reloading etc.\n\n Runs batches of commands from a batch-cmd text file (*.ev).\n\n '}¶search_index_entry = {'aliases': 'batchcommand batchcmd', 'category': 'building', 'key': 'batchcommands', 'no_prefix': ' batchcommand batchcmd', 'tags': '', 'text': '\n build from batch-command file\n\n Usage:\n batchcommands[/interactive] <python.path.to.file>\n\n Switch:\n interactive - this mode will offer more control when\n executing the batch file, like stepping,\n skipping, reloading etc.\n\n Runs batches of commands from a batch-cmd text file (*.ev).\n\n '}¶
aliases = ['@delete', '@del']¶aliases = ['@del', '@delete']¶
search_index_entry = {'aliases': '@delete @del', 'category': 'building', 'key': '@destroy', 'no_prefix': 'destroy delete del', 'tags': '', 'text': '\n permanently delete objects\n\n Usage:\n destroy[/switches] [obj, obj2, obj3, [dbref-dbref], ...]\n\n Switches:\n override - The destroy command will usually avoid accidentally\n destroying account objects. This switch overrides this safety.\n force - destroy without confirmation.\n Examples:\n destroy house, roof, door, 44-78\n destroy 5-10, flower, 45\n destroy/force north\n\n Destroys one or many objects. If dbrefs are used, a range to delete can be\n given, e.g. 4-10. Also the end points will be deleted. This command\n displays a confirmation before destroying, to make sure of your choice.\n You can specify the /force switch to bypass this confirmation.\n '}¶search_index_entry = {'aliases': '@del @delete', 'category': 'building', 'key': '@destroy', 'no_prefix': 'destroy del delete', 'tags': '', 'text': '\n permanently delete objects\n\n Usage:\n destroy[/switches] [obj, obj2, obj3, [dbref-dbref], ...]\n\n Switches:\n override - The destroy command will usually avoid accidentally\n destroying account objects. This switch overrides this safety.\n force - destroy without confirmation.\n Examples:\n destroy house, roof, door, 44-78\n destroy 5-10, flower, 45\n destroy/force north\n\n Destroys one or many objects. If dbrefs are used, a range to delete can be\n given, e.g. 4-10. Also the end points will be deleted. This command\n displays a confirmation before destroying, to make sure of your choice.\n You can specify the /force switch to bypass this confirmation.\n '}¶
aliases = ['@type', '@update', '@parent', '@swap', '@typeclasses']¶aliases = ['@typeclasses', '@update', '@swap', '@parent', '@type']¶
search_index_entry = {'aliases': '@type @update @parent @swap @typeclasses', 'category': 'building', 'key': '@typeclass', 'no_prefix': 'typeclass type update parent swap typeclasses', 'tags': '', 'text': "\n set or change an object's typeclass\n\n Usage:\n typeclass[/switch] <object> [= typeclass.path]\n typeclass/prototype <object> = prototype_key\n\n typeclasses or typeclass/list/show [typeclass.path]\n swap - this is a shorthand for using /force/reset flags.\n update - this is a shorthand for using the /force/reload flag.\n\n Switch:\n show, examine - display the current typeclass of object (default) or, if\n given a typeclass path, show the docstring of that typeclass.\n update - *only* re-run at_object_creation on this object\n meaning locks or other properties set later may remain.\n reset - clean out *all* the attributes and properties on the\n object - basically making this a new clean object. This will also\n reset cmdsets!\n force - change to the typeclass also if the object\n already has a typeclass of the same name.\n list - show available typeclasses. Only typeclasses in modules actually\n imported or used from somewhere in the code will show up here\n (those typeclasses are still available if you know the path)\n prototype - clean and overwrite the object with the specified\n prototype key - effectively making a whole new object.\n\n Example:\n type button = examples.red_button.RedButton\n type/prototype button=a red button\n\n If the typeclass_path is not given, the current object's typeclass is\n assumed.\n\n View or set an object's typeclass. If setting, the creation hooks of the\n new typeclass will be run on the object. If you have clashing properties on\n the old class, use /reset. By default you are protected from changing to a\n typeclass of the same name as the one you already have - use /force to\n override this protection.\n\n The given typeclass must be identified by its location using python\n dot-notation pointing to the correct module and class. If no typeclass is\n given (or a wrong typeclass is given). Errors in the path or new typeclass\n will lead to the old typeclass being kept. The location of the typeclass\n module is searched from the default typeclass directory, as defined in the\n server settings.\n\n "}¶search_index_entry = {'aliases': '@typeclasses @update @swap @parent @type', 'category': 'building', 'key': '@typeclass', 'no_prefix': 'typeclass typeclasses update swap parent type', 'tags': '', 'text': "\n set or change an object's typeclass\n\n Usage:\n typeclass[/switch] <object> [= typeclass.path]\n typeclass/prototype <object> = prototype_key\n\n typeclasses or typeclass/list/show [typeclass.path]\n swap - this is a shorthand for using /force/reset flags.\n update - this is a shorthand for using the /force/reload flag.\n\n Switch:\n show, examine - display the current typeclass of object (default) or, if\n given a typeclass path, show the docstring of that typeclass.\n update - *only* re-run at_object_creation on this object\n meaning locks or other properties set later may remain.\n reset - clean out *all* the attributes and properties on the\n object - basically making this a new clean object. This will also\n reset cmdsets!\n force - change to the typeclass also if the object\n already has a typeclass of the same name.\n list - show available typeclasses. Only typeclasses in modules actually\n imported or used from somewhere in the code will show up here\n (those typeclasses are still available if you know the path)\n prototype - clean and overwrite the object with the specified\n prototype key - effectively making a whole new object.\n\n Example:\n type button = examples.red_button.RedButton\n type/prototype button=a red button\n\n If the typeclass_path is not given, the current object's typeclass is\n assumed.\n\n View or set an object's typeclass. If setting, the creation hooks of the\n new typeclass will be run on the object. If you have clashing properties on\n the old class, use /reset. By default you are protected from changing to a\n typeclass of the same name as the one you already have - use /force to\n override this protection.\n\n The given typeclass must be identified by its location using python\n dot-notation pointing to the correct module and class. If no typeclass is\n given (or a wrong typeclass is given). Errors in the path or new typeclass\n will lead to the old typeclass being kept. The location of the typeclass\n module is searched from the default typeclass directory, as defined in the\n server settings.\n\n "}¶
aliases = ['@exam', '@ex']¶aliases = ['@ex', '@exam']¶
search_index_entry = {'aliases': '@exam @ex', 'category': 'building', 'key': '@examine', 'no_prefix': 'examine exam ex', 'tags': '', 'text': '\n get detailed information about an object\n\n Usage:\n examine [<object>[/attrname]]\n examine [*<account>[/attrname]]\n\n Switch:\n account - examine an Account (same as adding *)\n object - examine an Object (useful when OOC)\n script - examine a Script\n channel - examine a Channel\n\n The examine command shows detailed game info about an\n object and optionally a specific attribute on it.\n If object is not specified, the current location is examined.\n\n Append a * before the search string to examine an account.\n\n '}¶search_index_entry = {'aliases': '@ex @exam', 'category': 'building', 'key': '@examine', 'no_prefix': 'examine ex exam', 'tags': '', 'text': '\n get detailed information about an object\n\n Usage:\n examine [<object>[/attrname]]\n examine [*<account>[/attrname]]\n\n Switch:\n account - examine an Account (same as adding *)\n object - examine an Object (useful when OOC)\n script - examine a Script\n channel - examine a Channel\n\n The examine command shows detailed game info about an\n object and optionally a specific attribute on it.\n If object is not specified, the current location is examined.\n\n Append a * before the search string to examine an account.\n\n '}¶
aliases = ['@locate', '@search']¶aliases = ['@search', '@locate']¶
search_index_entry = {'aliases': '@locate @search', 'category': 'building', 'key': '@find', 'no_prefix': 'find locate search', 'tags': '', 'text': '\n search the database for objects\n\n Usage:\n find[/switches] <name or dbref or *account> [= dbrefmin[-dbrefmax]]\n locate - this is a shorthand for using the /loc switch.\n\n Switches:\n room - only look for rooms (location=None)\n exit - only look for exits (destination!=None)\n char - only look for characters (BASE_CHARACTER_TYPECLASS)\n exact - only exact matches are returned.\n loc - display object location if exists and match has one result\n startswith - search for names starting with the string, rather than containing\n\n Searches the database for an object of a particular name or exact #dbref.\n Use *accountname to search for an account. The switches allows for\n limiting object matches to certain game entities. Dbrefmin and dbrefmax\n limits matches to within the given dbrefs range, or above/below if only\n one is given.\n '}¶search_index_entry = {'aliases': '@search @locate', 'category': 'building', 'key': '@find', 'no_prefix': 'find search locate', 'tags': '', 'text': '\n search the database for objects\n\n Usage:\n find[/switches] <name or dbref or *account> [= dbrefmin[-dbrefmax]]\n locate - this is a shorthand for using the /loc switch.\n\n Switches:\n room - only look for rooms (location=None)\n exit - only look for exits (destination!=None)\n char - only look for characters (BASE_CHARACTER_TYPECLASS)\n exact - only exact matches are returned.\n loc - display object location if exists and match has one result\n startswith - search for names starting with the string, rather than containing\n\n Searches the database for an object of a particular name or exact #dbref.\n Use *accountname to search for an account. The switches allows for\n limiting object matches to certain game entities. Dbrefmin and dbrefmax\n limits matches to within the given dbrefs range, or above/below if only\n one is given.\n '}¶
aliases = ['ls', 'l']¶aliases = ['l', 'ls']¶
search_index_entry = {'aliases': 'ls l', 'category': 'general', 'key': 'look', 'no_prefix': ' ls l', 'tags': '', 'text': '\n look at location or object\n\n Usage:\n look\n look <obj>\n look *<account>\n\n Observes your location or objects in your vicinity.\n '}¶search_index_entry = {'aliases': 'l ls', 'category': 'general', 'key': 'look', 'no_prefix': ' l ls', 'tags': '', 'text': '\n look at location or object\n\n Usage:\n look\n look <obj>\n look *<account>\n\n Observes your location or objects in your vicinity.\n '}¶
aliases = ['nickname', 'nicks']¶aliases = ['nicks', 'nickname']¶
search_index_entry = {'aliases': 'nickname nicks', 'category': 'general', 'key': 'nick', 'no_prefix': ' nickname nicks', 'tags': '', 'text': '\n define a personal alias/nick by defining a string to\n match and replace it with another on the fly\n\n Usage:\n nick[/switches] <string> [= [replacement_string]]\n nick[/switches] <template> = <replacement_template>\n nick/delete <string> or number\n nicks\n\n Switches:\n inputline - replace on the inputline (default)\n object - replace on object-lookup\n account - replace on account-lookup\n list - show all defined aliases (also "nicks" works)\n delete - remove nick by index in /list\n clearall - clear all nicks\n\n Examples:\n nick hi = say Hello, I\'m Sarah!\n nick/object tom = the tall man\n nick build $1 $2 = create/drop $1;$2\n nick tell $1 $2=page $1=$2\n nick tm?$1=page tallman=$1\n nick tm\\=$1=page tallman=$1\n\n A \'nick\' is a personal string replacement. Use $1, $2, ... to catch arguments.\n Put the last $-marker without an ending space to catch all remaining text. You\n can also use unix-glob matching for the left-hand side <string>:\n\n * - matches everything\n ? - matches 0 or 1 single characters\n [abcd] - matches these chars in any order\n [!abcd] - matches everything not among these chars\n \\= - escape literal \'=\' you want in your <string>\n\n Note that no objects are actually renamed or changed by this command - your nicks\n are only available to you. If you want to permanently add keywords to an object\n for everyone to use, you need build privileges and the alias command.\n\n '}¶search_index_entry = {'aliases': 'nicks nickname', 'category': 'general', 'key': 'nick', 'no_prefix': ' nicks nickname', 'tags': '', 'text': '\n define a personal alias/nick by defining a string to\n match and replace it with another on the fly\n\n Usage:\n nick[/switches] <string> [= [replacement_string]]\n nick[/switches] <template> = <replacement_template>\n nick/delete <string> or number\n nicks\n\n Switches:\n inputline - replace on the inputline (default)\n object - replace on object-lookup\n account - replace on account-lookup\n list - show all defined aliases (also "nicks" works)\n delete - remove nick by index in /list\n clearall - clear all nicks\n\n Examples:\n nick hi = say Hello, I\'m Sarah!\n nick/object tom = the tall man\n nick build $1 $2 = create/drop $1;$2\n nick tell $1 $2=page $1=$2\n nick tm?$1=page tallman=$1\n nick tm\\=$1=page tallman=$1\n\n A \'nick\' is a personal string replacement. Use $1, $2, ... to catch arguments.\n Put the last $-marker without an ending space to catch all remaining text. You\n can also use unix-glob matching for the left-hand side <string>:\n\n * - matches everything\n ? - matches 0 or 1 single characters\n [abcd] - matches these chars in any order\n [!abcd] - matches everything not among these chars\n \\= - escape literal \'=\' you want in your <string>\n\n Note that no objects are actually renamed or changed by this command - your nicks\n are only available to you. If you want to permanently add keywords to an object\n for everyone to use, you need build privileges and the alias command.\n\n '}¶
aliases = ['hierarchy', 'groups']¶aliases = ['groups', 'hierarchy']¶
search_index_entry = {'aliases': 'hierarchy groups', 'category': 'general', 'key': 'access', 'no_prefix': ' hierarchy groups', 'tags': '', 'text': '\n show your current game access\n\n Usage:\n access\n\n This command shows you the permission hierarchy and\n which permission groups you are a member of.\n '}¶search_index_entry = {'aliases': 'groups hierarchy', 'category': 'general', 'key': 'access', 'no_prefix': ' groups hierarchy', 'tags': '', 'text': '\n show your current game access\n\n Usage:\n access\n\n This command shows you the permission hierarchy and\n which permission groups you are a member of.\n '}¶
aliases = ['@delays', '@task']¶aliases = ['@task', '@delays']¶
search_index_entry = {'aliases': '@delays @task', 'category': 'system', 'key': '@tasks', 'no_prefix': 'tasks delays task', 'tags': '', 'text': "\n Display or terminate active tasks (delays).\n\n Usage:\n tasks[/switch] [task_id or function_name]\n\n Switches:\n pause - Pause the callback of a task.\n unpause - Process all callbacks made since pause() was called.\n do_task - Execute the task (call its callback).\n call - Call the callback of this task.\n remove - Remove a task without executing it.\n cancel - Stop a task from automatically executing.\n\n Notes:\n A task is a single use method of delaying the call of a function. Calls are created\n in code, using `evennia.utils.delay`.\n See |luhttps://www.evennia.com/docs/latest/Command-Duration.html|ltthe docs|le for help.\n\n By default, tasks that are canceled and never called are cleaned up after one minute.\n\n Examples:\n - `tasks/cancel move_callback` - Cancels all movement delays from the slow_exit contrib.\n In this example slow exits creates it's tasks with\n `utils.delay(move_delay, move_callback)`\n - `tasks/cancel 2` - Cancel task id 2.\n\n "}¶search_index_entry = {'aliases': '@task @delays', 'category': 'system', 'key': '@tasks', 'no_prefix': 'tasks task delays', 'tags': '', 'text': "\n Display or terminate active tasks (delays).\n\n Usage:\n tasks[/switch] [task_id or function_name]\n\n Switches:\n pause - Pause the callback of a task.\n unpause - Process all callbacks made since pause() was called.\n do_task - Execute the task (call its callback).\n call - Call the callback of this task.\n remove - Remove a task without executing it.\n cancel - Stop a task from automatically executing.\n\n Notes:\n A task is a single use method of delaying the call of a function. Calls are created\n in code, using `evennia.utils.delay`.\n See |luhttps://www.evennia.com/docs/latest/Command-Duration.html|ltthe docs|le for help.\n\n By default, tasks that are canceled and never called are cleaned up after one minute.\n\n Examples:\n - `tasks/cancel move_callback` - Cancels all movement delays from the slow_exit contrib.\n In this example slow exits creates it's tasks with\n `utils.delay(move_delay, move_callback)`\n - `tasks/cancel 2` - Cancel task id 2.\n\n "}¶
Test the batch processor.
red_button = <module 'evennia.contrib.tutorials.red_button.red_button' from '/tmp/tmp6c3ofscx/3537365e3c047efcf9aef67669ee6819d3adf643/evennia/contrib/tutorials/red_button/red_button.py'>¶
aliases = ['co', 'con', 'conn']¶aliases = ['conn', 'con', 'co']¶
search_index_entry = {'aliases': 'co con conn', 'category': 'general', 'key': 'connect', 'no_prefix': ' co con conn', 'tags': '', 'text': '\n connect to the game\n\n Usage (at login screen):\n connect accountname password\n connect "account name" "pass word"\n\n Use the create command to first create an account before logging in.\n\n If you have spaces in your name, enclose it in double quotes.\n '}¶search_index_entry = {'aliases': 'conn con co', 'category': 'general', 'key': 'connect', 'no_prefix': ' conn con co', 'tags': '', 'text': '\n connect to the game\n\n Usage (at login screen):\n connect accountname password\n connect "account name" "pass word"\n\n Use the create command to first create an account before logging in.\n\n If you have spaces in your name, enclose it in double quotes.\n '}¶
aliases = ['cre', 'cr']¶aliases = ['cr', 'cre']¶
search_index_entry = {'aliases': 'cre cr', 'category': 'general', 'key': 'create', 'no_prefix': ' cre cr', 'tags': '', 'text': '\n create a new account account\n\n Usage (at login screen):\n create <accountname> <password>\n create "account name" "pass word"\n\n This creates a new account account.\n\n If you have spaces in your name, enclose it in double quotes.\n '}¶search_index_entry = {'aliases': 'cr cre', 'category': 'general', 'key': 'create', 'no_prefix': ' cr cre', 'tags': '', 'text': '\n create a new account account\n\n Usage (at login screen):\n create <accountname> <password>\n create "account name" "pass word"\n\n This creates a new account account.\n\n If you have spaces in your name, enclose it in double quotes.\n '}¶
aliases = ['look', 'l']¶aliases = ['l', 'look']¶
search_index_entry = {'aliases': 'look l', 'category': 'general', 'key': '__unloggedin_look_command', 'no_prefix': ' look l', 'tags': '', 'text': '\n look when in unlogged-in state\n\n Usage:\n look\n\n This is an unconnected version of the look command for simplicity.\n\n This is called by the server and kicks everything in gear.\n All it does is display the connect screen.\n '}¶search_index_entry = {'aliases': 'l look', 'category': 'general', 'key': '__unloggedin_look_command', 'no_prefix': ' l look', 'tags': '', 'text': '\n look when in unlogged-in state\n\n Usage:\n look\n\n This is an unconnected version of the look command for simplicity.\n\n This is called by the server and kicks everything in gear.\n All it does is display the connect screen.\n '}¶
aliases = ['?', 'h']¶aliases = ['h', '?']¶
search_index_entry = {'aliases': '? h', 'category': 'general', 'key': 'help', 'no_prefix': ' ? h', 'tags': '', 'text': '\n get help when in unconnected-in state\n\n Usage:\n help\n\n This is an unconnected version of the help command,\n for simplicity. It shows a pane of info.\n '}¶search_index_entry = {'aliases': 'h ?', 'category': 'general', 'key': 'help', 'no_prefix': ' h ?', 'tags': '', 'text': '\n get help when in unconnected-in state\n\n Usage:\n help\n\n This is an unconnected version of the help command,\n for simplicity. It shows a pane of info.\n '}¶
aliases = ['co', 'con', 'conn']¶aliases = ['conn', 'con', 'co']¶
search_index_entry = {'aliases': 'co con conn', 'category': 'general', 'key': 'connect', 'no_prefix': ' co con conn', 'tags': '', 'text': '\n Connect to the game.\n\n Usage (at login screen):\n connect <email> <password>\n\n Use the create command to first create an account before logging in.\n '}¶search_index_entry = {'aliases': 'conn con co', 'category': 'general', 'key': 'connect', 'no_prefix': ' conn con co', 'tags': '', 'text': '\n Connect to the game.\n\n Usage (at login screen):\n connect <email> <password>\n\n Use the create command to first create an account before logging in.\n '}¶
aliases = ['cre', 'cr']¶aliases = ['cr', 'cre']¶
search_index_entry = {'aliases': 'cre cr', 'category': 'general', 'key': 'create', 'no_prefix': ' cre cr', 'tags': '', 'text': '\n Create a new account.\n\n Usage (at login screen):\n create "accountname" <email> <password>\n\n This creates a new account account.\n\n '}¶search_index_entry = {'aliases': 'cr cre', 'category': 'general', 'key': 'create', 'no_prefix': ' cr cre', 'tags': '', 'text': '\n Create a new account.\n\n Usage (at login screen):\n create "accountname" <email> <password>\n\n This creates a new account account.\n\n '}¶
aliases = ['look', 'l']¶aliases = ['l', 'look']¶
search_index_entry = {'aliases': 'look l', 'category': 'general', 'key': '__unloggedin_look_command', 'no_prefix': ' look l', 'tags': '', 'text': '\n This is an unconnected version of the `look` command for simplicity.\n\n This is called by the server and kicks everything in gear.\n All it does is display the connect screen.\n '}¶search_index_entry = {'aliases': 'l look', 'category': 'general', 'key': '__unloggedin_look_command', 'no_prefix': ' l look', 'tags': '', 'text': '\n This is an unconnected version of the `look` command for simplicity.\n\n This is called by the server and kicks everything in gear.\n All it does is display the connect screen.\n '}¶
aliases = ['?', 'h']¶aliases = ['h', '?']¶
search_index_entry = {'aliases': '? h', 'category': 'general', 'key': 'help', 'no_prefix': ' ? h', 'tags': '', 'text': '\n This is an unconnected version of the help command,\n for simplicity. It shows a pane of info.\n '}¶search_index_entry = {'aliases': 'h ?', 'category': 'general', 'key': 'help', 'no_prefix': ' h ?', 'tags': '', 'text': '\n This is an unconnected version of the help command,\n for simplicity. It shows a pane of info.\n '}¶
aliases = ['chanalias', 'aliaschan']¶aliases = ['aliaschan', 'chanalias']¶
search_index_entry = {'aliases': 'chanalias aliaschan', 'category': 'comms', 'key': 'addcom', 'no_prefix': ' chanalias aliaschan', 'tags': '', 'text': '\n Add a channel alias and/or subscribe to a channel\n\n Usage:\n addcom [alias=] <channel>\n\n Joins a given channel. If alias is given, this will allow you to\n refer to the channel by this alias rather than the full channel\n name. Subsequent calls of this command can be used to add multiple\n aliases to an already joined channel.\n '}¶search_index_entry = {'aliases': 'aliaschan chanalias', 'category': 'comms', 'key': 'addcom', 'no_prefix': ' aliaschan chanalias', 'tags': '', 'text': '\n Add a channel alias and/or subscribe to a channel\n\n Usage:\n addcom [alias=] <channel>\n\n Joins a given channel. If alias is given, this will allow you to\n refer to the channel by this alias rather than the full channel\n name. Subsequent calls of this command can be used to add multiple\n aliases to an already joined channel.\n '}¶
aliases = ['abort', 'quit', 'chicken out', 'q']¶aliases = ['chicken out', 'abort', 'quit', 'q']¶
search_index_entry = {'aliases': 'abort quit chicken out q', 'category': 'evscaperoom', 'key': 'give up', 'no_prefix': ' abort quit chicken out q', 'tags': '', 'text': '\n Give up\n\n Usage:\n give up\n\n Abandons your attempts at escaping and of ever winning the pie-eating contest.\n\n '}¶search_index_entry = {'aliases': 'chicken out abort quit q', 'category': 'evscaperoom', 'key': 'give up', 'no_prefix': ' chicken out abort quit q', 'tags': '', 'text': '\n Give up\n\n Usage:\n give up\n\n Abandons your attempts at escaping and of ever winning the pie-eating contest.\n\n '}¶
aliases = ['ls', 'l']¶aliases = ['l', 'ls']¶
search_index_entry = {'aliases': 'ls l', 'category': 'evscaperoom', 'key': 'look', 'no_prefix': ' ls l', 'tags': '', 'text': '\n Look at the room, an object or the currently focused object\n\n Usage:\n look [obj]\n\n '}¶search_index_entry = {'aliases': 'l ls', 'category': 'evscaperoom', 'key': 'look', 'no_prefix': ' l ls', 'tags': '', 'text': '\n Look at the room, an object or the currently focused object\n\n Usage:\n look [obj]\n\n '}¶
aliases = ['whisper', 'shout', ';']¶aliases = ['shout', 'whisper', ';']¶
search_index_entry = {'aliases': 'whisper shout ;', 'category': 'general', 'key': 'say', 'no_prefix': ' whisper shout ;', 'tags': '', 'text': '\n Perform an communication action.\n\n Usage:\n say <text>\n whisper\n shout\n\n '}¶search_index_entry = {'aliases': 'shout whisper ;', 'category': 'general', 'key': 'say', 'no_prefix': ' shout whisper ;', 'tags': '', 'text': '\n Perform an communication action.\n\n Usage:\n say <text>\n whisper\n shout\n\n '}¶
aliases = [':', 'pose']¶aliases = ['pose', ':']¶
search_index_entry = {'aliases': ': pose', 'category': 'general', 'key': 'emote', 'no_prefix': ' : pose', 'tags': '', 'text': '\n Perform a free-form emote. Use /me to\n include yourself in the emote and /name\n to include other objects or characters.\n Use "..." to enact speech.\n\n Usage:\n emote <emote>\n :<emote\n\n Example:\n emote /me smiles at /peter\n emote /me points to /box and /lever.\n\n '}¶search_index_entry = {'aliases': 'pose :', 'category': 'general', 'key': 'emote', 'no_prefix': ' pose :', 'tags': '', 'text': '\n Perform a free-form emote. Use /me to\n include yourself in the emote and /name\n to include other objects or characters.\n Use "..." to enact speech.\n\n Usage:\n emote <emote>\n :<emote\n\n Example:\n emote /me smiles at /peter\n emote /me points to /box and /lever.\n\n '}¶
aliases = ['e', 'examine', 'ex', 'unfocus']¶aliases = ['examine', 'ex', 'unfocus', 'e']¶
search_index_entry = {'aliases': 'e examine ex unfocus', 'category': 'evscaperoom', 'key': 'focus', 'no_prefix': ' e examine ex unfocus', 'tags': '', 'text': '\n Focus your attention on a target.\n\n Usage:\n focus <obj>\n\n Once focusing on an object, use look to get more information about how it\n looks and what actions is available.\n\n '}¶search_index_entry = {'aliases': 'examine ex unfocus e', 'category': 'evscaperoom', 'key': 'focus', 'no_prefix': ' examine ex unfocus e', 'tags': '', 'text': '\n Focus your attention on a target.\n\n Usage:\n focus <obj>\n\n Once focusing on an object, use look to get more information about how it\n looks and what actions is available.\n\n '}¶
aliases = ['give', 'inventory', 'i', 'inv']¶aliases = ['inv', 'i', 'give', 'inventory']¶
search_index_entry = {'aliases': 'give inventory i inv', 'category': 'evscaperoom', 'key': 'get', 'no_prefix': ' give inventory i inv', 'tags': '', 'text': '\n Use focus / examine instead.\n\n '}¶search_index_entry = {'aliases': 'inv i give inventory', 'category': 'evscaperoom', 'key': 'get', 'no_prefix': ' inv i give inventory', 'tags': '', 'text': '\n Use focus / examine instead.\n\n '}¶
aliases = ['fly', 'dive']¶aliases = ['dive', 'fly']¶
search_index_entry = {'aliases': 'fly dive', 'category': 'general', 'key': 'fly or dive', 'no_prefix': ' fly dive', 'tags': '', 'text': '\n Fly or Dive up and down.\n\n Usage:\n fly\n dive\n\n Will fly up one room or dive down one room at your current position. If\n there is no room above/below you, your movement will fail.\n\n '}¶search_index_entry = {'aliases': 'dive fly', 'category': 'general', 'key': 'fly or dive', 'no_prefix': ' dive fly', 'tags': '', 'text': '\n Fly or Dive up and down.\n\n Usage:\n fly\n dive\n\n Will fly up one room or dive down one room at your current position. If\n there is no room above/below you, your movement will fail.\n\n '}¶
aliases = ['hit', 'turnbased combat']¶aliases = ['turnbased combat', 'hit']¶
search_index_entry = {'aliases': 'hit turnbased combat', 'category': 'general', 'key': 'attack', 'no_prefix': ' hit turnbased combat', 'tags': '', 'text': '\n Start or join combat.\n\n Usage:\n attack [<target>]\n\n '}¶search_index_entry = {'aliases': 'turnbased combat hit', 'category': 'general', 'key': 'attack', 'no_prefix': ' turnbased combat hit', 'tags': '', 'text': '\n Start or join combat.\n\n Usage:\n attack [<target>]\n\n '}¶
aliases = ['foil', 'boost']¶aliases = ['boost', 'foil']¶
search_index_entry = {'aliases': 'foil boost', 'category': 'combat', 'key': 'stunt', 'no_prefix': ' foil boost', 'tags': '', 'text': '\n Perform a combat stunt, that boosts an ally against a target, or\n foils an enemy, giving them disadvantage against an ally.\n\n Usage:\n boost [ability] <recipient> <target>\n foil [ability] <recipient> <target>\n boost [ability] <target> (same as boost me <target>)\n foil [ability] <target> (same as foil <target> me)\n\n Example:\n boost STR me Goblin\n boost DEX Goblin\n foil STR Goblin me\n foil INT Goblin\n boost INT Wizard Goblin\n\n '}¶search_index_entry = {'aliases': 'boost foil', 'category': 'combat', 'key': 'stunt', 'no_prefix': ' boost foil', 'tags': '', 'text': '\n Perform a combat stunt, that boosts an ally against a target, or\n foils an enemy, giving them disadvantage against an ally.\n\n Usage:\n boost [ability] <recipient> <target>\n foil [ability] <recipient> <target>\n boost [ability] <target> (same as boost me <target>)\n foil [ability] <target> (same as foil <target> me)\n\n Example:\n boost STR me Goblin\n boost DEX Goblin\n foil STR Goblin me\n foil INT Goblin\n boost INT Wizard Goblin\n\n '}¶
aliases = ['i', 'inv']¶aliases = ['inv', 'i']¶
search_index_entry = {'aliases': 'i inv', 'category': 'general', 'key': 'inventory', 'no_prefix': ' i inv', 'tags': '', 'text': '\n View your inventory\n\n Usage:\n inventory\n\n '}¶search_index_entry = {'aliases': 'inv i', 'category': 'general', 'key': 'inventory', 'no_prefix': ' inv i', 'tags': '', 'text': '\n View your inventory\n\n Usage:\n inventory\n\n '}¶
aliases = ['break lid', 'smash', 'smash lid']¶
search_index_entry = {'aliases': 'break lid smash smash lid', 'category': 'general', 'key': 'smash glass', 'no_prefix': ' break lid smash smash lid', 'tags': '', 'text': '\n Smash the protective glass.\n\n Usage:\n smash glass\n\n Try to smash the glass of the button.\n\n '}¶
aliases = ['ex', 'get', 'l', 'feel', 'listen', 'examine']¶
search_index_entry = {'aliases': 'ex get l feel listen examine', 'category': 'general', 'key': 'look', 'no_prefix': ' ex get l feel listen examine', 'tags': '', 'text': "\n Looking around in darkness\n\n Usage:\n look <obj>\n\n ... not that there's much to see in the dark.\n\n "}¶
aliases = ['light', 'burn']¶aliases = ['burn', 'light']¶
search_index_entry = {'aliases': 'light burn', 'category': 'tutorialworld', 'key': 'on', 'no_prefix': ' light burn', 'tags': '', 'text': '\n Creates light where there was none. Something to burn.\n '}¶search_index_entry = {'aliases': 'burn light', 'category': 'tutorialworld', 'key': 'on', 'no_prefix': ' burn light', 'tags': '', 'text': '\n Creates light where there was none. Something to burn.\n '}¶
aliases = ['push', 'shiftroot', 'pull', 'move']¶aliases = ['pull', 'push', 'move', 'shiftroot']¶
search_index_entry = {'aliases': 'push shiftroot pull move', 'category': 'tutorialworld', 'key': 'shift', 'no_prefix': ' push shiftroot pull move', 'tags': '', 'text': '\n Shifts roots around.\n\n Usage:\n shift blue root left/right\n shift red root left/right\n shift yellow root up/down\n shift green root up/down\n\n '}¶search_index_entry = {'aliases': 'pull push move shiftroot', 'category': 'tutorialworld', 'key': 'shift', 'no_prefix': ' pull push move shiftroot', 'tags': '', 'text': '\n Shifts roots around.\n\n Usage:\n shift blue root left/right\n shift red root left/right\n shift yellow root up/down\n shift green root up/down\n\n '}¶
aliases = ['button', 'push button', 'press button']¶aliases = ['push button', 'button', 'press button']¶
search_index_entry = {'aliases': 'button push button press button', 'category': 'tutorialworld', 'key': 'press', 'no_prefix': ' button push button press button', 'tags': '', 'text': '\n Presses a button.\n '}¶search_index_entry = {'aliases': 'push button button press button', 'category': 'tutorialworld', 'key': 'press', 'no_prefix': ' push button button press button', 'tags': '', 'text': '\n Presses a button.\n '}¶
aliases = ['stab', 'hit', 'thrust', 'pierce', 'slash', 'bash', 'chop', 'defend', 'parry', 'kill', 'fight']¶aliases = ['thrust', 'parry', 'bash', 'slash', 'defend', 'stab', 'hit', 'fight', 'chop', 'kill', 'pierce']¶
search_index_entry = {'aliases': 'stab hit thrust pierce slash bash chop defend parry kill fight', 'category': 'tutorialworld', 'key': 'attack', 'no_prefix': ' stab hit thrust pierce slash bash chop defend parry kill fight', 'tags': '', 'text': '\n Attack the enemy. Commands:\n\n stab <enemy>\n slash <enemy>\n parry\n\n stab - (thrust) makes a lot of damage but is harder to hit with.\n slash - is easier to land, but does not make as much damage.\n parry - forgoes your attack but will make you harder to hit on next\n enemy attack.\n\n '}¶search_index_entry = {'aliases': 'thrust parry bash slash defend stab hit fight chop kill pierce', 'category': 'tutorialworld', 'key': 'attack', 'no_prefix': ' thrust parry bash slash defend stab hit fight chop kill pierce', 'tags': '', 'text': '\n Attack the enemy. Commands:\n\n stab <enemy>\n slash <enemy>\n parry\n\n stab - (thrust) makes a lot of damage but is harder to hit with.\n slash - is easier to land, but does not make as much damage.\n parry - forgoes your attack but will make you harder to hit on next\n enemy attack.\n\n '}¶
aliases = ['?', 'h']¶aliases = ['h', '?']¶
search_index_entry = {'aliases': '? h', 'category': 'tutorial world', 'key': 'help', 'no_prefix': ' ? h', 'tags': '', 'text': '\n Overwritten help command while on the bridge.\n '}¶search_index_entry = {'aliases': 'h ?', 'category': 'tutorial world', 'key': 'help', 'no_prefix': ' h ?', 'tags': '', 'text': '\n Overwritten help command while on the bridge.\n '}¶
aliases = ['feel', 'search', 'fiddle', 'l', 'feel around']¶aliases = ['feel around', 'l', 'feel', 'search', 'fiddle']¶
search_index_entry = {'aliases': 'feel search fiddle l feel around', 'category': 'tutorialworld', 'key': 'look', 'no_prefix': ' feel search fiddle l feel around', 'tags': '', 'text': '\n Look around in darkness\n\n Usage:\n look\n\n Look around in the darkness, trying\n to find something.\n '}¶search_index_entry = {'aliases': 'feel around l feel search fiddle', 'category': 'tutorialworld', 'key': 'look', 'no_prefix': ' feel around l feel search fiddle', 'tags': '', 'text': '\n Look around in darkness\n\n Usage:\n look\n\n Look around in the darkness, trying\n to find something.\n '}¶
directory = '/tmp/tmppp6wszds/c01ebb5915af2feb74d33062a21d2fbc64dfe614/evennia'¶directory = '/tmp/tmp6c3ofscx/3537365e3c047efcf9aef67669ee6819d3adf643/evennia'¶
directory = '/tmp/tmppp6wszds/c01ebb5915af2feb74d33062a21d2fbc64dfe614/evennia/game_template'¶directory = '/tmp/tmp6c3ofscx/3537365e3c047efcf9aef67669ee6819d3adf643/evennia/game_template'¶
aliases = ['::', ':dw', ':DD', ':wq', ':A', ':q!', ':y', ':<', ':j', ':x', ':fi', ':f', ':p', ':I', ':w', ':uu', ':S', ':dd', ':u', ':=', ':fd', ':!', ':UU', ':>', ':q', ':h', ':echo', ':r', ':i', ':', ':::', ':s']¶aliases = [':<', '::', ':I', ':::', ':>', ':DD', ':w', ':echo', ':h', ':u', ':fi', ':p', ':q!', ':r', ':UU', ':', ':s', ':A', ':uu', ':x', ':j', ':y', ':S', ':fd', ':!', ':=', ':i', ':dd', ':f', ':q', ':dw', ':wq']¶
search_index_entry = {'aliases': ':: :dw :DD :wq :A :q! :y :< :j :x :fi :f :p :I :w :uu :S :dd :u := :fd :! :UU :> :q :h :echo :r :i : ::: :s', 'category': 'general', 'key': ':editor_command_group', 'no_prefix': ' :: :dw :DD :wq :A :q! :y :< :j :x :fi :f :p :I :w :uu :S :dd :u := :fd :! :UU :> :q :h :echo :r :i : ::: :s', 'tags': '', 'text': '\n Commands for the editor\n '}¶search_index_entry = {'aliases': ':< :: :I ::: :> :DD :w :echo :h :u :fi :p :q! :r :UU : :s :A :uu :x :j :y :S :fd :! := :i :dd :f :q :dw :wq', 'category': 'general', 'key': ':editor_command_group', 'no_prefix': ' :< :: :I ::: :> :DD :w :echo :h :u :fi :p :q! :r :UU : :s :A :uu :x :j :y :S :fd :! := :i :dd :f :q :dw :wq', 'tags': '', 'text': '\n Commands for the editor\n '}¶
aliases = ['a', 'no', 'n', 'y', 'abort', 'yes', '__nomatch_command']¶
search_index_entry = {'aliases': 'a no n y abort yes __nomatch_command', 'category': 'general', 'key': '__noinput_command', 'no_prefix': ' a no n y abort yes __nomatch_command', 'tags': '', 'text': '\n Handle a prompt for yes or no. Press [return] for the default choice.\n\n '}¶
aliases = ['t', 'e', 'end', 'previous', 'p', 'a', 'quit', 'top', 'q', 'abort', 'n', 'next']¶aliases = ['a', 'top', 'n', 'previous', 'next', 'abort', 'quit', 'p', 'e', 't', 'end', 'q']¶
search_index_entry = {'aliases': 't e end previous p a quit top q abort n next', 'category': 'general', 'key': '__noinput_command', 'no_prefix': ' t e end previous p a quit top q abort n next', 'tags': '', 'text': '\n Manipulate the text paging. Catch no-input with aliases.\n '}¶search_index_entry = {'aliases': 'a top n previous next abort quit p e t end q', 'category': 'general', 'key': '__noinput_command', 'no_prefix': ' a top n previous next abort quit p e t end q', 'tags': '', 'text': '\n Manipulate the text paging. Catch no-input with aliases.\n '}¶
Cw|1lWU8F68@ynS`*M zQgl!ZCEv4eaXi;Wil++T@P7ndFY^Ifb@=6?@Qy7;1VZAYVLUMae{Ts`5RHTHWp2bT z7X`c>#I6EirxDIG5WJs0+d^4lL1r#(G8j7;FmR`S0g0juvc&3F(wc zGsJKHfGw!N{N@iXC9oo{Y4;pK%`Cj35dJ)ap8+&E$z40THX<&@sMtpkS(!ag-~uT@ zMSlk{(HUkLO@u;>e+PaB&=l1JX^O60u>oZypOD7UDks(u12lk=zJf=PviMBITEb-+ zyMi|4=5}jHXYaQ9AfnsimTO4Y+Q4u+oJ%uvaO9Gmi|4j*Naw1614b{>c`l9CT`~V~ zC1FXRBf0rvwM!>m@SK0j8`M_DiD{sTg~m=5N?E@^@` 4v@hd&mDbF#nvme5diB+vspD{ zGk$8oj0fRU7G6qPq1!KFxqIJ|hPI!u$Ph?lls!jRTptJ51YPa)F)e_n_E(nLuhqt) z0@I>vxNhCRe@-o^o(B@UF+@?2zBKh=PZxcCYV8_Yp}qzu!AMMy3kMHhBv0!tqHHFT zX0opE?eF{YIh4wQz$Q3JCeCh)O>*jIQ)t+1g~oU+H*D%!FD0I-uAlmb!$0jZs$j*D zD&dK28bT(_+B7XwRD7 -G`v<(EYyT zbGT=2#4R){oDl4C1@q+7&}VK3uKlx3sa>{j316d&DvbugYjk1@d+rjc^z5{z6q}0R z#1d_Ye-4`WG{ei?z9kGzwTbA;phC#OeiE859ds*6hF8hc@zO{i$@aPJ$Tl`zhf+8A z?M>0AhdM3jJeih4X^l0inmGV|d#ID5O}Lku9{)B_hyS#g0(XTJV=%ZCFMU1eY^$_I zMY*3VvPQ}gz)xTVY8|6ONCum^eI2`*tvM{he?x%yG-s1+wir~G6I2)iutj6Gj#QT+ zDu6NjLlR*i{~Nip y>jXBKPqoL(NH-RD@xOcI2Wrd_65hgW9{Vx@ za5HT^m`Py`t`F|REwg=v%eU;7ehi0E^rLXZMvS<*i%Q7R9yi;NP~wr?N4RpxH9!{| zf2DG*Br2|BIpq$DJC@w~0aF*Qo99L6-s{t;?ee#1HGvm0+KqzGXva@gMcW~ZEKz1z zZFkLF*521cGiL)&Q32rhSd zx|b3ZWQVk}m>_({3ktm&>iG(I43V$Ie|D}t990pQym}@BQ>^zhD opyA^>)q5C99iTeB7}V$dlA zJdxE;tYY*sBS@`o;Kl}eC%v~vCuT938O0FoOPo$dgkC3Re_47bTYIe)i2O1hUdIyW z_E}pJrI;P2*N$KC!@FGK^go7if2;UR+Ny>;*zV%0(=%LmmXcDBzmoRbU+RQ8o2jvO z(W+88H1QU0JRs6dWY9IzL4jX=FU2ZZYa}# zC;$A%{|8S0{KtQJ>4KZ=p^Q!kP9C~8f~Mv0mV(-lZr@btV^;17KO-4ce_CAfpV2R2 ze(ZpyyR`7$lB6-w90}cWhvbth;!3A29&d_ZQ^jukKAt<-8Efnvp~VRuV~nM4g-gO+ zY;<3{K!&ei5$&s`J%Q|`o%@Ql3r|_t(2q-{y%fx9Bu+wI>~!!N(5k}cRLGh}(LI~d zNkKLp$O84hOVC7m*fqd$e_eQ2G7tei9R4|a2oQNLNSQ|^X)ggB_+>~+VQAAhA)=mg zLc}a(4t?3c*kG;G1S5i)&~DK_fK3zh6{_HeL7FMkNg%T}J(LV=f|Oe~26e!XD>K}S zVSZwlkX3y+qvJc<+hf`!FSs+~G#%`f+#pDcbeFjfaw?2kcyLene}@%47`7cJ5xk#s zoi#17t%~&lSRyL|1+y%L&CrfI4Q8Z@q_WTlZ~5%d6$iS;2j6VuZV<8b*Lx)2UaX zT3el@lm$V~levx00Cnh)CEKB)3V0?cEBnhp!TLBL-f^#ldnMA#p%F80*gpUbzaWjn zQ%IOl>@m_FgnOR#f1YR3)2kIbASg4OMx}06Y` hd2J?AfrZ&)U zRUItvJ;JI2oz>L$Yz!ElS9S!r|DN I#d2)AH9SEsP8X z<}2&)sPx8Q5Y|qui?M^-3Hx%9?eDsJSF9uA*o)kVe_sxQj;tTRDog1(fjgoZ3f_wE z@iE*XrD&3P0k11Mt*RVd%9z`R0CRdQNAFlg5grb0wEn4kXb9=eluavS!H8NHhyi<> zXSTwK3&{Pbf7~VZ0a%aNf16>H%Odi)X`z#tVm+X7LGTMA@~CPNpwYT4sO!qNj5*YT ziOGdbe;vin#;3EvG$K6z>jj>YpaxMfu?|T )fI17#c+ab4gs&n0bh-qBA*YWmMYy$KW@|O!fe=-@QfcT+ef0Sn2#$5yYv0mZh(Bc~N zL&HRH8nGlD5&JXvsv5V!j+WZc5O~FHw_4Ti+2S$J6CogWgrHC40tvGzSEChBCSZ(- zG$_qC&Mj|un-sQ*UI-i1%suI!?>5l0RY>;K$BK3AA=IiE8#wSuTcSc4DMg>*w&kag zf9V3Ee<`hnLoTt#FsKr8CDzUXKB;(VK8Rx=0X~WRv~mPPw~pEZJ2x1$ltmQRTf}pO zAp~v!+=#;X^uD4-m=&VZ`QNf?Q@3FHdt0>lyn$z4rs(68|5PP!(GyLQ_Wp)N1E~=0 z5Q{vz7N}CZ68r_6{B=MZeFx{WK}s8)e~*gm6>HXi&Z@k$?%C*pSj(%s*&&sV_dy{s z#lt`|6pdl+-zGbN-wM*dYv$0Y-PlsJ Ig(>@%SYI)VV8BS%JonKe}QxU zg{uli0&ZysV^bBb`mT_Sg}99#OoPfAn_vPKaFi^c6m$9G1m(UgNk5Hk;0u5CIbJzv zYSU~-M}rOC5wmHiGWam$gS~W^#pJNr??YHr^Nb5M6?oWBqfy)lZ -{voU5&841K1*fV3nVA{ZkwT3cQy(O?| c!p>>$St~fQC6!!kl3k z-5S?GUAd+ZkxYt=T!U~W$)vncg~Iaw?|Z^-&j)iziT~g~9O!Mme+_8wMijc(4gE5< zZv!&u*OX<6hk`V)kNO j!gWmbWCKF``CF1AtozdGgT~ zv;Jr#M(JjkJ;Am!e}Bq?` 4 z2P)Fwiv=>QFxu#xxsKIwq2REIR%7X#D86>p{6}hsYV;D z#Fw3l&E-btzIh@Ab89f_*>3^FmShd*zj=VcK*^vZ&Ns_-q)I}nUlRWG@xo4}cV6*@ z%O zZ*qY=d6Jr0OylbNjIC+RMoDI4jYpX~T9~ fBJqqJ}xoRsg0p;JtaV%9>80s zJVOHsjG{N<*a5%(imn!Nh rK3`tn-dLEmraX$-D5>=TrYt4SH5uW}+g~!CI>``*qyH`Q^VUqFErGZ}hNt|w zu&Giif0~V^O9HkH)XD+CCtjJHczM%F-&u{-#4N1u&H6N8SM#N13vS1Og9R$$#`r9J znOzKS4TAgH)Z*TJi8eGvhEg~Bw}&i}rS+z*UJv6)%(8kVHqjTGDzm;2!+m)jW*-J= z+|GH-3S5* m-b#5rN%tf6&t~2Hz;DC;piEHrv<|9=uqp!>^$b zd)lwaTE0&ivg{=ht&-==olPjst6hRzZAtFaj=Cb+be$pr)h6p6lPLKH)V4(752iTu zcQnDoT9<7?^fU;`CvDImTW85G>b}l8vZ i|!thG0I$81902Lg(IX9vh z2!<27O=%j4n82??yO|?k+#rOlLH xZJ3L@^*O2=N zJ*^18!7FH&V74Eg@r8jL^Y}NHI$C! Ug zySYuMs{zKe@R98bYg|-(qu_9bf5T2IHa_5y+;Gm3RA40CV+@VLGP=Mp@G`F}>A|0O z+%)oFLmr)sILZxQamp7~a=Wf6?)I)b-#U{UgCC9+Cr9ZB kPA0K@u2 zeLTu+nhb96!s31_Z|2nT3FXE4009yffZz8KD`RdA%c8>ej>^<~u)K;xD*uDS0|k9B zADMr0&i!#XW`3DiQ*TlZ>Ox_aJ)jNh2^_7^Pj%hF>)^ZeeUoj895$NUBtvM{LP-y> zU|Mwqj`WHU0hH{-v2Yd;f9buZk}aY(rQC?KXx!w!GUrf^3ID|YhEndk&b0*PrsTpu zvA= #WHq5;D;X_&=1aE**EU-DD_w0sjY*fpPzdF=L|e%tC0)?)MGus?vFC?mD*O zrX7I1XWt3`4pe1BD$>BFT=$Gy@T4SL=Q}q}ovdgdm`8HMJQCp%f2w6u CT4+sF@U*X@(tQ%7boccrtiY&O0$zw!tlbb+;57i6@Mf2 z6|a_ zkpgY(`lY%S1XF=ISH%ZC25e-}E{DBm%8A`yxD3yl^RngRJ37Ua^2m5z>gA*%M#; z6p4UV?5SaIpGu2fywn7<+2ns?9=$y fkw5}@#(qA^p?dUXr9|qfG(P;8^$Decx zfmQrmHmtnOe=;^%y&88}TdYBzACJK^A#fWrR1rJCPvFz11UpayK2~L(v_uXd?**(0 zUUbBfWz?5t*avvW=ZU!(Aoz-vFysxpIXlmkR$?0k&+}Xu(SaSH-FULA(DqwMP-CKq z4WfKujBPzZujU} d-c)H z&rYB6l7m=nlny3&t_M4|%DqsZ)~yROv%9II6p%v7ir`23?V-XIMOcTrEBDP^9OFQi z6W`)8BrIK_vzwo$3g#QmquGKOpVCFC;(*~=@em0Mk+7?}&*gZ!A`}!S(P6n2Ei-J{ z5Dwu2f6Imk |$lhPu3wa_F28pv&(7x&L%C@sc;QIu|o zE8&ZURM@=y&8gHLE!+FnPI?WL@V~-c$a}-8NsrC!9AsTg#UDwrW5(~PLvqb4d9@}x zDtF#KSL^h;sd33!>&8qWSXYKl33sw!u@^GIe_^M9E2>-J2V$XQ@clsB)p}3og`{cs z@Em#X7EbR2x>0^Jf2JdMbEt@K1K_dzaBbM*15Aj$Er7p$EJfAflN80H<2@uFs~P0q znHq|x_BfJLt!7`XFfn6Qf&FDB$k-)N&-hbT$qR79Ld^a6;yn8pNwU#uWx7RYfRRC+ ze{gl(g~IWmKe4|?IOVtxWe-6eNGQjG=% wOJe)@R#q18wqv1(3>@Q5OubYT`5I4*p`c~avzQ@i{*#IHEVyjf? zHSIS(lQk(ulSF@bZb442f@SQ~&JGvLe_4 {)v3+mO(4f+{;`9266c`LpVinD`@cv3{UD%eg}+6MT!_es<{e}`(L zQ5Nejc;x~%?agDlK^WFJNXG )L}T)f zo0N{?lQK8_hr+<7t;S-8Uc7YSfA66fb|+O^;PiOkSas@w^x)^e+*~I7!-UPxVnbIP z0NsZchqs}R{@?%Ih}=ip1Ihy0 o9gt>_7VJj~2ZkRD@?^=W zK`4=Fv?&*U4oo&GaLn?|_(JA Z+3REYSOxm{6=P9K z`zWPtpE5D3S%D5pH-U=Ne@cALAWySB?HqUe-Hvq5qT*510ja3WL*dv>59L#S^mrWZ ztGdSn7Nwm~ %`f;3i~elWQx5^H8~kDkXDiwYoF3eaeaW7ue6KyKe=t;W7)U%Hg-=(i z&nei# qRb_jj+ zb|Be4^6pW1_;q_I;IK06Q8#p4SQ=mc^Xg>;`57E>m%DfL>r>b=DMlY7$h5qZ%J ;J%6KYt>7J z4pc#g|HOZIktb!SSy*s}Whupo%~MrG`E8}Zr&lIKZzShvkmz`*G!G`27k?Xs&a>I~ zP;_+QMjAO~7PBoX_t;Kp?c|N{OVH1x$l&@o4E9QSyEH%*xBTD^I{M06sU~%#^*KC1 zx9yYKt%Xrce;TdBGk05SUP!$|n3TZo9Ip8U81KVsSrkI!l9tOjaG_SqV51`HQnI{B z%%Xrpf5# Qc45oy-#tyEW|&?nrUn6iZxzu*>S!Ts%dix7gXz2`9<7WLr1S ztdO&(R04Df0O@Uk-e8a`41ypD3({-%>C;cf#)rD|e^)x#CG4MY&W25x)+<0b))+&m zJDmNAP?p#TXp2x7Vapf6a0doAJH#VA^_^&Yef&WfH+*3YH*-WFe9nia91k?su6^*5 z(;zoDKaWNCJ1_x9a?}D%tgh|*#66rv>_)hwzS4a}+mW&&osWfwy2U>hj5OVB*Sjzz z7L>syfB$dt;p*brin?v{P*e;mQLk>^j#2GLzlWHEBj56L@&NClSU2HyjOU(={zh zh1g#8(s%)WgAj=pB3Z+E39&~Tp%fJT=^CN5T^;cLw_cfRtqczv8tKa|+>c9WA7VJv z5yjaO6CK(js*P}jgoWH!8wZ4aa9^zY)(4NAe+QutWIoHb2|g`6qQ%1_?}j@mW~Pyp zXcLi`-ApmDjju06<(FN2eEngRZ(xZlz0MjiwExp{`c7G^7?wbDP_e?5ve%8l)YlHf zBzMo_B?=1$&O8x;8L49k>D{wu@x-B$4=`9`z<5`&NBqoHQxC$IRsdVN+2Ew %ZIT1~1G>6MTWtuX1PXfhDArNjTKE6X+$`mjXAp92|XfH*K{rM$X; z3-Mos_)qSzqH^iE=9yLbt7s4eZquElxj&@oweI&7o zpozX!K75?GG*MbM5!{@b=%w=E<1C9csag_AC!{{Izdn*0b|c#^HX)_hC)lrSe>-mi zwsb7N-=(xF2tzWFj0S)kIw#ogpfV-g$)`m})(=&&&dM|=T~?H_(H_g+3YUbt_*B?e z2b86O@UPmZj~Ol`6y^@c&8i6gMgBCf?en4=pRzXx5@WL6zWeqQuHPoY%Z@CU|JjOf znyHMA_^6x=ARQu1(xgv&(X0h!f9gP;9wpUb)W+i53)Sn-W6gfbnr?LV+Z04xbYQ_P zy$=tHw;teESjVRj4CI38ikxIEj%KReI%OdK99D^K2$$fFL!V!+FB0kQR3^NpY8r&M z_&rzOv=r5S9l >DKbbTJz3VmXL((^#W`-THwa+^T)WPz@@IBXvu9e|hCa9k(== zQ0kIOC+l-Qel_e+hv*lU&SPcV>0Rf~_m%@Jj*#k`NFov*aNG&0JAZnPc(~Xvb!SYd zA&Gd|h-nqiHjwv5a({pCNjV6?%P0J_VBi#Cw=19FY7%wuX)aN9sdM;9GNf`ap~-_b zoP&o)dkC%=fDY*z-YrVAfBX@qiFpKxK^VM~3vf%mIp>al@F~!C4XHNxAX!n<>FV=T zWgI}L*bVnjuDO4>l5LzSt+(*7sTtlrE(}KU?C?WDHlMo^-!96!f infy<75i=EnbLS3^We2^Yc9^0_mwV`vo$b9TYKG4~qFV`MO3D@K-ug}?8268{+ zXL2Q9owM;xsMEbjNIk}*w>vuL&+sNTro@D7bi-U}zATZ$G8E1P!!v4W9yT>nR2qw3 zbC={TcX1H^eGfOWf9S}&iD-FLq5pv2aM81IwLlHo)*`*ac{Hid_~9+N@bpE%Jg6rT z0=Mk1ADZF?gBSU$5a6cRfZ?ym rsy&mErOgEK65bj~Sn$;4~v zM0+Pa@jT2Oq4RU$8KCL?zAV#rf5%#dtW8_8%jnpJ*j`KWtLuk+PeUXkL;}+W9zuB| z$)~tzX<2JALCqn+2i`#Q?+6tzo|9WaBZ^Q46DYhTf8@)$@k$6mz7!llRgo6X|Do1j z$n%7Vj}U%A2Nq{=2+#r!>)aPj+f8hQ2lAixO@g1H&9ErMY&9S5=al5@)Yixab|d_7 zdw~1d+9P?xG{pr2&tmr|^zcS9cMjm`4G^-|X4sZz)~(9A{^Cgxvl<4tG=s~N6z_tY z`-7)zf0)-9rwUh9y{}t0lT{qR9FTSmVvxW=s6(RxPVZzNdRla<>y{s71k+O!71BX2 z_&4pWz@Am0Dq&+^iwZ)R8;AUJASY~5HCukO&}_yqjNb%wsk-&X4TIDQ-uJWW6TAgz z)POI@5Z-}KQ(_3h*Kx3b6zkA(!8*v4zeZb3f6bvW%%>e28B3Qyg>ZpJd3tM_J|mPH z?vQ-y%_aqC0~34l7|=ml^ibsCYT3KTD`V$q i;b3$(ygL`BW5Ed>_`V_7uX+;l^OJf0aP*NXUrE< zi29rC?ravpgsms>?Sj;A;d|quQK*73Y*jo@g Ktn2_MNNe)u?dO&!aHBG>dkA2xeqNg8xm zvp|t-77*yBFVy0S&L)lct4_YkCW48|Cca&e*nW1aT|-tI(yj1a6*Py$+;;nJ1y8R8 zZFCMa_-|kvydf!Uttz QPx|@CsM=3}>%)q!~Z%f8bGh zEH7LV;o?<6nmWUNAiGr0uszvR+Oait|xL^)5PFRM(<%28~b#WS%ifUFNiH@zo_B zN>nBO>A+)IuY$WYR^b(~P@>TOM5759Pbd^oxvlZUWOkF?dyjgHKs+y`h~*5h4BlT2 zg|j&gSr T{P0a&(S z(55bpM^!Kw8r@&h@gclYfTfxlCx6VEA`98OlVn~TR0jRAnlMx6y}w667K=D#xJ*zg zz@VAtF3JR6GV9rl!f>t;e M6i(xxAo4PHmRP{Oh5!5qNaQZ7vRS~_}F6nd;)P*?>H z8Ep&|u;WbDETR~Vw25f#2CO01Oh$CdB@ k40kLSX{iOPmT zI*CL30gWaaLwQd!_}RwtNxAp@hnFd)C=A(Rio#<{r|hJu>#ZlFWH^yg= WCnn@=#pGZ7q1dz5Yq^HRWv5vQF%DvoR){&;%!ss`}H(d zMfOtp@Um{RFPf>De*==+1$Bjfz1 }_7uki3E6 zPKl+eX%ebY>|NHd_eE%{ftL|s#>aYTw6ULc-h>`$6NfIXe`jN0v PT05r>t@!G zfS84iXAMdV!MC>I>xha7hmd+ZCe+1aa}e)OiNihZBz9FE?_r69K_QV3?cB%AA>I3s zEv9oAGsbieL*|C22Oas-dRtG4tS !$;GQ zzwe92drfaZBc(p`A3mCpDe{2BxfAmNif+^H@0{gPe}>|Ze27m69zXT1fZG+;;T5q^ zqKHOsz!lNpX^bKHFraehL(!%1GQ*}Zz4ze^D-9yzSdDrnil>(;(gv4_JH`-~fxTdw zr<phrNu7*q{zcoS3p@)+xM%joHPZAEpNR6nY&%yy^!JlIKAR1Qm1>vAej} zdELQVf9&=83%71;E$v!R-T;9czSfS8KK$Vcpp hVO J!!20VYz zu8ShwQb*W=;+85?ZkU}mjNN_ur&QidX=SLCZ0o-jzOrdi^I+EVn~TfKgvux1z|NR7 z(8&RkUvJ;1e@c3QM1)Ehz#l@Bhh6IhqG=KB<)d>ZaB6I09?g&c97-I~?%Bv=w%N=| zf53^Bu)9k(9aIFcb7Q@(WL6+>vC_sqdMnr-^XupC!85AWLW<1*R_6JzE)gh}T`vtG zz1??pQ)DI8IV ;~;DPR{V#X#bzplzsdlr=gmSDYG$ zGM)3QoZ@gA1cS@b=qQ6tj4M2{2IrP&fBm@2)?em{))4eOVJ?YqnWStkGFX_d?%Fxj zHNnnRmhizD2qYqoH)3132v0+PA 1Kqfd)4Z∋5A$xED^z`#Z@@oXMdk1 zMiP(KiN7ZzRPz4p{Omu@f>nH1l1J~=VUH}oev>?MgC1aRi_X`GfJVDBvE@X9e`7s- z{e+vn3g20tfwS_n^k|8u;oPmYuTVYxVA;u!i VxRcQL Q~VSqufd8T_-3tgF<6vA{4=Ua&T@nYHDgwX9UERf?5jh-q~ue8e3v$yJo+Jc|Nx4 zkM%mc+m~50p^$m-*gA&v#{QxA4$v2(x59*v*A0`5$@VaToX`-qY?237qP8U99)U## zGt`CfVN=B3Cs0BDjw8kie;W0GQ^pqkj7S&E173k-DOgmNBgbRy9^m#`KDiDK e<#{o;fXgOc$#Eg zQdjGc8Y&EhvR7fZHG35HfD+~de8=sNvKMBVKP`0;B~CEVDekst+kl%h4mDK}p_<|r zq7L7L5ZmNCHZTmjreIRc33tfit+)WlUihZX&K4$mjuJAs0tg z>^o3}Lnc-O`CE|)p;IZeFyD}ptvXI@Crlu>id%S#Fm+*7f3-BurGE`y5*;#6A7&d- zR81m=*S+2J!{(M2oZbj~ 4cqxG`j{6#opQVHj=ULQ;MMF#56b_hOZ z&4$qbtIZxxT3pf8FOzTn`H%l|0dIlc)m?Ia`Okm+-#;XU>zEtBDdPcVD$NsVp~6r~ z^z-b~$`#Rhe@Lc?E`zg_kUVM0lLuZgAtmf{V$!5p5plp!Y7vDwYyOnwHf>4s=-mtM zb?qfSe!QaH9Q?H6Z|R`cyL=+CdFU(rW5wJxw5@F5(n`G}bTC-&n>9^6suw0)8_MRz zxyAr+;YA66v1S1r8rIt#nl-vFzJ{v tTs;I%}Yw1;wz MZsR_?3qJx96r~+OyQJ8r6TmHk2T<3K#DuliL^!Ae#E#y3# zgmWHblYo2?inamkvfk%d_52226%rc&>(8=^wiXHcB;04L%vDynFOxt3c}5&;N+e9g zG7-bzf6B3JyrCU5MU+HF*+}x>-a=&!Kaq8n?eM7r&m*gSFqVQ>aLSE2xG?2jOCY!m zFRUx^btASt$&Ilkc%l$a1O`!S?`}Zt#-oT0@jg9fQ_F@X-{XMc7aRjb=U^TC$1Nr+ zrb6@&WJIXYFEv86m<{2{${4|vRZA#C%qnrbe}ZgNo7?eA %N(Oc+p<|dKmD^4Z7$^@glhX&| ze;pxwhnS*K1S2y^XN<}ujdLqijWNqJq_?3=Oo$NUI71bj4=`U9P2)L&$bzu^6U`WN zv%$q?Sx*p^U6M;Ic5nO0gs}|-y|IJ06X3SCZ}``T(@&%;9!_+1m1R31b;N8yYlN7h zN=#l3b%@DOoi(V@8qzr@U|0LEVBeVze_1ZJdF#nSH7H+1Bb#jfoG@p*C5M4%Z2FCO z@Gh?K^06pqlcen)cp1kR zd4mEL9DXoKTK_@UAhjOp NEy97f$kOO^7yN4Zp53|89dx3q`p9e;LHe zj8)##@L)9p(k^YgXBwSmUrx#-A0oH;`JVZ+(uDpA`iCe@%B%r99{F=qR3xLrciK
lO+=GDf95Vpwdo!vuyR56Cxi(H2C%iAA6z)BP}oJMzfq6) z!ck>kzU j{p3}{|!-yTN}c*Wux_HaY~tSCiioA zG=LpT@$QbA)EUad T z?73#)7NStdP}QV@bF@09d90uOTVW<1F3A3jnXdQ0|1SDm+qjH}VFNNDaATRYion6< z;#73Mp*RITqMg<_A{uCgZO49wEd^+N1IdU43@KY0m9tQNzP{;ox8=16#7EzCNw{rC zv=+#hD)4?LpH13%BJ)UNe~#Lju@O?1D9Zemr#PrYa(5q^&Zmc>g_joUyZe2+X5>Ky zMb{t{Qyvz8hMI> (w~)lV~U)tsjlR6Ux$jNz&nk0f3dmL@DB)C$2n zxLm6wWE-$DXV;O7t12-kw+1aNeZ;YHksJKuMh|Iubnu|2M?yzef6dp{y(Ytl75KB4s~yewlf`Ou|Yzcv<3Ss{__qltrU<;@heJ+of@lt z;K`4&vsfLXUl9K6Ny`dT*t1Gb^>rXDYxW11K9fBCY2S4o`y_oZ-kXv<;bO!O&CUbm z=^cKB#!;s<0mN$&e`=d~NFHRG`38sFdF`pOeK3}m?E7tPnj|S< e`rIn!sR zx_h3U>3$lL{mvxjciV& UpA &E;``(HD?aEr?&GiN z?~k Y-ucHp!avD-HdevP_S8<@Fa1*^bI#MNqOwX-jSKIP#UaA-4E =A1 zKr5fGCnJ=!BZ7n`CSd93=^R;+PzQUHgD7*#_FzDCT>txutR<`(9ZK8EPvx4T2Zd63 z`sTtcm4i48pZxJ34!pA9pt8Ab`swM%RhXDzAq;Jf=z>9%{-v)TJy+O|t|iLYe0!fu z5J-yg6$0?S%5d$$E1B_Ryk_9Pj8mDwB|$1Y+bn2ziBaUA+D=}s3QU?uYQ5<8Z`n_T zuC9g&iNSu>T?la3aS!AEiV~u1G-Mt|JJr6BLQ4ptV^blmj~^P|8V=Dbqg`k*n7)oO zV>|FY0mJ<{iiuDfY)tE+nXKVLM(gl)1EdUYHvpw3D87QD$y*3?82xOkrOKBAE|sR5 zFN&eYmxM-eQKUhefiJ_~k4fWm(GsG0ZrU%(Iz~gK3pK8zH~RDK)%)q$Og^NTLE{Cd z9LE!FOX?mX=uF}z@HP> O3}2o( z1=0m&H}^ml%i)Aj1eCYvf88#u#gqoQ-*@(9(6^O)H8azFazbS-QUFLX9 Kuk2@VwRq!AEooH`PXa{>jt10@r3DKW%(Stm3-eW@BXXV%4(UT*#Q)U`3 z_q=StP_IJ^{Mx|FRF}c88{YD5+;5&rfIZFCj=?t>$we6#(Vs 4JBr+o2) zAXPo#Ui!_K3MIq(glvh#)2&~cYgo?Q?7IHShdEc#DqYep`_^Frx{(8K3(sE0$5%N4 ztKP=p0V<{@1uYjUlhVr%dg;)^zs$Qpt&Z8(#;;#+)j8RFu#UR;e6z^PL1>*0yjMm# zu!iQRyttDvn)ONOQhELb_^r3I^}NL^WP0{nXE#LxC0zPFNsXQ *PF zHw>~XM@q4pP>KhBP#{kMYjQ(=OADB?IkksRCZ+JcCWfGd{9bjeF%gl~T10|Zu|@&@ z0+QSCY07V*iN?Cb1v2`f_e6*QVSYT7kSRyY7cEC(1v#ZZl{eh3%!4K$1@ZfM{nWdU zeqZ=K&ZGgH66z=O+wtD=rK$jKVxO;?3&CSs-c?l_2J%dMl9H0AHv8{agD0z|)C>q4 zBdDk7mf9pI@0V5Xz~`4YFNOvb*ff&s>KdQZvLODa?w=}fwE-VUOP|ERpecnC_?9P@ z8Rfg30P1ux@dG4M&e~ApyyF{Uzkw3(5ll)GOM4=06X$-4XDS=!&Bbu++;uNusePJY zpKTo!{k zu ^K{e=me3{Jy`wqXQ`8TBw55rf(D7$w*CwlY&G z+QrX1Ck;XYnP~}U*_IDW5UpVtlkp%`|7c;tq!bpjm||3uo0Ql;BNw|~xU^sA%-W8R zHjsnm-5@_HaNAe_=3r YI4fQpPBus{48!uedgnvz)~iokAvU3i0VNP(9m#kzy<27QyY2b}-ANZDO0_N-sr@ z7z*Y4=qTZ*Z6%(GsRm!Oh@GbnhG88A6~gVB2AMe=4GSj#N)i8iE&n^@COE+iW|kYY zBgjF)0+C{@*@F4KGI5prx^X`g+8`%1VOmF4=Z#RSP`}oO-X*DkUiJ4E&X|yJz1~j) zM~1Rh+osW^!$tDcX2nH)y1k(|W4^PO!(7wjmOoH?l!)t4c+MgA5XVvGxXWUJAn%9% z>u_paJ 2^biSK@Z9 z(J~l46@3A#aTlj>i0%~&tL@R|Z*)<<{^dyf+mN?ZWg_gf;v4?f7=)vJZE9ya5a@8E zAB*BW_EnWjP^)u1H(s>}65-{LYb9ue8SD4hs(nC1+@g3QQSVSgWag6J*M9{g@ lUA@$#5)-FhoTt-U)CtWKt3Fb^%Sn zlTuI^bV@M}Q$BiX?pi_-6@%$gjiVtE;(MnP<@wJ1KRv0b8!Ph@KQR?L*K0+>99~r_ z0Bi{zB90|qd(uvg=rq1PpBJ1)Eb*|SzHNek6cSq@S$x}j$swxD^_eD(N7(@&2Mj6& zk29!`CL85_D{~T7TOUbAcoiR!UEuE7Y2ER@y)+s$adF(uxf$X7(i%JGgJFd-E759l z6`y@g;QCqZ5X2n5jjCwMh5)0#a|r7}3G_yG$c7kTDY^xlqWelPeBC7*o`fnuRoBnj zZgY`lfeS #|9 z{edffxMJ|^K-#N~92+86XAUb h*rBX_JlxfqR7LBFms{$EzM!Jw#?& NPv``b^N>GpcDv{M}|Y`!~PRjX6}AJVX<4I|PfeSsK}7xoVki zX&A_X6Bd?Yvs@CqACDBYCBdfX0yNXS$n>TTn)K4fD`5>*5uT4&FI~l$kle%ot*uee z3HzD_)8gK^PnI8jQMAhP(Ebm3`>ZzbwwPHY;PGRlIV6x-DHx}1D{Q(%tVUNDeTF-i z4nXPHS`=X=5B&2?rG-wtJ`G0D8_Z`$UgMO_GXgl_sGi{F+5_Z@7(|LZ5ID_Bq9@F` zTQ8|(`(s_42K6E2y#b^)<@Ex-8DX9CwZRpzhj94aZjAiy|AS0_Vvf+ulRYRBx?@1t zqTWZX5wV3D@$bS}mNL(ucKSM3Z5I)t2GBP-!LD}(!R?lB9!t=I6DQL(Xjw&AtMvtp zYH?t#{f19kV1}A-1b-`tf!YWpfn`>W+5$+{x|}lB>Q>Q@UT7ZykQlf*5R3Kf+Tz;t zQDhAiW55((^g}#ts_qK8K*K&?vX;VWfOhW@73r!Gv6YyHHaR@@AW>BQ=;S67p0>`? z$9yh#Cw>5b#hHR$w%<1Ws_nW1|KJiA1L4|&BS?*8nr46^unl?u7Wi(k>Ye^r`rLYm z{DFTP*TczpX{<@3sG>L2U}3pe#asWrEpSktW5hxY?LJ=2FtL-XcPrzSjQm8x8tmU% z>zK<^M+tt_wd~NOb6Y+dhWl%*-9 (JRk4 z+GyJf|Gatp5P4`A=-YZaAv)jLtLX#v&7Qe{Lo%y0o(K|jkDP$7%rkp7m3l?-C@Ce% zvBa;D4(QnLL5G>lSyAltw}98OmUs#Z{p|bp_*IZG!%B|RM+>W6%dz?m|F3n*tDjK# zoovul99~ITaZ{zVnayw+f+6qFPzAIf<4F3wxT8>Pz-DeBAegfX&1d$NSkGLI;7;y~ zn75@m{i(dxc0L?UVIBB*i($)A{b$8m?%(=9c!f2qT2(q(oWF&d7SR@d5D*qY(iGnj z*dol#=w3^SOrf6+-H6Mx&DO_}T@rkY* 1!ZPNO?4@@|Sb =4^c2{iQ1jHMsFV(i2n$KI zRKNsnk{LG33NHDGIEFh7pSSC4t$O@ejBmDWGk81d4d*nY8p&*)eCXZNMcr}r93K#H zUBzGkWVNeFO-pXfyf&<=nK3~p9kbsN(_qyTiW`aAgl0D#OCET;6~svxVbaNB(*EA? z4+j|JcKqPRl(?ewv`tt$uazZ(a}b@uyi1o)o3c~8IvnmcHd5XeOIv$Df4kh<0m7Sx z<<2@qH4}JDQ5Vt2Z}s9Y2ba3#&5=2<5lIgL1kyLMetE|M5y##*3R{NIs{R{e3RnJa z8I)Z*6TX1SRJv>4eh5XZ?^RuzbC3Q>OS=T@vY9nur?72S#lxo*@H{$h+csX1MUeeL z_~t$9(v@~nF^Jq`IxVZ4 gmA`=*re0g?UQZxBjxgv`fI1|uFV$djsW}Le-0J_ zI9jOxP;dSzgbzt#S> AKu6+vTRqO7QHYZf${}?i;$B_YhlC9aj@fViaSC*kS)9Z*fk89>t8QGj=j(G-J zBc0f85{Hp 0dGZL3>s>Bbszi^%s8dj)v*}F^c8i( z+O+vD!LK`0A*pdq2TlUnwYRBEzW|un_bD__Z*t~Pod_0Si98vsiXX!$p&wYnDM=bV z20IkVcl`_F7~(`kuu-3f#t}TkH6d|v#wUe3K_8sMoVwUuT?{FaTzC0WV@rm+AD)T3 zpYk?5U6-3z7X%8`OkhFV`$pQNgyEt01BB_fhxkeM opa8^x9C@@nUr7P9O28NH%}(99w< z6%Y6brhqY9bK?^0t9{%*ubdO+493GcXHKa_Ft_M> AQ{sJA{j4|OGrw950I)#_LG9NC>(N^3U>m*>(`9EszJ}R zoljCu15NK_;dakF(*mIX|3HQ8MY6bdI)nJBZ_23iVvf;yRA&UBUcYzp@IqRDnAS g01gE2OXU`GUF9!d;}%;uVs zh(?u#9p~~$(T4LtiKc}6l-tXeK@^XOBdLbdv_nc__vkd%R`+o{v72oH#cxG#$wz|q zq%A0F3FiHo&vjTCJF1K+M_NkGdJAx$nK+_e>bAYVbvD=M6-hKdII>;`N532>c1EB5 z;~en{m(bHzEv#Aw?FbuO?ZTGbb?N;&CG|wz0YWm4$kByycu5lL`u-?|KIt*lo2@0y zv)hu6Tnlsh6YhI;ncFK+j6cFHT^PHD93LT}A6Gx~W?LHBs@Y4N0)Kpvq5ocCKjK?I zL3UA(UUEd6f9%T@^e^))j_CfrUw$e<%_?T&&GXMoYrYm!u}c4`g=%X8S?Y N67U+bTff+5b2j$mc(X=!z>@~V(BzWXQ1H#D;<^{+ z^RNj^RyWA}Q&P#C%ciKXf@3hfVSf3^tWCzG8d0U-#4H^#f~qE0_!d#`ZySlB(n?lJ zc>%AcI8BM>7QXYereZZq!*afpMwLH_j7k+Ez%C}LSYL}m2MOxnc_DD0jegO1C^W<| zV^I#9ICuTLe5DS!?3}Ut^zsS}Da7eJtg^LwYZp4Tg&4y7VS`TQVk2l8K0spV|MS>% z-(Bh_@=Y60GynD9Ml0UZm@2reX$0F#G+MkNVzs|Cu>hNuwwTh#Aekz>7Z45>i;mDu z5gt3w_?I?!mUlh35{fp0#C;f=t8EApk4aR2d&!?b71%jMzEr>x>{E2rB1-QL3(m4X zv3<3P%TG0US|)qkn-LYBI;UW!_{B0(Z9i&!J>u|^U>^~TF@Du^OkN^1;}y~btf_F*Jj9`+Flp#-myPA8lR4#M>a+0F zku%*2P}K5-*At$wAQU bswA z2ffPE^XstxPCykS3+i3n#SHF^#xiDjD0)ee&DS++sK1vu3(mcKtuBlc^o_8wdkPr< z&LpXCm}H7MB2fI(f}qO77@k>+rY?OVQ3Xj{z1IK2V4}4Hh~Ar(IT|hf`JV>^=gpyW zwA_SHh#&5>JLzWibfZgw-)jKz_yR|JYbLIi-$f~{T2Ei}8QS6ovvitwf*ITOdTi;q z45?5<${|b)hS*@N*KmXA4VHSx0L<}RlUs8X kd z*9pWeSGSPPe{p@5_e9irQKZccAH*^LvbyqVx!uo`NTTi`?RoWHOtyli0J%sz$UTK_ zJg;m?^tU& f&En@5tkj*6dmNVEdTN`rUE zKNF~^&%_2Kw| M+gfe7jGJ&^ z^_5te{@d@n3DqF&EmQqy(Lzhl79Wj?uQ)2tZvQ6_7{eT{`Vv_BC9vnd)rZq1)R(Y~ z;H )Wo|5CoUT&-u*_ zpuFuNr7t a|q%b+&0oM%bVV#9E7st7jPE(SIRd?TWFI6`+DVNyE_{d*qiRCnv3rVeYt^JdAt z66w@op&a>1n_6 4gI zEoUWtf=YZ|3&0kCk__YCfu1;X2ZjC$NQO2Tb`6NEvB%rxPMrPZ{sXuG*<^Ln6JfsS zzkv;{iR^ETHR?j{-TxU=)Sh9@OI^%2*>p0?z$vts+H*ckFSiDmTj?8OzCtggR616t z<}HT2Dbz~w84ImQ7N8$BkA3C9Zv-u{O{Vy`-9Gg)E7gD@V2zdd$^GZ}7TSDpvh?a- z@3b67p~nAVeVN7%ATpo&O9GOQ_%KW1jX6#wWOpQpB}HGve2#ID+&>JwKj{>=7R&Qg zTveE)8`_l}h_|%b3Dv#p5V0NZVr(=Ow?2e-_nmG}9)@j>25a*ZINDddvIqT1|4n}J zvJ$rLpEZ z;pd3&J-HkqQ_aq$6_RTMV}Ta+UoXic)ZaB#o+xk~eJ z(Vzy!v*sZ6>V!J8bzdSLJXV7~EXh}p6)Za&C%?vcKXOl29JrO_sAU4zDr39NoCe{q zVtp5Y{{uaoV)AvzR#OIiNsjkh9BUqSj^TeHcbqsioPZK1$UjP{AHV4HHc>C&=38}x zo(p1N79Y8cS|tFn{XetM>sw`xa|2| @0BVhvg3(dJ}+uzO^!H^MCralRbjez{fBhCtj3oayIJ*car zh#={tlGv7*lCRj2!cO86_hjb+{Yv^Epqg#c8pS!!0XLmpL-e2Yorx`ER>szFImWgd zeZy>?jFJPeg4NmiLtRq>rO5QVg4RDTSwXW-$_KP1 GGBu4l%2g5gdNF9nPAmj6gTd|^e^Jj9%s{_
XQ}oT^jy ra4=I25--|Rh3`53V$L4N6 zX6Y`O`}W_>ZNj~+lZI2a(Vp2F#@p*h$HyGgex-S88S1* e)?NT7Wmo#|`lXwI<@39{@mIFR{AE|&+ecgV zCMkp7!BJc&Z8zParX@QG_Od`&aV&^hwx9^kDDO1kkES}Vf0we1jLA5 pgCu>gJ%3rX!h5B~35>`50R 4 ;E+CuvC(G5qHi2w;6e9GOfnfM->6sZ)o zR1h`1VE=QF^D;wZSHqg7SDAo@S%9N+JTKHncy^ODF1^dF@^=>T?W1gJmsV;Qve5@C z>}@REZLHGxbFm>YQE~fDo4cTh@L8L0AtzU}C=&wD8FI?gL@?822Q_G9z1B`2fxVf- zW?l~#H0-P#0N8o|6nTx|ydl9KsfrGav}lfTP3p`WB(76#HgO7J#XoT)7h!vl`?>O2 zZERO=H)J&GruKlpU{W=d&bymu;y{GM^QK$bb{WpWD?LW3TRGzt4yo$PLs`Rz*_OQX z3o^X_B)AmiTA8WrHUOB~ipoSh{l~FRbdqc LtbC$u&fMk5t zsls>jL#nZpH?LZu+e2HgKir+rocehp&fnpf{yM9z6E%M4S!y2-!JAr-A9^EzYQBGs zel-?M0zypaC=VA}1QwtxoU4Vd!KNh3FUy?9Ltjhrw%>@84?^GljUf&ds8kUUc=W=I z_x$2dTYkfg=q0~MY%hk-2czUWXEOzqADpU#Jr|Crb)S}Jo5&K$Es%BD(IsFf=~PZk z9(-f!wDIx7HsIQ*TUgG!%p0^iY0RI2JI&NN1bX?TPuZET^d$N=TT&Am&a{^|&ENBi zXi$oWnH8K_d=5ig92dc<2vU15rcEH>=%8tAJ;?ASA)!YQQSN#{B=JNy2CVAY1bQ^G zng?T*>G#5`ZsIr>!|mnprBM>&o-wJC%x8nMVbOUV(te`T%4*y>`mM7FaccZr{e4=c z1h}cx;_}OTLxvCVI$8ODLOVX&k1IAENOvO0VpwJ350=5|hT+)Hsv11m&w?$`2D^G{ zVZ)_vXn LvV{TKeHtpD24wv{3Q@j1KV7ndt)vb|G-|Rsu z#5hP@-^|hQ(C<#Rt7xoSYxBf10smk%12$uJeM!zx?u7=k9h(p>wWsk0CamC=3rh4s zT)bDzb@%l}N+Kx!{f!(16yYSmZLDuQbw9n}V$@JO3l5#cy&T&8=wGe>0 rso3{jwpC$U7RJX2%_E=Gqqc+og1LjF@M4K|#DTK=*l+7aEAK zy&Gnt$0>Z~d|k;rDy6V3RPAfLxG}%VFx6c@*kt_AF3+BzHsR-PJmIwD%I|` pg9I860UbW0Ye2VAmq FwJ!r>1_H5(kjPiOTY1_;l z$T`FEf6;mM;kLG+;+K1)vT>bhdkwsU=!=?I<>1lB*Z7BF(Zf0-8XiKJSRoA|ZE0Py z3 a@O=@4&0w#=bnRiF6G$Wfq_`S%P=VW?;oGb9Tnpu4cSH6wDYqS$wZ(IWX zp^`vq>iZ!&h`uukF9L!UuS*;%;w!aZa%5+q2!Gy}7aaRVcVrm8$tKu2ttIgn49d#^ zjB2q%0; YP!F zeV|g Dc)@ z045_fz`$mVD{(;o)cGd=VD4jB(d8C;4X?E5yR7lvC`Ykx)FRQ#YurD=G2dl&!*;W^ zpDT8hyJ(t^2H5|$ekB=bJYIqG1~GgH-8Ojg1MJczoPx%-(T(!3pHhlPFxI=w5)fJ_ zG`>-nW6R8eQKi)*1|XB4_9D%~XS`fYUV)vOQ=mEXjPn@LGI!Uv7w;PQL5#u=GQ6vo z-~{a?g*2yzN4mJ0KtyQaqQmim4A2Jsq8fj%b>mOP1*(RwB RSt|~x} z4($iHxc{uT8UcNMRiHODYFSb95FWEFsVB{W@6*+@; 8#Pp9wmX7AR zkF2nw9Y^Q$IjcTX*h@AYyLb6$h}0c6ZrGM`(J!9b$TS;+QCYIIh>bvweox$;2 W5d}PuBAvLxMSc-`NWjX}%MAEsBa6yvPe4D38o> z0kvuJc816jd`fWv?G(T<1!)f fh2N}9j~MB8<>A?7K9}y7 zT>F!4$l9v+CydQsmnB@BPIo7~L(|fJC!&udp! x~gXcowTRg4t3LOHkeTWau6rj+(NxyapYpTl0HEQ_Cn~!1)daF3vZE- z!HMo@2z| |OS~;Y9&KceT;gZ(o1x;pOYM%tfI#GI%6wb+6C!176jo4Q1%+y8%{O{OI zxS{Gh)(IT3QdgaVuF sCR0f-0G>q&F-yg*^w_r6BaQU1-rG@1v2<5E5@C9q4|k zqvSBI@g7jZus!XO;N{R|@|Z7vSd6F3DTLl>+(IDo;dJgE8&BSHgSUO-!eugBPT74& z`$breT>0bzTORKb@IZk;VUtY?K;ylol22GKe!M$;63!3JDqy0q3$c~4((_`mk%*}Q z725H>qYuivf(6bM&v^&9v^Q*87y^JuPj*d7rrK64T^FlPimoO{L33KG-fsOvZ@#(6 z6_}e)PgI1}iN0V2CCn0^*}N342k&zOj!ZitUEGEuj^^9rpW4R0jn_ON37*BF?7F73 zA8-8oAsBAJc;gu3l3uryC+KT-H{nG0w+#*dlmx?kmiAs@6}6xy!J_Zk`L4M}%wd>)iNg`1Hlq`UOeShV}qEwGVw z(evO{>~(cG%#z+tjN5ZS>!18oIUQXs9!x=TSJwHICkh^ON+E;@Z ^YP@RkI zt_nSLaY>jDx@7x!uu@03s+Dm{6stCaR6Ut=1EC1YCIR1mO(KE=M8>^5IXG3BsiK}k z);21d_H}Hi0R)PNYhKvK@tXAbl>NU`<4K)D9d9z3ZxVHmk#-FfGB-3I_r(c4rWANM z(-{PKrTbo_^D3;$l?H5X zm!~82M zKxxet#4YJ|Qa#iLppQifZd62_UtbvgI-y@;ts|P?Z#z2X_H$BJykZ^Q|IL#;u?X1- z%05QFh)zJAw#1irnd!Wr6{>oc&jJU52RNDV9UHH<68!!s+Fdn4zhxx30>wgEfd-Ja z_#t)rNW$gHNm0I>NHEWKatXoHBwICYMIikDoJasR`a9s!nxe 1e;rtcdi zr@^46D>fLXV4?i%8 PH9voimim-y2$MO6oNf0E* zn7Z@_hYyUFJFOOd!i6+d-7Lt4;0-P>gHIFxak3|l#F)knK3j&MMRHoPiRDpKQ}($w zyt>n3Cz +r^|8*D| z1f)L*(!XpDr!9i#_S$mxz{XQ1Xdhbgi2MS;JJn-DQeoSFWd9Kei%U6aL2-`rtG+4V zpI11gv@s~TpJ`{p>-BDSs`Z-VlxQ#8*&CWqN08 l)BAC~0BewMJG9og2ulip z2 vD60JgSkq?UZo9YF0|mBSkFTxET%?Pw4@2Mc?z(JA$?I&Cew@6(>*73lv_y& z%|jy>mEDiUzlo nfOPjxH9yg6I6xr;`~_Y23~ z?#5zReywR_hB@W0(}AN0-k?p&iHbc?wEoMyfG3UUvaOt`mXqF{&WWJwftrk7eE7!# z`94f>PVJQMRXEPIiu6cO*m7DY$}E}Pxpo>z96m^uT{n*Kz`gy>68*gBJaLK!2uodS z?|RE#`Awd%kj)Gy{L?S$MC1?`HiBTNsB3Y8RnuBzP#eV8DXdIcA=nizg}@%*xrG|^ z1IiMmS?7p5vfXnF9uDrgN8atBTMO$C47Whb+cNCR@6crAi*3z+7+~h3?kP_H+>r#h zS }yO^_z|S{%iqY>JEIki{cdf!pq+r z*CLlegAu=Su6nb+`HGB}!_!q9u7AT{% oc z4M%#YT%fu~21AFos^}Q$uZJ{N7EPgJ!VZ7&BTn9dH)`Ra2oBb}G=z8s>8)+G1oN7D zX>xJDS9RnG9^9K5lyLk_hvxO%KQtfRhu0}w>Q!%fOvr33#nQ6|Ae1{BBy9O&8RF;g z;ud$BcJ _3g7Cec`6yvP%k7vB-V - ujZDw5M+;&_~w3CA$ z@>JmB8IkX>Du}QMfqrg+&_0|*FI-+U8RC=+L6k{S_Bqa8oqGyNgR#E0p=j3|6}7(+ z
1s; z6n)st&=MU$mjndAQH|6HrW{s&*a+H~&Ri1qe!5^iw|Dn5ly1ovzfr4djhPhaAxvf@ zsv~6Pui(t`N@4HzmR6x(U3_giS?yl#H!thU8cx1 bRee`0zW$pJ?92T9_toADs_V}RLRPbkirt`P z{a$m8psw~< zxy2#Cr0tqRWIHh!A2K$ uV{ z|CmcNVVh5f(r^}6OG1wKk!eF`X!M(+ne}#*IBvv#@FG`Sin1ov4wXCOsdv4 IgLRkT}%&d=^--lBV0 z%>1h%yNqHX!Kop2(vRml-)rwm&CJ1sTvrWt=gi&OqQK*inOFKK>A%P>)Hz7s-*(P@ zcP=3ZdFILr(p0_uS2@rKg8 *wabI`@RhU8e%3&NG_c-^=*B0@_Oy z>nqksy(>256u?a@8T=IVXsbl5G)g5Kz1yjRPMRW05S4WL7y`#7D9r-n3;lsuEuN9? zV3#NKs|MY<3Skc#9mjMFqnRc79!}bahn2vOY^UkQh>sA8boctWea*u$Dawx&V4c?) zcI1hGL5)nsxvs~|yQ)o;K)tp7lbUL>G4HHeAYTF3L`$VNA6{TD1I l%n}4!u*gxzNlls_uxRJ-hL?&Tsd=|?Hr`kuDf;N z)_z^wo`4qcO7kg&;0;cIhUl%13C)Fa@ef4eT-b#Or}P=9-BY#n7bNL#eF}i5C+gT4 z-ApvBw5*-nA`DZYyI%S%+ozX)F_9Sz!e^gRXODX(%Bu0p`l;qnI6<@kLQ-a6`O3(! zFnEoSuZPqG{VgPMVLoXqE30QRG7rUkEH#g_yxK-m$w7?hy+IY=Lv-2{B4ywFgEb1N zFv?3{nU^NO6$-8x?F>R58+^Usz|ZPxV`7Yjq_Ig!EjjXjs;p+HYj% zp*lbMp;l7_8H6U;XK=AfY=_;o!o3{OV0aCfUIuoS5b>kG>&xw+3)dJv#N}I~{GQCP zyV$kn9{k?*qmF{fc}%HoCK~h)JH@oQA4Bd>G>&3>u5ovq$Q171fa>S~MHs?RFHJYr zf+ca0RR-^ iQ8nzObjO;R#2geT{X8lZe!DO|mH`unE6=0^g1Y {R z9(>KtUf+&Vq+E59^3`eXULo4x?;>fWeW0}quKP<>XvAed1v*XSCknCmw0INwoHV;P z%fE){B-kC(fXC1o*p8|)qJ!M849crUw$>KB?G BQRq+K{llI1tjff7?_nLmYks5~?QZ-_hKX}}u_Y9(- zpqn`vtbtBxV$Sk~Te!tQ!E$N}zp=zw0Qt6ZmB46I61GMJt2*PMH~^lzQcE&6FJN9d z4Tc)?jAEkU4kuhYZ;xtJGOVvap4q(6W*RG{GARZfu&vzvasOMYn?2Mb1xxO?TzR-M zHF`)2ItB7}H8Zg>m^OsAGNXF00QPll(Q}f&Coa8e7^*jSvkYry?$Z|N;EQgHe?*LH zeQhfjtAIee`?j_ieLK31lEUz>lEE5vt&I|8mC9V1vrx`c3Bjci6HU)Q7kzC>p+mkp zg() tEIOz{`) zW(rZ%;G&a%8!A6}{l?)MskG#*_48G4DJOk;jfTHZ-k#K{$^M=uD2{U2u6y2;iBVaR zCw@(G%ycv?YK(`4LYGKZ%4|7?#M!*3#R}3G;EkaiEH+(FsomElGo?$0>R~d@{YPQ6 zcekw(MU#sJR$u-4#A1dMdlNd0P$rKX>Q``tB6jy$M91xKI1|?^7-Zj;-h| 9;yxk`Bh zSl6o%$~H7GY_Y1q;|^aa{ZUk;G1F>qO36Q)$XT@`c1K!TesOE&UjY&yJME%>o;0xi zd;f?)J^mwt(RzV*7_+-*@Sp>NcKDpsYlT)LgcG!gQv2&Lqw`kP&I9Ya&%Ry$-)}hH zrVUGS46H&SIGO4F(5&r}_XBe$qaQ>jfLtL?FH=KK0|(Trb(x-^5w&}VojlLmUS2tV z=V{F6PRah_Kz9qrSkdwb#_&LLKPkH5^R?|zk>9F4dUE69LA_~9@UF>;6G|P^Z{x@x z78J3eqVgLRtPIKs5>r-?Y^&5wy~@k(M!PC^f}#mN$@C)md^xJGL5n|%x)TF00ZW}} z(N)rBL<>?T)yuC|)4WzLoPB93HJ=On+IDRpw4OV~2TnRQW%Sn>r%{R{SQ!G JDaL`(_kSilPVN`w7%^%(pGR1dI8lx9bz$FZ zw{s1Vu h6!=(HVv6UB*b2M&tMjc4>(%X7 zl4@J9mVA}N;ZfqRbKH+PM&q|TQ3Z=%i_kYQ{6=0b@P!$^&cG{A=y70vlj=r|;ZnYw zD`XC;=NTi6uSEpO7eAVV 06?G z9EZik#YRG!uAV%dAP5s?PObqwof-&1pI0KUg$S|xzOvg;`~@ ;b;!;Dpbzk5Tain{w*nLa&45leHaP#ZbH_H8cW9c1P5vRbbl zCR^J@+GqOI8QH^_d_ciDHb?V`KGrLv+8O>I0D?e$zt4&t`z?%odG0Q5U^p#kEU}AI zOf+S1Fd>~#&R>BQvYiQ-k7s{Z*FGwOt0aEFQMX+;!a<1p{H`x|6;#iK`VAtCwPOW~ z?c~KE;cEr G=6ux!Y zZx*s~(-r(rV(OZ}hPN;iny%n~3KN9eU6?0s3UP}`dAd9FID^D`Rhxg%q )(UPEz z!K07LYrhPtT>`DR6{ls5j5)1GG+)~xPj|@n&0)*>zu9+R#HW8B{+Stnp^KJrxy8O% zfujEYqCy$VV ?Mo+u70&s6DANp7}>I;9K=K>|^i9|f2*K)5MF#>4iBpEyq z#@hFh9u?TAu_GCe5JvCO@PvV_Y%mX}9^HqcoW!bU44{8ZOWrx4i&=~gVK0lb(snRf z8pP-jf*}87 x*{*a=y$={D>Aqk^sJtP1xt$e&vM@2;tH2 zwp|iC54FdPjM2Gw?0bj@2k&6y=e9ZYw`p`ZEC{1Y+*Yt&+mHcr_7!gm_8R&4lk69z z=nybDhv9!KkOa&sM&webmZElde5>t_H?R jGA%`-l!57XF&>=C^*Mnl^&7= zu#iPDduy1x;CJ1ozI&4GPT4d|;!_Y<4rOahLR>frKKm8nPMhcefu_e(Zh87o%G3?a zx44#L$^*{V8iJL0tob^_Hvn@f9_Dsk?U`LUJhgvoScDDZy~US*m* +c3&GP;LQT&52Ho>ssG!*}}5ILj3h8 zc+G#W%ElQ_Dt>feb=^qC5=me4zjG{Oy#)J-0%@#|0E?9cFej+@RN#7#fajNPpr*b{ z6DkaZ&UdEy9KD6wm Wi|g{fT30ppX4bsMb8UZm6XyJdonHv^OJ@F2n2YDs2xgz1AmEkU z;YN_KsoBTlRY({q WWTH}}yDOs$8?P}iTPj=QC9pq3_T){1`%Lp5FG| D) zk}v=JpT7{Wg#~*x$>o?}{J;Ns4$XUa1Vo;Y|1^X7#v0MPm%sl*LiVMJa>0K}jMdx? z{DVGDS*#23v54gM5z4~mWNo)k=iuV3YW{N?hd8BLn2Iy1`L_^b^$q6k_3nSBKJYSg z6DtI {wt_+D%p-*qdN~*zbR ofs#07S>yfERI6t$BN>hH)tH56_pcM83t8 zqH2K8xk!!|V2qW|;E3ens2mltt`LXgc*EohyK`>$MkbR{ziqVae1d;w60;)3Pv|I{ z`mgvwR|}#h^&RW1M9eWJ6@!?^Q9vsXLqynp4NFyE5~^qIhsJqANmLYq;0%`m@{ #++o& z(s*#3RV4r}G=K^#i%oxjfstDn5O3AX;8vvvbF;GPM1=%bsDd;=jsRHSA;8K9?N(B^ zYaS_4R+FfDpz4t3(j&PrKX=3WG;qI>IeGGP{x^&%eoJz$u+`mOuswGG`lx;9A@~X1 z$00btRUsontMnhlhY0Kvf2qg9a@YqKq?bL_Wu}So*^SRnS51G<7(Zgw$P+(g)tMdk zif#sbGF-(9a~_r|Nzu?TAFiT>aqAO5@=V2KHy{40cIFUtO!o4jz1sgX-Oy*F&$Ou6 zGPq8J|45La0?XjK6Jd7hz?u;%O%xiHy&-$g>@M7pvO|PBiY(VtIHWahRI+X=-$ds@ zo~bYg+| 2EH_fck+ 6UHHElJ< zC`77j{Nn`pzq9Rby{F;inDkm2zP(sodN6mxhKh+v73Rg&=>*fiC~*onS&XPw;F)0e z_4;161#^Fx2pqCCD-yMwvWap4KyCr#3;=e43V_cZigQUpRRo3nPs{ayc|Z)JYbmOf z*)0e8vq#3Iv~n~Xl&RHVkQOfH*n=}+)5$OAkBCOqk3O!2Bth#s1#LcB5H1o~sbO-* zvSv4ptj2KpCRklfU|dx5b+k$MXugbAn$OqK&hCE|Mti{nc{lm(lk5bujz-Rp{emzZ z{Bm~t6zOL}1dsfZW4(ULMdw-eL-?u4Za&sGaq`Xj--yAQ3wU^kh= _W zs|9~D30q;HVIxVPeM+F7%EtfWdU!JY!HrP2k)k*SgXvUh@m~_cC|$5$9S3OPLtY*> z_~7vV_7A)hn8{yfl-yW+$WKHvqyL?A1cl4H;y--gxY8h~gLQ!#K1K&u@9OQL=fhx$ zYBWx6;V?-C#mb^^2zwkvNW?;a^z4V53i^M1b;Z+*H;l5E+u>LW8!^bw!{Cqi fzaD>$yHLOB7tn!x2hz4n|O6f`=`irUN-&A|{qJe%?m70Ca^wjtg zBs5D>BB5n!7P}x}Q?ILbs1muP)jR$-$k4%*%`m3=51%A3`ylLtBm-*`ANCphMTUPa zNTg!``C$)`GH3xTPykGpQep-r=(D9a)mYX|YKHX@)6)KWiWuZSv_}-4iSZ}vYmgQe zh1TvDVwln}{ImKvr@Ad!2M=}v!5>;(_!`s7HKy=c)`7206fal3smcLgx9xtN@gL*) zGg%P<-|h?{*9hkd`TgZeBm0%m@2G!8Pp=9DkuJP-d)FmU=~9b^*A|YK&KWr(z+#7w zm|>3Vd$CNRgOb9&X6m~)Aoz^VM3IGu{g$gAb)fLq9*(FuTE^!}!Vc&*PkO@Fd9wYK z!n6?Ms%Z9JoMs ZW_OiGzybzZNtN{mbT*2c#5 z 7YPmojm(3&5zR{D})ZricgmAoYKY<~n$Q4{ppudiXj? zHm8hfibB&_O)woG6~4uo#UWL!l5T1B`ixwhS)~zH6UexPcHJC?h2+Y1r9MUpjfLEn z=NCMp=8|!XWw6$Z+cYtO)kD=k;c>V)>3dtTUZU)@rc2alIKzC)x@~F+H4Hm@sbVtk z4o#B{hg)9kpe27>?MwDXuYB><<5~eSmymfm Djj5Iu6|Y4XXq0uJ1bAx$ zQu$H;;#Y$dfqs%GZynGvIbv`wU4b+d19~x@wi;k%3`%pIf*B{|2t3D#@O}arlK}JM zcXdCE3#(a}c}II*_C8o}F>+aC`FJZVziz5;OKTkkhJ$~)0!+YP`HAKlCwp|dzW4$^ z;TP6&p|up$7M^^?LG=C~4y2k1`X_(;U@l39iW$4?i SEG&Nl}h&4PAGGU<>4g$-A0A!^>Ar1pY zhiG{f%LISO)|`kGR8SaUxWC_t%^>dJHZ*bzNW{B2x4>1%o46+O?1@(lc_L*_FUAEb z@t#_yK!S*upBzrWQc S75h(zAO8$hdp04Dk?G_v0Pk; z@gc|sPpcP^ifYoLz;&d8Vr5dqq|pWg97-lHj2KVK&76~^+)=f&&fLEjW0VP}`}T~D zdJ%uBHl3u!$)7MVcK@h1$tJ*Vo;1ZCUEp3RLa`2%)?=AciuIq;_$Lc1Nc**gMYZ)X z9I8}DqG>Kn{} Q!#DH5r8ymhsERD!@OXJr;n{MjW( z1ZN+LFRWp`@2i__HQqqD<1e_zRQ|d@j5mLE`-M2Uvr@34HiFO*RSt7W7;_mT5Afe$ zjV6R;7Pu1;Jo vHYwV}Qgq|$*+ z(wMZJieVDuNvfG`s-$XJ5t3fD6Q;<^wre)*v4`6uK1Jb0I(c)XnYs{Sp;pHh2jPEx zDe;r;h((feL;4b92FfihumYg3*7ZJK{|ZZMTMH}#kme^d!~nhgKwIW#b4y#f)Nf^D z1z0y#1(VVCdV=n5kq0 !ztT8U8@1?JW_)I9JA3 z6Ep`gkLnIFlws0d%${WMy^fD5apSkb*qk%TCBn)Aj0;GqgIx3}HPM6`Z&|T~)Obrc z2Cz2ux+>tmY>zQUp&alyg%4$4my|hzQ)VqAa;{k;2XL^M@kodU&S{t@q^^JOn)nR; zM2WCD)%G3+SSkcfb4Wy7w63Y3p~sAoO|4je>p=97n}wnvvwDk??;e8^+$ad%z~&}S zz*6~yIb!j4Et-FHqIx8d%CM#k7u;&ce9A*W75p; C{ZtK92s L$> v6Z^)RrWRn>Rhjy1N1dfR6E`?~3dZh!w2 n*G#m4(nx qL1)0 zhtm75O{fb$O;{g)=^lpa?$Bi3xU~^w{LRimas~3i1szr+V+P_`c=3tCnGj)*OYzYD zasn8p*SmcZd9|V1=;L6*p@s^=S2HdZ0&rjUJbW&Df^o+O6fpj7!BSd|Q8!57k4lh= z3yA0#uScVcR~p8J1oVGZf|OXcXw4;uVrh8lYaQ7<@>@oElICm{SSAx>o?2_l+^e|L z!y@Wlg|ilm=oMUyocaQs(^6i67FA09Jf};kp)J~;xdDzWT;F#~vdPVJVgAtsi!o#Q z&gK5((Rv7mrW+TinLt_(A&0z*k dpDtyVLCY?Bep>$@N+Gzs~-0 zRfJUV8ThhEq?Tr4zMk2KNc!s6L)}-KL=tJ1eU$bg63SrCgdjNTyM Wm3dLVcm>DDIl@gxyt-c$(8zM50ItbMTg#o@>+OSO-&T*4e}c z4EsGZeqW+OKuswi2o6#(qs%a(Xrtd{w;=kxo=~gC j;g`0nfks!2_obg0n^|q zbND@~Af>c9=u--tO`I^@?jlZ@a-R^BikX8kSjz6JvKj9o&_KaILYRdJ$xqzob=k|^ ziV`E^mmqLNkcyI(DN8UL>}iF%Y*+5{O+7$=uPBFgU1#i<>^m4nRuOS{5JXm0jCc9J zW@@z=A8dcdX`^b_{ZbFHEsf`#@`6#Ga!PqT9pgnMFuE 0Y0EXyU|NCftL8xc!D;+6f4Vj=IWzfzEBQ-;rd)G34M4hb-) zOIxq*695y%65+i@BeBaD+|ta?&LQ$=djB-uLzI92!`SsT#OGoEb=yN#lwv!Ae2YES ztg4Vd>XqpvftQ@*T9TX!61m-u?}LzUI$+A>kDBR(Bxp%SAuv5mT#IAfpC?ZoR2?AC z 3Z>?B50i|C%`6>0k)8_9vkZ>K6d@)S+anU zkRgAWWWud1f+<%_*Cas;GAe$_?p~BHetq#QIg&r$u}9(8Os2}-yf}IBA1}xftEPIu zW!Yu+Aolq}%mvnLmRB;qXZo1pbS9u=(SHz|j5(9ikn=6pg6V`LXhBA0pxJ%Nx(85v zVLbh~XM2)C8Q>Nf;Gu!heEpyY1*B(44KjaM-|8__hg&{FM$`Z^Am<8s *}4{xRc59_n!$g?7dNzWqOSyoKz-l$U84adzF zvN%6O4xxN;8ePFbbX?e@A!$Cur7X*zc)|W3&YpPNhjJGdvMh7Mc-X+&*l3hUaz=j; zF-OD?7D2keXL+sI3XgiNu$RbV*<)10zS@>OU$k4T4;Th3L7jY22((9=dgTduZTv>|}Yo!>jP{ zePH0d4${TMLdI^; jlrDLd#WcHNbu+L^};o#bnBGPW&*QUB}PjIigg_ z$Wi !N?|YCQaOSgz3oIhzAVwTPi*IjP8hrmc!~sS-ooa$-?5 zLgnJv3E8Dd7FGJK-0_3a^ovUldoQVl6<)62UUD3M c}X_P5gml7F@frmqY*R6oM@{z>U@olpZ)Qr^uY5iw&%PfRR;{ew-Acg;!UXk(y zx4*XFqT~>|v#%OH;J2_oFhOJ`a6Jc(X<0h%X@-jw)}QDjmNxC;rm{(|n#rFW&@?&E z(IwOYG_4+?j-r{;A;f RcNyl$GK eO3;0SA_t8#urqk3GF~58EpfeKqVmIABLDIVI|mhH9m0_Hhd3 zW`xRz{e=Thu-ku2C4{<++wo2|zU)}`;CvJO!ADoOgz(G;jYxkjK6qfeO-F`=wAUX_ zKe(YND|!@Ga48Q*6Js-F&D_!*Hu$W>qkV$_E{zzC2_fKL+o >TeSW0_|CGMmXw&yMGyv;5&o|l=vX2s;BuTt5SdklX9$sS4ByU?M2@l5e@pOt+T zJp|xF1Ih9KN#tKVX&lx>A=+yv2~D65sk>N}38BOCQu+1p5-8^p)fOw!V_4uF0cMO~ zF-sAnEm0kxkQ5PPGQAk?SfPA2RK%>w)nYfT*+Wc|ubwv6{XRmidhi6yxeZIx0s*31 zvyd(nBXNJ^GXT5KH1I`Oj*6JlwG~-_6+a>eOS!!FLtBy9#>Z|U8(2!V>&K45HY}qG z1;#K)656IyqJ$=@K?t{4d`{$pDnMGoga4X;4ziK9%TI~Io8~csaq{MLh~~I(Z@NK< zACvd!Pq{UUy+i-PjUH4)IUsDxA3PmwSNDBdxYd6Pv`BX=Cz2H!|C&HGF_g6$PvW41 zSgWv64W4Y#X*7O|5$lw8H`IiXeNiKESVxMJrvg$uZBSBL!ZWU5i+FeVhGQQ?zTRzy zv^;%-_;}26#Vi+O%OY;7ZMlBR#4og+t}X=}C!gTF <}jr?&k1 z^^kuJbpr=v?&|UWpCXDND0Kc-0*L1oKym{lV}1Jfh oq{BY-pPNWaId`E_$N{za%b0;@$pfY1jAT=j8pRP zO?NCYY+@CG#-Et#{?IJCHzMkiK;(Rgm~($b5ishFV0=Gej4H00vWJIr^P8u>ZmaTN zSVIvi;O@4DTrW^85c3TO%n>h_cxRID?|=L6zX--_Wc !UQ!p$u^5vOWSjO;bW0?vj#Fhfjzbe$r$*r7+}wqBQtIgsHa8(FK1( zLrn? !uUL@WWU3DmC(l!>4MHo6QhfKR v?B6}O+(_X^}(exfVb57lAQiOWWX$5$|I zYi96tj5rHl^NJNz0{@aAf}SOQCuqThgW3^DMS90u>kl*BSDXCyFpgbYK 0r9|N3XT!^T++7X8I`~rpf#~EUPet^NA zG)iG|g?|Fjl-HPz9Da{kxQUPB=B0N~nYYX~-K6sqBe+s#=}){tsXr$28HW7QY3FLq z8&o8}O=-dd@ (b48C=NV!kmTW z4#Q%$`*q4Y>{^(;->;J!vL+>b<|mlL5)oPxVaBaM08%v*t`#&a8u7Li#=fk_p?E>5 zc&;(63K+}Mzwp#L5|zES)>S)x_k9Agu*tNsAHR<;;xVByIU0E( ~pKF49Ow{l(znnm*fcRz> zH99ST&OAIE!YglE9=0iWo2P#Z|9df0o_Pa0<#Fdk5X-S%b5|x1aWf8r(H +R&}dOP>#fC-uGKdG(%`11m4IU#T3t2ueK@gGg1vhG<= zbNGSOymW~{^PIOde?ll
2|w5Lh%2Jn zY8b>MaXnDn@L8Fe)4|eqWqu2C(s~6`w&-DK1_O37p_bs%XcGlfLK{S#U32cl4$Gkz zwV4QdNizs3LnBkB;NXaXtv}Mn3#UBVUXBfZo+8fqzdikR+t-_d)#m-7%3f^ }!+1k9 ~Zz0VSl1PFV&BJ z3AYUdG~HxP-A4CpS=_=f=Z3FM7(d&lx+@ROm^IZlJ{xP%3Cmnqo(iCM_%%q#_ZydO z_U$S0o=Rg_kIjuw4Y>dO%SGtk(&~f>Uu5!7V#|N3it-p*400{;!JLobFj2N)0a0ir zv4)ptgF>0b0ch4S89PenX~HRh@QJ|DZUg8nMB`Uy$FWRyxE(E%o4=Vu`uX_;W!a8d z+ij{J;Q7kPJw8i{LdpRNpWEC(Iu8;B1k&F @rR^>oh~JyoAxLs)hnjW2(Gs gd@oS;Ij+XuR{DydzJl|i64TvI5Gj=V4n%Ia~6j%NB>H5mf)j=WS^b$bwhu? zJ=B|uxxN|-{n1)bAd`mm4EbASE~X3AcXK^KuHfF eH;RU zttnC2yE$xF$8fma)uY%nx=@J5FqB+5fWuNA@5?c(*=;)1qdYE3+x{t46~N^+>m>^~ zyop-h=P;W?s(dFDU&;dyn)M~7NxpwQM1S@mV}OYdVUovT7`vV|pHpd+VWvL@scuWC zp%ZDiQO5s7;K%hnd*Q9CVd&CnOykV{8m8?wPY? KbSsr85b; zOnnOT^yS@x3Rs$D@ eXncc7^ zQzE5tQkupHQt=pe>{YbC5l1;CQqIqU%I2692|SG6GIkMJ) xPe#($%JMggv`bY(!yTA8?|vMk#@4P)W! ?f+TuRK_ZR0*+G2_ zQ#IY=4Gh+$GO4Bb3L(fNmdM|<`*k9dvA8}nP{M4ut}&H}uZ;ApiL~LX>V_{?Oy*Dv zD>DNn%%)Z @jQP9Uv)MF&R;NC4r86lz)kRfiG090m`%4HiZa`EeU;rc?A;2p8yJ-x z7qvNAxaBFcl