From 162b936bd395dfa64f601dbabbb8fc6b639e60f4 Mon Sep 17 00:00:00 2001 From: ZomgPonies Date: Sat, 24 May 2014 10:40:38 -0400 Subject: [PATCH] Fixed up in-hands and flags and shit jesus fucking BYOND christ --- code/game/objects/items/flag.dm | 7 +- icons/mob/in-hand/compile.py | 48 - icons/mob/in-hand/in-hand_sync_report.txt | 542 ++++++++- icons/mob/in-hand/left/flags.dmi | Bin 0 -> 459 bytes .../in-hand/left/paradise_items_lefthand.dmi | Bin 0 -> 161293 bytes icons/mob/in-hand/right/flags.dmi | Bin 0 -> 456 bytes .../right/paradise_items_righthand.dmi | Bin 0 -> 160160 bytes icons/mob/in-hand/ss13_makeinhands.py | 83 ++ icons/mob/items_lefthand.dmi | Bin 161293 -> 167268 bytes icons/mob/items_righthand.dmi | Bin 160160 -> 159024 bytes icons/obj/flag.dmi | Bin 3100 -> 3561 bytes tools/BYONDTools/.gitignore | 7 + tools/BYONDTools/.project | 17 + tools/BYONDTools/LICENSE.md | 20 + tools/BYONDTools/README.md | 30 + tools/BYONDTools/byond/DMI/State.py | 142 +++ tools/BYONDTools/byond/DMI/__init__.py | 379 ++++++ tools/BYONDTools/byond/DMIH/Variable.py | 9 + tools/BYONDTools/byond/DMIH/__init__.py | 135 +++ .../byond/DMIH/directives/Direction.py | 28 + .../byond/DMIH/directives/Directive.py | 14 + .../byond/DMIH/directives/Import.py | 50 + .../BYONDTools/byond/DMIH/directives/State.py | 51 + .../byond/DMIH/directives/__init__.py | 4 + tools/BYONDTools/byond/__init__.py | 41 + tools/BYONDTools/byond/basetypes.py | 454 +++++++ tools/BYONDTools/byond/directions.py | 47 + tools/BYONDTools/byond/map.py | 1079 +++++++++++++++++ tools/BYONDTools/byond/mapfixes/__init__.py | 35 + tools/BYONDTools/byond/mapfixes/base.py | 150 +++ tools/BYONDTools/byond/mapfixes/ss13.py | 66 + .../byond/mapfixes/ss13_vgstation.py | 311 +++++ tools/BYONDTools/byond/network/__init__.py | 0 .../byond/network/packets/__init__.py | 91 ++ tools/BYONDTools/byond/objtree.py | 709 +++++++++++ tools/BYONDTools/byond/utils.py | 48 + tools/BYONDTools/doc/Makefile | 177 +++ tools/BYONDTools/doc/build_html_docs.bat | 3 + tools/BYONDTools/doc/byond/basetypes.rst | 28 + tools/BYONDTools/doc/conf.py | 266 ++++ tools/BYONDTools/doc/index.rst | 18 + tools/BYONDTools/doc/make.bat | 242 ++++ .../scripts/byondtools-postinstall.py | 50 + .../scripts/calculateMaxTechLevels.py | 107 ++ .../scripts/checkForStringIdiocy.py | 163 +++ tools/BYONDTools/scripts/dmi.py | 278 +++++ tools/BYONDTools/scripts/dmindent.py | 77 ++ tools/BYONDTools/scripts/dmm.py | 229 ++++ tools/BYONDTools/scripts/dmmfix.py | 120 ++ tools/BYONDTools/scripts/dmmrender.py | 89 ++ tools/BYONDTools/scripts/genTileQuads.py | 210 ++++ tools/BYONDTools/scripts/makeBigDMI.py | 33 + tools/BYONDTools/scripts/queryObjectTree.py | 28 + tools/BYONDTools/scripts/scanCode.py | 121 ++ tools/BYONDTools/scripts/ss13_makeinhands.py | 83 ++ tools/BYONDTools/scripts/stringcounter.py | 209 ++++ tools/BYONDTools/setup.py | 48 + tools/BYONDTools/tests/Atom.py | 27 + tools/BYONDTools/tests/MapParser.py | 70 ++ tools/BYONDTools/tests/MapRendering.py | 35 + tools/BYONDTools/tests/ObjectTree.py | 74 ++ tools/BYONDTools/tests/runtests.py | 9 + tools/BYONDTools/tox.ini | 13 + 63 files changed, 7342 insertions(+), 62 deletions(-) delete mode 100644 icons/mob/in-hand/compile.py create mode 100644 icons/mob/in-hand/left/flags.dmi create mode 100644 icons/mob/in-hand/left/paradise_items_lefthand.dmi create mode 100644 icons/mob/in-hand/right/flags.dmi create mode 100644 icons/mob/in-hand/right/paradise_items_righthand.dmi create mode 100644 icons/mob/in-hand/ss13_makeinhands.py create mode 100644 tools/BYONDTools/.gitignore create mode 100644 tools/BYONDTools/.project create mode 100644 tools/BYONDTools/LICENSE.md create mode 100644 tools/BYONDTools/README.md create mode 100644 tools/BYONDTools/byond/DMI/State.py create mode 100644 tools/BYONDTools/byond/DMI/__init__.py create mode 100644 tools/BYONDTools/byond/DMIH/Variable.py create mode 100644 tools/BYONDTools/byond/DMIH/__init__.py create mode 100644 tools/BYONDTools/byond/DMIH/directives/Direction.py create mode 100644 tools/BYONDTools/byond/DMIH/directives/Directive.py create mode 100644 tools/BYONDTools/byond/DMIH/directives/Import.py create mode 100644 tools/BYONDTools/byond/DMIH/directives/State.py create mode 100644 tools/BYONDTools/byond/DMIH/directives/__init__.py create mode 100644 tools/BYONDTools/byond/__init__.py create mode 100644 tools/BYONDTools/byond/basetypes.py create mode 100644 tools/BYONDTools/byond/directions.py create mode 100644 tools/BYONDTools/byond/map.py create mode 100644 tools/BYONDTools/byond/mapfixes/__init__.py create mode 100644 tools/BYONDTools/byond/mapfixes/base.py create mode 100644 tools/BYONDTools/byond/mapfixes/ss13.py create mode 100644 tools/BYONDTools/byond/mapfixes/ss13_vgstation.py create mode 100644 tools/BYONDTools/byond/network/__init__.py create mode 100644 tools/BYONDTools/byond/network/packets/__init__.py create mode 100644 tools/BYONDTools/byond/objtree.py create mode 100644 tools/BYONDTools/byond/utils.py create mode 100644 tools/BYONDTools/doc/Makefile create mode 100644 tools/BYONDTools/doc/build_html_docs.bat create mode 100644 tools/BYONDTools/doc/byond/basetypes.rst create mode 100644 tools/BYONDTools/doc/conf.py create mode 100644 tools/BYONDTools/doc/index.rst create mode 100644 tools/BYONDTools/doc/make.bat create mode 100644 tools/BYONDTools/scripts/byondtools-postinstall.py create mode 100644 tools/BYONDTools/scripts/calculateMaxTechLevels.py create mode 100644 tools/BYONDTools/scripts/checkForStringIdiocy.py create mode 100644 tools/BYONDTools/scripts/dmi.py create mode 100644 tools/BYONDTools/scripts/dmindent.py create mode 100644 tools/BYONDTools/scripts/dmm.py create mode 100644 tools/BYONDTools/scripts/dmmfix.py create mode 100644 tools/BYONDTools/scripts/dmmrender.py create mode 100644 tools/BYONDTools/scripts/genTileQuads.py create mode 100644 tools/BYONDTools/scripts/makeBigDMI.py create mode 100644 tools/BYONDTools/scripts/queryObjectTree.py create mode 100644 tools/BYONDTools/scripts/scanCode.py create mode 100644 tools/BYONDTools/scripts/ss13_makeinhands.py create mode 100644 tools/BYONDTools/scripts/stringcounter.py create mode 100644 tools/BYONDTools/setup.py create mode 100644 tools/BYONDTools/tests/Atom.py create mode 100644 tools/BYONDTools/tests/MapParser.py create mode 100644 tools/BYONDTools/tests/MapRendering.py create mode 100644 tools/BYONDTools/tests/ObjectTree.py create mode 100644 tools/BYONDTools/tests/runtests.py create mode 100644 tools/BYONDTools/tox.ini diff --git a/code/game/objects/items/flag.dm b/code/game/objects/items/flag.dm index 2bccf5493f6..f0e2f5b0fc8 100644 --- a/code/game/objects/items/flag.dm +++ b/code/game/objects/items/flag.dm @@ -10,4 +10,9 @@ /obj/item/flag/clown name = "Clown Planet flag" desc = "The banner of His Majesty, King Squiggles the Eighth." - icon_state = "clownflag" \ No newline at end of file + icon_state = "clownflag" + +/obj/item/flag/cargo + name = "Cargonia flag" + desc = "The flag of the independant, sovereign nation of Cargonia." + icon_state = "cargoflag" \ No newline at end of file diff --git a/icons/mob/in-hand/compile.py b/icons/mob/in-hand/compile.py deleted file mode 100644 index 5849530ce33..00000000000 --- a/icons/mob/in-hand/compile.py +++ /dev/null @@ -1,48 +0,0 @@ -''' -Created on Feb 28, 2014 - -@author: Rob -''' -import os, sys, logging - -ToBuild={ -# ' file to build': 'directory to pull from/', - '../items_lefthand.dmi': 'left/', - '../items_righthand.dmi': 'right/' -} - -# Tell Python where to find OpenBYOND. -# Assuming we're in icons/mob/in-hand -sys.path.append('../../../tools/OpenBYOND/src') - -from com.byond.DMI import DMI -from DMITool import compare_all - -def buildDMI(directory, output): - dmi = DMI(output) - logging.info('Creating {0}...'.format(output)) - for root, _, files in os.walk(directory): - for filename in files: - if filename.endswith('.dmi') and not filename.endswith('.new.dmi'): - filepath = os.path.join(root,filename) - logging.info('Adding {0}...'.format(filename,output)) - subdmi = DMI(filepath) - subdmi.loadAll() - if subdmi.icon_height!=32 or subdmi.icon_width!=32: - logging.warn('Skipping {0} - Invalid icon size.'.format(filepath)) - changes = 0 - for state_name in subdmi.states: - if state_name in dmi.states: - logging.warn('Skipping state {0}:{1} - State exists.'.format(filepath,state_name)) - continue - dmi.states[state_name]=subdmi.states[state_name] - changes += 1 - logging.info('Added {0} states.'.format(changes)) - #save - logging.info('Saving {0} states to {1}...'.format(len(dmi.states),output)) - dmi.save(output) -if __name__ == '__main__': - # Cheating, but useful for checking for unsync'd stuff - compare_all('left/','right/','in-hand_sync_report.txt',None,newfile_theirs=False,newfile_mine=False) - for output, input_dir in ToBuild.items(): - buildDMI(input_dir,output) \ No newline at end of file diff --git a/icons/mob/in-hand/in-hand_sync_report.txt b/icons/mob/in-hand/in-hand_sync_report.txt index 4229f734db7..4d6c2c862e6 100644 --- a/icons/mob/in-hand/in-hand_sync_report.txt +++ b/icons/mob/in-hand/in-hand_sync_report.txt @@ -1,18 +1,534 @@ -# DMITool Difference Report: C:\Users\Rob\Documents\Projects\vgstation13\icons\mob\in-hand\left C:\Users\Rob\Documents\Projects\vgstation13\icons\mob\in-hand\right ---- C:\Users\Rob\Documents\Projects\vgstation13\icons\mob\in-hand\left\cable_stuff.dmi -+++ C:\Users\Rob\Documents\Projects\vgstation13\icons\mob\in-hand\right\cable_stuff.dmi +# DMITool Difference Report: Z:\Git\Space Station 13\Baystation12\icons\mob\in-hand\left Z:\Git\Space Station 13\Baystation12\icons\mob\in-hand\right +--- Z:\Git\Space Station 13\Baystation12\icons\mob\in-hand\left\cable_stuff.dmi ++++ Z:\Git\Space Station 13\Baystation12\icons\mob\in-hand\right\cable_stuff.dmi + cuff_cyan + cuff_orange + cuff_pink + cuff_white ---- C:\Users\Rob\Documents\Projects\vgstation13\icons\mob\in-hand\left\guns.dmi -+++ C:\Users\Rob\Documents\Projects\vgstation13\icons\mob\in-hand\right\guns.dmi +--- Z:\Git\Space Station 13\Baystation12\icons\mob\in-hand\left\guns.dmi ++++ Z:\Git\Space Station 13\Baystation12\icons\mob\in-hand\right\guns.dmi + scythe0 ---- C:\Users\Rob\Documents\Projects\vgstation13\icons\mob\in-hand\left\rpd.dmi -+++ C:\Users\Rob\Documents\Projects\vgstation13\icons\mob\in-hand\right\rpd.dmi +--- Z:\Git\Space Station 13\Baystation12\icons\mob\in-hand\left\paradise_items_lefthand.dmi ++++ Z:\Git\Space Station 13\Baystation12\icons\mob\in-hand\right\paradise_items_lefthand.dmi + + DONGS + + altair_locket + + an_tank + + analyzer + + armor + + armor_reflec + + assembly + + atmos_hardsuit + + atmos_helm + + atmos_suit + + atoxinbottle + + autoinjector + + axe0 + + axe1 + + b_mask + + b_shoes + + b_shoesold + + b_suit + + ba_suit + + backpack + + balloon + + balloon-empty + + basketball + + baton + + baton_on + + beachball + + beaker + + bedsheet + + beer + + bgloves + + bible + + bike_horn + + bio_hood + + bio_orange + + bio_suit + + bl_shoes + + bl_shoesold + + bl_suit + + blackskirt + + blade + + blindfold + + blueprints + + bombvest + + brain2 + + brick + + briefcase + + broken_beer + + broom + + browncane + + brutepack + + bucket + + buckler + + bucklerOLD + + buildpipe + + burger + + butch + + butcher_knife + + c20r + + c_tube + + cakehat0 + + cakehat1 + + candy + + cane_nt + + cane_nt_active + + canister + + caphat + + capspacehelmet + + capspacesuit + + captainpack + + card-id + + cardborg + + cardborg_h + + carton + + caution + + ce_hardsuit + + ce_helm + + cell + + centcom + + centhat + + cespace_helmet + + cespace_suit + + chain + + chainmail + + chef + + chefhat + + chickensuit + + chips + + cigoff + + cigon + + cigpacket + + classic_baton + + claymore + + cleaner + + clipboard + + clown + + clown_hat + + clown_shoes + + clownflag + + clownhelmet + + clownpack + + coffee + + coil + + coil-wire + + coil_blue + + coil_red + + cola + + contliquid + + contsolid + + contvapour + + coolant-c + + crossbow + + crossbow-solid + + crowbar + + crowbar_red + + cueball + + cultblade + + culthood + + cultpack + + cultrobes + + cutlass0 + + cutlass1 + + cutters + + cutters_yellow + + daederic + + deagleg + + death_commando_mask + + death_commando_suit + + deathnettle + + det + + det_hat + + det_suit + + dg_suit + + dnainjector + + donut1 + + donut2 + + dpickaxe + + dr_gibb + + dropper + + dualsaber0 + + dualsaber1 + + dualsaberblue1 + + dualsabergreen1 + + dualsaberpurple1 + + dualsaberred1 + + earmuffs + + egg + + egg1 + + egg2 + + egg3 + + egg4 + + egg5 + + eleanorstone + + electronic + + electropack + + emergency + + emergency_double + + emergency_engi + + emp + + energy_drink + + energykill + + energykill0 + + energykill100 + + energykill25 + + energykill50 + + energykill75 + + energystun + + energystun0 + + energystun100 + + energystun25 + + energystun50 + + energystun75 + + eng_hardsuit + + eng_helm + + engi_suit + + engiepack + + engspace_helmet + + engspace_suit + + eshield0 + + eshield1 + + faggot + + fire_extinguisher + + fire_suit + + fireaxe0 + + fireaxe1 + + firefighter + + firstaid + + firstaid-advanced + + firstaid-ointment + + firstaid-toxin + + flamethrower_0 + + flamethrower_1 + + flare + + flashbang + + flashlight + + foamcrossbow + + focus + + fork + + fr_jacket + + g_suit + + galoshes + + gas_alt + + gas_mask + + gift + + giftbag + + glasses + + gold_id + + gpickaxe + + greatcoat + + greenbandana + + gun + + gy_suit + + handcuff + + harpoon + + hatchet + + headset + + healthanalyzer + + helm-command + + helm-orange + + helmet + + hoe + + holidaypriest + + ice_tea_can + + imperium_monk + + implantcase + + ithaqua + + jackboots + + jackhammer + + janitor + + jensencoat + + jensensuit + + jetpack + + jetpack-black + + jetpack-void + + johnny + + johnny_coat + + judge + + katana + + kilt + + kingyellow + + knife + + kobskull + + konaahirano + + koran + + l6closedmag + + l6closednomag + + l6openmag + + l6opennomag + + labcoat + + lamp + + lampgreen + + laser + + latexballon + + launcher + + lawyer_black + + lawyer_blue + + lawyer_red + + lb_suit + + lemon-lime + + lgloves + + lipstick + + lipstickopen + + m_mask + + magboots + + medibottle + + medical_hardsuit + + medical_helm + + medicalpack + + melted + + miniFE + + mining_hardsuit + + mining_helm + + mister + + mop + + mousetrap + + multitool + + muzzle + + nazi1 + + necronomicon + + nettle + + newspaper + + nothing + + ntflag + + nucgun + + nucgun0 + + nucgun100 + + nucgun25 + + nucgun50 + + nucgun75 + + nullrod + + nun + + nursesuit + + o_shoes + + o_shoes1 + + o_suit + + ointment + + overalls + + owl + + owl_mask + + oxygen + + oxygen-c + + oxygen_f + + oxygen_fr + + p_suit + + paintcan + + paper + + pen + + pickaxe + + pie + + pill + + plantbgone + + plasma + + plasma-c + + plasticbag + + plasticx + + pneumatic + + pneumatic-tank + + ppickaxe + + prod + + psyche + + pulse + + pulse0 + + pulse100 + + pulse25 + + pulse50 + + pulse75 + + purple_can + + pwig + + quarrel + + r_feet + + r_hands + + r_head + + r_shoes + + r_suit + + rack_parts + + rad_suit + + radio + + rainbow + + razor + + rcd + + rcdammo + + rejuvbottle + + restock_unit + + rev_headballoon + + revballoon + + rig_helm + + rig_suit + + riot + + riotgun + + ro_suit + + rods + + rolling_pin + + roman_shield + + rubberducky + + s-ninja_hood + + s-ninja_mask + + s-ninja_suit + + s_helmet + + s_mask + + s_suit + + santa + + santahat + + saw3 + + scalpel + + scientology + + scrapbook + + scratch + + screwdriver + + screwdriver_blue + + screwdriver_brown + + screwdriver_cyan + + screwdriver_green + + screwdriver_purple + + screwdriver_yellow + + scythe0 + + sec-case + + sec_hardsuit + + sec_helm + + secsoft + + securitypack + + shard-glass + + sheet-card + + sheet-glass + + sheet-metal + + sheet-rglass + + shotgun + + shovel + + signaler + + silver_id + + sl_suit + + sodawater + + sord + + space-up + + space_helmet_syndicate + + space_mountain_wind + + space_suit_syndicate + + spaceclown_items + + spacemime_items + + spade + + spearglass0 + + spearglass1 + + speargun + + spickaxe + + spoon + + spraycan + + staff + + staffofchange + + staffofhealing + + stamp + + starkist + + stick + + stool + + straight_jacket + + suit-command + + suit-orange + + sunglasses + + swat_gl + + swat_hel + + swat_sh + + swat_suit + + sword0 + + swordblue + + swordchain + + swordgreen + + swordpurple + + swordred + + syndballoon + + syndicate-black + + syndicate-black-blue + + syndicate-black-green + + syndicate-black-red + + syndicate-green + + syndicate-green-dark + + syndicate-helm-black + + syndicate-helm-black-blue + + syndicate-helm-black-green + + syndicate-helm-black-red + + syndicate-helm-green + + syndicate-helm-green-dark + + syndie_hardsuit + + syndie_helm + + syringe_0 + + syringe_1 + + syringe_10 + + syringe_15 + + syringe_5 + + syringe_kit + + syringegun + + table_parts + + taser + + taser0 + + taser100 + + taser25 + + taser50 + + taser75 + + tdgreen + + tdhelm + + tdred + + template + + that + + thirteen_loko + + tile + + tonic + + toolbox_blue + + toolbox_red + + toolbox_syndi + + toolbox_yellow + + toxinbottle + + toysword0 + + toysword1 + + trashbag + + ty_necklace + + unathiknife + + upickaxe + + vhammer + + vhelmet + + vialblue + + vialgreen + + videocam + + violin + + vox-helmet-engineer + + vox-helmet-medical + + vox-helmet-normal + + vox-helmet-science + + vox-helmet-security + + vox-helmet-specops + + vox-pressure-engineer + + vox-pressure-medical + + vox-pressure-normal + + vox-pressure-science + + vox-pressure-security + + vox-pressure-specops + + w_shoes + + w_suit + + waiter + + warden + + wcoat + + welder + + welder1 + + welding + + welding-g + + weldingoff + + wiz_hardsuit + + wiz_helm + + wizhat + + wizrobe + + wizshoe + + wrap_paper + + wrench + + xenos_helm + + xenos_suit + + y_suit + + ygloves + + zippo + + zippoon +--- Z:\Git\Space Station 13\Baystation12\icons\mob\in-hand\left\rpd.dmi ++++ Z:\Git\Space Station 13\Baystation12\icons\mob\in-hand\right\rpd.dmi + rpd ---- C:\Users\Rob\Documents\Projects\vgstation13\icons\mob\in-hand\left\swords_axes.dmi -+++ C:\Users\Rob\Documents\Projects\vgstation13\icons\mob\in-hand\right\swords_axes.dmi +--- Z:\Git\Space Station 13\Baystation12\icons\mob\in-hand\left\swords_axes.dmi ++++ Z:\Git\Space Station 13\Baystation12\icons\mob\in-hand\right\swords_axes.dmi + axe0 + axe1 - dualsaber0 @@ -22,11 +538,11 @@ - katana - scythe0 - unathiknife ---- C:\Users\Rob\Documents\Projects\vgstation13\icons\mob\in-hand\left\vox_civvie.dmi -+++ C:\Users\Rob\Documents\Projects\vgstation13\icons\mob\in-hand\right\vox_civvie.dmi +--- Z:\Git\Space Station 13\Baystation12\icons\mob\in-hand\left\vox_civvie.dmi ++++ Z:\Git\Space Station 13\Baystation12\icons\mob\in-hand\right\vox_civvie.dmi + vox-pressure-security ---- C:\Users\Rob\Documents\Projects\vgstation13\icons\mob\in-hand\left\zz_old_items_lefthand.dmi -+++ C:\Users\Rob\Documents\Projects\vgstation13\icons\mob\in-hand\right\zz_old_items_lefthand.dmi +--- Z:\Git\Space Station 13\Baystation12\icons\mob\in-hand\left\zz_old_items_lefthand.dmi ++++ Z:\Git\Space Station 13\Baystation12\icons\mob\in-hand\right\zz_old_items_lefthand.dmi + DONGS + Gibtonite ore + altair_locket diff --git a/icons/mob/in-hand/left/flags.dmi b/icons/mob/in-hand/left/flags.dmi new file mode 100644 index 0000000000000000000000000000000000000000..227da84987c5008dabf9f9c6cb7f9ba43f538f2e GIT binary patch literal 459 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0J3?w7mbKU|ep#Yx{*8>L*NJ~pU+RIRH%y8}6 znSbB^FAC<=1j;g&1o;IsI6S+N2IS;bg+!FNq!uR^WfqiV=I1dmRLltuD<~@c{w28J z0-ZCl9T@q;XTTd6q5RcBc zQ+)ZF3~AnSKpAI(=@lUGkV6^n#{P#{c1K1$!3eI{&v=$ zXFSX+uWGBl-15MKDTgI_H!)br1Rs#Fa5&n{YEY5reQY*s0aLE#~$*S1}`p!jS`IrEaRr`o6U zqLwx1os=~=VE9||8oPG<2fG#f1Zo`iO~8Q#>b|dPzTfbK*-E@7;C!WgNIVBn$Aj7p h-&kKaZ`Cg|%-{P{t=YfoRx!}y44$rjF6*2UngGzDyw?B# literal 0 HcmV?d00001 diff --git a/icons/mob/in-hand/left/paradise_items_lefthand.dmi b/icons/mob/in-hand/left/paradise_items_lefthand.dmi new file mode 100644 index 0000000000000000000000000000000000000000..fd773f32b7732c73bebb2f8300ec65f0683809b1 GIT binary patch literal 161293 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

Q?O=g=9&r)mp~kQ>g2 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%0DZ1x#+x}%JbYZ6jq!aYJ5mGp4 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

qa-uqj&2PT7{F(ie8ikY%!bJBQhu>4qX;nv{ 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 z z9KJJom!F+*ZfBMKDL2I*Nj*iA-zN^-3pDb*(C+5A+@1L)bgWPCgJ1nGkEaqzKdr)W zxa0rrF4f0LcWGg5k3EKz6D1Ni%83sWmk_aX!M&M8Xfx?Xe*>1yZl*#&OGcRd%Q`oN!a-&Os1V%>7d`*zPl(09G3 z9d7ddVsuO}%Rg>ZfyU0bqqB8Z>74CEktITiE11G!bDZPrcJ=l)?a!}EoP-pt=X)4} zKo(IR9Sb8nt4K-mNTz*0OezvVh(U^q`ACeSRub9{Ob%bd_`?Q8A{J{QwtTdkg(f=Q zyagjJ?IE5!w5=kBequMR$;IQwVP~Z&HBy8|0p}>~V0n1yC15FNT^6)Q(=SlFXrlvy-rmoaRAZ}BLT!p|+(ZJD55BE(vNKq9<;wiQQ+f2XCO6=W& z?OimOkqr#egNH|yuYlHSCV3i+;;{aEQYeL) zm}rriU_??>)J2ef`>cO;xCq$5^`Q@K#ai3pJ|Ulzf0T?2BhaNDgbzMC;psV7Ce0LAWCeY0yCle`Gvt6 zI`Y1{1u_QD3JcKZP4v;!din0s;aO>s8saHadKel1z`n}ul;}tcC`T>d(4uW{bUB{% z)tA(_mB^eswv8P>#Adzs^jr6tJQNEahi*=sEL+BYtxiJG$Eynd^17y`CHUimJ~y@?BK|;7KtR{ctr7rxgo=7ZP8!9$ zkKEc!rT5dR6 zDV6}c6sL7Ed2LJ^1KePub0pq2-R(_hG;2Ocd}O%v4wuYGt(sT%8htt#$Ys zdS3Fz=NRb*zeo!MTKBy zz35p43|8MHCMHIboM|Q!j#Wn%{;knKfco73=)EU*JO+BU#!;Z}aOjS^W=PD?XF~bN z{M(QpObWfd#H=pEz|#RgmtbX4TUUTPP*E22^SDrQuIpR?&Cp`(Q&!^P-f^A8vtzFJ z$Vdw%cH-0NvyV~UAs0Cmrw^MC*_AH}Ow0Tv-Oi z7kW|o84XaB+5@ggn-2}Eq!S*<{?|&c1^(kU?bdbcDj0;1ezk>du8kIt&-btaP-z$o z3_J)7XueW?$+yH{$0&3!J^(b-v;y$pxK4!n0n;Frq>A*sJ)HhInEQmZ#E{goSR|bu zFE{|;0BI;QG&>Un7A`B9n6;(KY%4I9z2@k7Z(JGM8cP#sb{PL~#2Z$ZfRuZb@t@W< zffT3i>F+1i|B(hSM{0IieIU9s4$O!zHa-6^F*C0MlzdeGl%)<9+)c?;2O5ZesN`KW zH?DC?1*%;Hz5P95=yqgxEFg|~bh6kMfFUY#@#Oro&7$kaYSCBPwYaN&h%b-5*W+7E zIQJR_{DVSmc4MaR{IyLF`<$)|NqqfJzN-v zl-L5~`m2nvaj?K0h3(PEl${8G|98nlV>y)%id7B)BO94=2PqnYV zm~G+lCCb6Vo(3T;mX!YKF>QHW|T<+hrYlo`44w;F|b9d@K*S}kJZ8Yf`m#GBy@F=1`O11ArG$9{RgZEq(? zFR*7g*`F+P5|kEcuEKT#duX)le(`u;thLl&t@v^IVB)vRac zIXHd-6c5SOCP5VdE`{~}O~LV~7ik>N2f5~<+Hr2pQGeAPf%bz&v`~ookonY~AMp-; zk6u%)eW_DRQQt@39uL0!+ z<4M1AZxO{@mY~(phM2iL+OcQd^QZXD$y}I{kMh zWzFOi%H4o#L~QL2lGk?62N(4#3_j8^RtdcRuPy*bv z`>vUup8)>4Ie(nX=ZBJ&1iwu<{`eGV9Tg?g*{&E{SV!j?nVz2hS%mF!Z2u>fSwhUZ zSGs2!iSx?&K(t9(4cFRi(fEHb_nuKrbzRpmRzyWqRGJW!DhiR_iKvK(fOG^Q(xpr9 zM6sZBg7l{J-g}FR^b)0a6eN)vLTG`IygPVZ_x=3+#y7_MJ{cp)>1UsP_Bng)wdR_W zSxCA7H5ahs><1gH6vA)+I10}DV&;-ymto^V&c0qj*_peTNU0*DEGp;1C2T2!bmPv-6Q$aOZ{f1zvEeyk zlfszB=dsn4;;};YRp&t;1M|K zto|0TcJyRq2X>59gZu)TZ+7G9FJ<=qb1t1pE#&nq)*rY;Us+V@IBMhFw&pW;VNXWzy_xHCMe}}t@^t`T675lY}y!n-{w|6Y!_?seX zJp8#d@^bs1odNZ@xo-i+E=(&U00<9KxebWC5g==9ZZ+|FJ0ncJg!~*YpkCicO>BNz zgq`VsD z;6=_UUebuP1eBygfE^dGWC9Yp8<%ou3~X?a03dQfDcU0c+KySRaNbrV6^DA!vRPl4 z&76>6 z*(P_k(YbOIM|SP|<3F77-zv5sL!hrg=GNw+Mwfx^87YwQDvYeOTz#@I?+h65irR9f z3;WtHbE(v?jhg%W7Kf3S0@|6)*9io1K$fQRqlk`%Q)yK_vXtC0mqEbjUtJdx!7Kv8*T!?9meN>Nt~W#BJy-T zl+4aQen;n@D|jeL3-BsqK@&8>18Np_(YYl~j!w$P(^C5Nbnxocr=GjD^+w6I=^@UejOcNvW97S+Zw>iN%JC6=8yO-0ipUC5r+z0 zBd=GstVcEDO6?F`f;s?Y{3{(MH`$*`{;xd09GyhSEF+W3Y`|qY zlZi?`?%M3Fl8h!(I?C8I_ysG&px>Akk%2J$Rb2Phs(UJ%3FR~WK<~>4Ei`>eiJR21 z;StFi$)csWT=)I+E43L8V>Cu1(Dx)WR8oUoJG(=78`74V>Gil8x;1b*uWoWuPSE7Z z$H~b?0bI@eF5}R=cP?IuN1dOr=Cz<~lKO$~qW@!k)}$On{HR%T!!uj}nSsm3-eh@i z{Q(8G%^Yxw3;2}hV$`mG*tCzmR$ocNsVl`@YQ6MJvgm|dR(UHWm)M!1i_y`$4t*^L zamDrx)jH2z-QQaQf61fQ@&ZkPc7^F|VpSWmt!PGi!XWy0tK_!5%?2@rimmInM2P7I za9Gk|o;V!&4Q(-uFJ+q2cJHq24Ifd9{O)OXbU8iAQJ87UEyTw8Awp^2hY3MxMWJ2$wa6~;I&_j^9ZXcE0Bt?kozOJAlx znuo`yJoB#p{kDD51Lgj?V_l2V6{M?(RLS0~j(J;ce>o&^puKA2b(YN5D0$uy27V2F zzG_*L#YP>&8+PErY5dPmdUiB=g>WhN#do*gN5%@mv&|z`aE}?emx(~_7}fy*+;lV_ z%Wa{7j=mrRZeFVY)3pz|ajW|wx^wh@(JbFAeYa&;O=g}fZk?a?kjizlR=NP*3n?`d zQr^YQANK8|O#FGSS5N#N8jV0>7p<4ZmPfBT586ft7bSVBA``2gF}v`-Cr~rrkRRF! z+=3@%LlOzH@QFpuBjIyWZOqzJ>3dYH7U)rc7fb;EypuoU#_EV4L zt=k;guG=KLtv^(jrN}B1d3Y9K!tkK|p9b#kxVQ&Q#0YJ@>3{|NVYF7T4hXci)9R;u zH_~4<%5CMNJY-lPe4fK%JO7j@`A}9wH-jaffiY_~7&S)uvj=Y%XovscnZPc#W!vuk zkSHR|#+#yPZ6h9UKG485I;BxLEI?k$c9;(kxcZWvn7PV#(L?TT-2!&CW9L2EX|x>B zlCpSB)89i{sg|){L{D=}l>rPIe;nb;<&6sl{3X@mFq%Q3>Q%QjSzMp*c0OUc$<|jf zs$7V_A9eZKQsC99rjNPH3KQ-PSXt{krf;hqr;V#Spn1zn^lw-eJ7N%+k3~LfcH|oJqA$7b^y#=WCh&5KxN%Z^4X^`dPDyHum~^o^y-KCCr3O^pS<<4 zSh~O@Ystv3EIXAWzz%K!7Y*zfYpWmBAze!^PYX-2lM2XbneIMg&m5}7#r>{viW$B# zRWQKg5ZvIT@8R*FJv{LuO0KZW^Sj&bUSCH9nwt5jT7K}vt#qIkG(w7N%zn(^KtdDk zBgTu+zJ1YF@;6Byp2V1_PXMtHZIb4fbUfxmM`y?PhbkI+QuiK(?3n^ggn#2%MAQ3D z$^D0Q5V<^RQ_8@Fg$XRx-MDD1ccH^;onTglKw%T==j&?BC1rl(XMtCK8+hVGt$LUV zJp<`O;xW}8rVo3Ga##`ZEK1?;J1^n+WE7a?2sU>SEK^@W0zix zuY`ziepSC>s`wl9Ww!bDd@aYyl*kB`F0ClT2S_u-3qh#yTEux2p&2lLW5<^52e@R7 zx(n)H3$K(zdr$2KU>seIwKN}b<^_yC9!#DAa6yKjkMa$YCEHb~m&?bKB2TOy4Gg&V zHeB1@8CG~~|Df|qWdRgg8{9Q91dA~TnQOITyG$ML#c2Sfw$a&J;8CRpU#z5%#EbAzt_@b z{5uYaFOO#aS#^7dZqS^}%Qbx9qp!sfu}-!gehGMQ|v3B;qSd`)}N=HNp-ZXE=#0Zu*a3C6Q`N)mpdu44>gB1jjyvJC?#X;?5I%^H9JiaDr zpDqCb1EWw#BFzgCyeyjlsFU?{RFU@)&8_y`%`ook#ooU>!I2N&*KM_f-~S zmk5jbOC1U@%9saM#TLBxd6%D@vAS)O>UyLDD3p1bA%z(brlG47XIILmYp%p%x#tkT zFZJyRLrRPd)rD5(SqWJ}EDMTCXkb27i1?$adwpRx2e1KiK!1B-p-depgZCtewlmLB z2s0olls5VtpiiQH?zRdeE6jJ@ir6KEmUYh90;6YK*uOrU?q|;#a1O?~%h*JX7WH(i zVxmsJR6E7f!bm4t$9PY#%vERN;ffuL2QO_+NtPR!p)SOMtSGg{pHhe9(&P>psE_8J zq(6Ibrdcr#8J!hgwUfYuV=HNcWMyDyHIQSoJ?!->#Jx4Y=GyX&GsV-{2C0f=pLlNx zIM$MVu6x#kKEB9ZW$M7jN)4ah?a?86fB0*7X|=#OMyFXQ|IQCv>$5Y%NmxycXP?9{ z_v5q$2ddiGKXbgR8ysy&ZU3DEqiq-vEIa1!%5?!&hqgrSZu@ZGLZ|AvvQ_G?-%c^! zkeV8J{lfLMj7hG&^pG|c0LjQO>XM&xkk?~UIQ(dUMFI%+4R+CR>{SsW=^VYd5w*vaPa;q5*L z)6h^h$-dyS11z{oTR|`FV(;qIkU@VN=17Y=-<1*xNNxo8%AaZDJ-I$GP|)GYJKph` z;CK@$W)!?~*n4ZM(*Np{4OE%&8K_DbJA*a-yHx{KPm2%TW3+lh+)56VfXt}Ol!;4u zzaW+#GaOTp-PQ2Wo#g$epyh7<(&)x{F|R#yYhPULc!wTipjxJs#Z5i?LRB+aj^lrN zI>LvhqRypNKP^Yx-!E& zB1x9XmwxycHpq(1x^BHvI{>}U^0?DSf^PYl$E!;Zux&w0S$bs*c9)1~)}J5dml>CA zk%6GtHrQ&Va?2>h_KM47^1hjonwBO^cFVN;D&>Xpe693eYjt8~`qX*ll~^h2W-t2O z{@G0U`HTYnWQ|7kjdfY%9A=pbB-;f8fXzGx(-o^k2Aa#`&aPV_05a5C8lWmxICFli zyaQJm`FB(5lfn(1D%m@S-m-hL<4+$cX1ymaL;{|;`igy4rU3X6?y0eWuv4g#L&#No zRNI@G5gHZGYWUn&oZX8|*@+V8U)$ohz)|{D+Gk)+^-v?L^-y7U1P&K&TjEaIC-9<~ z2mHrG(ElM*0NW1wNI*9RX!7bZ4>F>_65xAU@wfr!@HnZ0r^*8VeS$%9L(vF+8*S9k z{e^0C{38K#u>JpypZ*}mf8HfDw;Y`Hx>qy8ZAW(*kUd*pn@SX_Km8mobv^vTO$o5^ z9enP8h8kk0hB5=Th{$B9htp14jf9|oSvCbHn4-Sp(l=fu&%H3}vC^DQr?q#w!1r}j zrp+G8(&5tD<9nn3_#{8Wt*e$57Gu@<{M=P@7@J8-ON|X*``VpQ&r&=`sK;49SVt{Q zqk>2D?id#RxS_f|xyr5qGE};Wi%B$%egeM?eFw~r4*_tD-Exr0>XN>bil3H)X$8djs^Q`i= z?zu}v7x$=%eu_i!pDE~R|91Vy(-a6|#{Sq>B+vEbPjrKKFL#_34mKznoy|RVG2l^@ zp7UU}VdXG>NX9m0XDGnVIA++;LGTi7t>9rxezx3pdb7?2`P|=SO7fr@ZqY{-t3?{g&>L785x5lYS-r|0=^g!muzwWtb7Ayo zS(Dr+Bazx4?}n?DIYd=y6KsU8@QSm?M-2@E|g*wGQmZCupf z07>U>R{Vuo)dleWqZh9a(JTOgAu-)nC{jdJG>jW04-@s&%9BcxP_o(0V`HgdT<@6Q z6MofzY0OIyz+{+2poR#zzL#JFUKjxVfVGEc6mPa=wr*dBwnqsacrxqMA{!-AQ16`r z-4x1xGMQraj042^9lf2BT>DsL&BI~>_hmWo<~gAUW!J80tPzYvNod#yPD)n3sREMV zLm%IzQ8+y;k4jUJW+5cJ6V}4wuE!TdqlL?Z^@p(yOdt^`KX-6;MJJ)B=b>x2V2wf5 ziB*g@n1}}&s9L>8N-pKRdZ&qba!5>Zc252|WnZrkC41b{aW;uIpce%ZK99a=#`w)| zyJ4ovY}J^DxSQyDRyh4>qXou5qE8x$--|=$9r|`6tc1*H;m^FF-gL}}Q0(5@>YEa{ z$h`aYJ*YHnO_M_B!`_aYbE;&7tci%WsE8SKboRNPOA8G|*7voFrvJu?&b5e$cB-^UtNB5hN*6A_8R&L?7uwvrg?R z{$_V`IGlE*hG;r*8*$bVyb};HrN=*1ZzZ z9oy<@v|gBB+HMIbb_BikbVuh-+T!JPsjC%1rdyHAs!CAnl$+zD9YJFZZ27W%Z0#DP z707zK0u^18=WKL*+?y{AC z$jn?#3nSF5+*Ef~C)IR_D|5FY1ZN8U3Q>FH{Z==kbP*@i9Mp6IA*MLbq9^|~AJwqK zv5C2Tu=3^-`nF41qG3>?%<5h7vNQMw_VoJi5VvsP*wl68G6j~d75M6jDT1sg&@AuYQOe-W7|J0p6N@9Z1VO}SPCDh!3DpZ3)ZQ#j!g=w$ zn|xKQQQuBDPr%V-WcWqAtL0qZmVLWNFBj_llnfA#e@OaP!ZXgv9RX@O9}w<@>L%W6 z4YNWSOpX=SegPnnS^jqL#F|h-Q_UE`^)t>76wkmp%;IuL00WRTFI_xmIO!mwekuer zg9Yn?96-RJ6b)cv4?R4p>pgKMi#tGiqY|V=`GdT_D3Y|8&&IRp=;#c6xW6uda|jqz zJ!sfk4YO~ic~RbP$#guQ?*p;MzvhVSEjg?1`I0A!@Z;C{uk^kWj6=B`^Jgji2$-f< z!;egOyx2)``o4L>j>Eo=6m$Jg_tRso)!twT*V%+?=ZcUsLpHH{1k5{ozNn4+n%^UI zmgbfizPG{Zlpoo_z%MZP zOxzML|IWEy_(Qbzrbb_;(0Lw+(DEzjuAH(ejVec2e#mm+#^2N(aHhSkC3c(FIKGfm6cao5{dJyX3 zysUq}FBn;t@AzZ|CwAcf5x!w5{adZuMf#^qyIUsT#%{>rBdl_0?)-a2_Z99DoQYi zDAP=?x$p<1L@~hSd-ttoxUhB(tEja)eo4$G@IZO+wKN0X`BgB>YtFWL%TTwJ10v!d z_;QQMW4msIflDl(Ot$g`@B`jJlHy&mn_VCf?O7uv$AqU?fwwkLw3p+f*7>&(6q8as z{Sjy_F~}Vqp);F94Gy36Ug$qsRz*DbtuBI9R_)S^gG0bkXGfZM`ZwoTwZXS}MCVTZ zaIpq%+D4KWdQ3OX$g%E?H_gu^X(SOZyxFT^WD$Q&J3C$)>0KLZKEIt3WG8JEZjt>k z!7O0>Y71#6e)r|Hgys=Rmu85!d5 z=pt70v&6TW(VS+y4NPxh2x(vUrP9v=L4*5^OmD&nX^Yg^mMw3Zr$K=%Bg{Fm8JALg z?RsTL+Ab01;7mQWZH3-gKC50?MlRGSB+XMmnh8O^TY*VQi~nYLIj^%STM0YuVk^C# zA>?>Qm*@qZop$LK#N;KFyAg8Lqf(cGcgCb@y><8qgKCdoit*js=osiw(m|8c}>Adt3a_ZUjlR}Tiq?DZB~Y9xwR;Dm_~%A`GML+^Ss zBrB27rr{(`T~e6fA2C+7+$oZVvfdC)+hC zmmgi`zWoJMjxcq;X40u{{*o)G#OAihVC+i_Z6LBRArj~`00@~?`sh(-f;%AuQ7A(^ z;A?J(v-f!{B7F`{xUQi-$s9OI{AEeHiTwf+8K||Q9ZiBy7Wnb0CqD}n=7qsv9?c|@ zpD2)HG7o)kZycW8C3|Z!yPev_0CrIH>tAkm3lh$;--u=jh8)L$v3Y! zL0vqO_yN><1V9KOviblCE$+9orUi*sS63if5L%hwM~B6?`@Cxm^m- zhDP{(A!>L@MR#L)Y(UI$(g3Jh2@(ue#;b-ZZM4N5Cu_%LuQy&wb6Od; z^1NujTJk_$k4%dH%BpiVKjDH6io>@g0%c{{TB49~ePxfi$!{t=m;e~QRjFfyn6xw} z5a(6{I8~5j03sZKvYex?Ugutw&`SWj=8R5BDOz5(2ZRv(rHTif@+JCc*nU)BA3%k~iLL0v{&Hz@UnS#uNI+xF&# zaTj6?)i|yZyw_NYc}Zk|-fQGEyDTU~fY^t6nf6k2=HuyjdgTF8*pwXKv*J1BzJN5! zGv`-g*7*-tU(Zs!#>#){guZ2&UK4w%oPFmi@+Ly5XLOUHeFb zJiDsd8N2Cy70x)0B%l2SKybTl{G*NJG0s|W>C5EQdFouPT4WBwClTvByF`dUP?WVx zU{eDG*#5wP*c=Y}CzeS<+H{!)Mx7%bqky}bl+D7DHNDOCcCVUVJnu|R!gD}~ z5Wi#IAEmUz|K2I!8`gumVDUE_73c>kiTW+4-4N@%D0UO{KIaxnHq)v*ZmOpo$0Uqb zJIpzwd>9`EpM1ia=|3+x#lh)C0lX|+F1Iq&jhmvbjuzHI0o8} zmMS83fD+=UGn+0kWY8hN4L5C!tTbyq39`H&LHyQU;xwcrx6C8tF{(E_%TRHdl$9yj z;kD;=A^WO4E3q3cN9$Vxuzm>^>O$TP=>*k&?2r^njrw>p4x2r(JQ@Ww2+!)B(PZ{j zvh5-T@hqBKlbhxxZq2e?kpSVln~Ue~J*+u&e&$5k%Ng$=%{czvHw`D!61FqN;fzDQ z(kIQsZlB40Ol3K{cN$Wx5{CPlJ;QcMB#!&+kiFe3u~u?GnW zfJg;kiSs~SJ2DdxSl2~BjjC^K2>Yf`-}kcQAEZhpbHbiO!=1G4yQbKS9)2a?a2}Dt zsOijECCU-nGr2$^51DCK(xgWvp#L)$h92pKDp>316YCpfXYCjfjw(^P%DTEXwD-*j zcaXqP=IBt5+!>`B^-g6z-W$S-KwBd4U*kil8_2Cq^8|kl^wq5k3#6TH_!dXR zgO%wLObOl^GSz}@`jS}wQ1O$}A2E;1?Gq}CZ*G;l5!Xw#^S}4ccdO1fSO8y~IY?4l z9BuS=eGoz0yX4nGl?1$gen^R2N;oOoJOZ%tYoI~2C5i&D^E+`^W7mj-V{LB?;J3Yt z$4!iqBJ-W;3g4V!dVnKyfj87{#3uup6Z+8?fHV7d5tjpu*wx zqb0L@rhcoc8;f{REK=1Fu=`ip>L#>LnJ)wouhZP>J@;+4IE~Z?>)3rQ%+!OZ#WGyK zMDs9BVQLJ#s_jid&$RE9iK0EwZp_OEN&(U!e?e>&t_@M}s~ue0-CVNUUY&}nCB^*q zZ$5wwe+GQSzo^=_Yz5eZKmUNIyU_-$4 z+E#2`gsMY=1*o!<;Qod;O*Q#?0;cw_6|eKpPuNKaZP7*%x{MyblK>I`S`@+Gaf`$H zAtFIHDdI_>5P5}P{B?dhur5IMRMP`?!ktIXPrxNk#ETvr@D?*QbDx@S0oY2A!8nyN zSFAe78x{I~Jyj=m+WezCi;puPB(FN6ttrtqetJv8HKqyKa)Pn-tad6KW_1NyqErj)VZ(K zbKtQ(-QA)fFrSOB+A>Yj%OT6rFOG9A_U5sHX{0hI@j+8AMvG)UtCk3s=bIu zz3*x-n-S95!Xiu4C^mcF4%0x55luZn!Fx@fz>%;dscIPx#;FFjU`&I_j8;c-15R@d zM&5_-mT}Stp-viTPoj7?$PtrYcP*Qd06hN~U?q*n;u^VBQb)4D3-2D1N>YdEP0F!k z@2G_n{?$R8u5fH zleZ6XA(cWi`$QzuH;-?r)Pgqq3&@USghap*{>XMvQ8(OiW7{lT3BKrN zXg_N1fRW=+V`N;Mb#deRgMns$U+T9Rqk2>`1dviB0QKeadxLUI)4zDZH)@a74pe6+ zsN7WoXUAw=U0s>hE{Bnh)|hjYacHvWuip@;)~S+-YIB!=gofzIUl{-y}Zj%Oh* z%T-k-e34l&LzSmDB1G8mUK96b^oF$xBG|wG1#@O6mp5Tji zX?7%Je4E))<)R4fulV+N9CwDqy;X~}E3Rvk1B2(`uxlS1!x98Q-WHKkF?jSWSGJQ~ zf}6o4!566h=G>DJ zP0U>UMGFy&c53`lk3V*x6Ew?X5(Iw`K$p1FI=!QcP|-?~Z~&sU*&=a=s7=Dg!$GgV z))X4xa|I6_dR1@J)NnS{00&}|6~=vShu+TsDfw-|%+cNuVb;=jrDarcae8V>AD7!Q$1O4(j^i0XlcLq4=lL_fpNGqcSOy49*@(7<}{25Cxh+C!8!PszHv9HkJ#gjN{@gFt_y?w%QoOgjn>_WikV?u7SF zi2)_y?>40Ns$&xn_@peC;W=y`oUOfrxJ@8wiW1*;W_N!LDgyE#lW)H)E_eFudbl1NU?d?HLSa;c0vR zuPi+^4UzTa1=8o)wszQaXH{`nmUfo;aS=+VNBsR}+&aG~WtD!|KiGJcw0BujA;6w| z-J2mMkxYV05@ql4qG}XBFp>7DcmW+HnHyVhk<13Xh;_~Tt11vd13?w)vy6{WF5}fT z19Uqd*V&C5M~O8!m6jmYxwidBXgNZ9wgxnuFUyPkuI^8INY6}Lb9NN^c>mqCCntz| zb$7VdrXUed+$>CC`2COTxdJFcb(N6rywFAieZ;rzmcA0X0}Zi!^L6@YwYY)fwwpPS z-TGQw4rkj>&(ldsk4i^G(Q@XyVeED*hfxzB<0;D(tdfq&C2D73=C412S^>ttLK$kk zYO`E_6>goAh^QaT;C03-kW0{0Y&RN6_7A_!OiC*h&-9*^bX>NYjd>sUm8UdaV2~Km z@Y37t3EXLwgGq8DsWYgsoB+>hWUO2fz2%T3d1LSMjGk9a23B2$tE8taY+~Cd7C>Y3 z^7VRIRRx*{b<^kVYI1ce+H8jko%`D}Izo~qnO4JxveF||t`m4RuRC5Pt*tSLmn(jC z49ZP_A_)7@m&0ON#%}dLT94h)nZBj`H{yj_D8|O zf^UI{0x?a6Cu9#pZO1iWU<5oA0!hxP4=!!@l0s%aaKJR?N$mQSasjEB>q0md?3g?G zofl|_DV>rXa(=`+{dX9GQq-%clZm8$`eupeq|kGA#rF-@!c)}vNA1WJXu~m5WM-%2 z^dGr_%=aadTHtNV{NU0~n7%CE*Nq{4xOCoh19!@zrgkl1V+h(D%pT(O;C?G&e|6-l z7ir#qc5atNRKf9|eqUF}gjFcA9YcvOF{9XZ_OEHh?XEirkw1kn+4%I=zT%^J{oeCg z)P>uEN>^=BmVjkNqwrS?%h42(Xv()3{~nBSP&g~+g9eVSiG*_{y7!FLNOQBc^MGA2 zp9{aPueCmPMgmw|THRw)ht_`t4%PqM)Bh8OYJQZ@yDGeGo^B8=P~lK>=MgbH_L}6q z4~tRhVDvUDN8XtW%{jg_VTj4ER-UGy!aPXF$`9%@KiK$qfiHe<-($i#AqR9p7)c?b z`|~$)D7ly!Y(%njwpVFgxUu=^t2i37hs~xg&Wv5vyDf&G@rSD901#d%Uy3b8;&lH) zHa0JmhkfZ~;unY4N8MS9@2gHOoY&Fj46Wr6u26?Mz8)M*;Z$ykJ}kUYI+`|0gTIPZ zefz<<qgiDsd4RjaY#V$V!!UV%7~;m5rZc*%X^ZHY)fSX4#~l0(oN zmhpQtBb^A$XHwLX)B(-qi@^`RjBYgI12`+yu8B;wI7cM;MpONcZr-QNG9>xQy4UNY zu~4-$e~rh_0?RathIrSU_Vp?wZWXFF3jvs2viSCXDy`Fh(nxP{8Zh5w!EYaOW;@v# zu9Olc{WnPQ_bC7Ce)FEs&UDs$*4hL-$Qj+kG5B{~Bd{pAx}M;Y__wV087vb|Ki)ng zxjJDgerNLX#f7jj8)fqK-=k&HR#oK_YGeh2KhaI0jkw;m)M5W>ZcKgS32jjf8 zRtS0R?Rx}eu>ksRnWFfLDkS4&`nw~l3{PHhLWC?Eyy^icJitwZ+*+APYHXB?{>S8W z-9WFY0~^W)7!gsKz})Ny+GxjEAvdkUFTz~|=2@r%ahP&jFmd}j`oJAIKPpUVrY^q| zju_USDg^Wz>!+#7uQLWEWfuuJ{Zug8-Ppm6RG5?fyF{s()s$XIY&?&uN5WDGO1>X{ zWCV_AcwBA~=S@(fAoQ!Vc=K4LT{2m~*QV0D;yrvLB7H}0zlVAepNH{diIOx&)AcN2 zYXv3EE|cucxJH8da_z)fe8n|tehiknn0o;*Mt+}d4T(ugQsp}OlHbG+P3M1({ET!^ z1a?GtXlLj9&sRyBJ2BQ&2U4?3Xy-L=_6MY{^@9s@AyuRn#MrTAg{^GMv{h`@JVe@;1ELT*(IB6IRM=}6OefLz>IUP|8 zK&)iRf$r_yys@RkWNZP#sFnvLty=R^WJ=Ii)qngWY1iBHiQ6)Ny~Mp$c4T?9B&hDo zlqpC_r7gLsk2=SWTKO`i*NZwB9e%@=ZSQp*3^6FZ6RQUl8Cq@Ji>~8?7DC zb!yQ&GAfoAB>eQ8evhrl5*k7#B-jA2auI9BLB5I3sFX?b@!LO5^7BD2ZnfqM3vW8g z0s{k-)Nc=~YayG*5GYr`yKnM-ca?!D?(@3xAdr8pJsPW#-n`e+%2VohZgUDEB=mAV zA{R$~?o4+hZC2TDJ19i;DX}G1RsI;2rw|_~80T}6D#D^gpPkIawgY6Vs`B1$UJ}~a zrD7)Ynn#?vOC1{zDh7!!3V|SwY+`cUg4wCV*Jkqk3$~H4$0=Uk^sMnLd)s{bjlmqJ zqN(L)Jb1odoQ%gID0^9FNSh^y7{4b_LL^msC`rIDt@QImU!d@R&%!T0eF`^zk%&K7 zbWI}$`cn6CNPzH^GrXE&9X82?@_hZR{e#ZD7Xx6&vKjfPSQk-a_x%=_v(J=)AC&O# zGyUQL3!>3BZ0G9ojr=xTvO}TD$@RXa`~i(=HV;}etpQQj8UbT9@%bsEtd$f|C?gD{5DbRcH-wVpPHa7H>2L(WT5;Q+gW*$19 zoi70=SNb{@pXTq@j zQ~Up;;DC*o=^ywRnA9uU6#c6H=`UI}(+nL8k}n?pZKD6ayRr%;TcHwoS!*^sE&r04 zSW^>}U`zhr8vMu2^6#eqYya|2N8DJw~exo zew~G8VUB=?Nowb)hiym>=V|980-&lKHOuh5emeP1m1f4t z4A*CN{q0Vzpopg3{5wdweV&gZ^&SgaOMo4EiG)ey)0dfXIIRUg<32A8*^A>;d9$Oj~aX6KtyhdWc zVPX9b@#%XyT;{=WKQF4IZ0xw2KOmZTVnxdM|xeS!pbFk{dyLW zRo0`hZfcf@YN{o_#4h!r((sH}-m!KsVbE9#;*{&a(BT$vzJd@HxId zwepBxL^L6d$Ur7Wh|R6udiND{W$c}z@1_L44Dw#Bl9aak`kF2(l|skJ%bbw>)1~qw z@6azYtsNjH%L-UiBGNw1xR-@E#3A*pR2W%TzXKIMJU853vNPYSRxYRY-r1M62jR?k zbrc>r3s8msF8)G5`2eb%*%(4eXYoCUQzDIDnor++XqZO940TemjzQ{NnYK zu92eRAeC1U`|OTd{^wA3$v);z3v0^+s$k@D;f(G^A1Z)I>j#N!y$OO0IKLXbQ3w zT`1;5wzjlnf(C}4!V+k)mX;wFhLo&LjHEQ{2F?l z3=J<|9Z!&Uru;Z5Te9eac!7@U`KFMb`MSb&TfxWBCyF!4BdNqcEhnO8r z`O|vh{NG;!q={M4j9dU|>6K^4%;#NubONdYkQ6F<=z4Ldn zMjB_ytSDuug#a@Y4g{Pb)L)YF^?ToeK2rPhtQL~$$xSRGA2f)h9p+Y=7sQ7Wpr%a+y z3Tg62$Vw3R0LTH=Q%r*8TR~}dztWY$WjRz52}G<+9fI;X0OL)qpFC57ldc~Iwd+Mz z=DWxI_ZR3meLHc407+ps{fR|vnk_%fAkMI?gS+={bz%1qo8IdL%I1VfPqRj|d3B@7 zL}Iu6L8{BY{r5*+Q`-NCAKaIXv3;>TR{k9)Cx`u8pZ|31-@Ny$PcI2={!`2UueGIzQ&z7awG~VrP)QJQ01p*D!WVH=3M2c)ZsM zs*w1jaE{K>o@<(I@-QoPlO-`w`*UO#qG?kwj+Fh zCWY~ttPSJ@_SA^jcQVp^jf|y_q;^oHt|#vNwPD0vm+|qG#G>rJ16hiXE?ss3muCtC zma`gp@BgTw^*owr&(pX)0a38JlS*^;IGT-G;<0T?0x__4n=C^mOVrBVm_36e?1O$V>3Xfb)F?3@E3aP@j=nLsTXnblu^(c zBBms{nu%A~^XvdDeSgx@iSi3U>MIjDkA>xXAHFpz=k%h`u*nb}PXBO$kx-+Xxrr>{bL-c4bmQC8W9R1 z;Ce}O@2+L|CThlo>Yz;2y5)vTT0AzFhIBH7Sgs{<-tzI8J)RJac(k<>tAY3kCP-du zj}OuOgm`L73-rDTriQ#eQD$=VOH4qhS0YtRs8LSeU6?YjYJZ&g#o^we7jb@dv>oZt zW}TMy<4a>|>|&0~1{#RxVeGQQat&ootO_#sLzic;jU30lJG z&AE%;tgS;?6(sIbtxMH7f_6} zG>x;~N4^=mJ<)#j@nwVcVnW!8_;6A;p1Fo7{CwNju)<0$&ue~Ovx#|SaP7wzOS8M) z=lsyAO?```A)ql|QellY!J-J5++XIeHhbF6m<*w`!g~hrZW;sNE`y4a8~!Qf`5Z>r|CN&vD=5N! zZOZ_4W}+ys`v-S;ORV#OCRU!n0RqgCSZUvH@_Vl%L1d&-AYiYu!fqj&&jO?=SA-zm zG-k)t^v34;EUvc7)G51`al(6WJ`Zc{OQpe_yt^k6vHUY`8)dY+MEr4RfwJi@CjN;R z@c#+}$&>HboKY1D0tv^EmsA#k7R37c`c+{^$q^;wC2sG@e}o^}RH(WSFS%k2N#VWH&WMO6+z+DMb&PxLJ<6;8+%EpS* zZY+_t!j(+eTru|FT+S}V%v4af30lY*a-{WqSwCJ!Mxm1UXa!@qn}i7iCn*GcTaQMH zg&G%|8hGt&EDco-9!AXWY5vBf>@+h`CG-}{9co%Y+YXp|AStWheY>sO54O|DJv>%b zS+n9~-pjDZfuAo=t1&4K*yue*;Y8Ed52d&s+&zemrU zQXI+He>uh~i{X;rn`B9(?$NWtbZmXUZBmHfF*6|slJDo5{roWwQSh}0G_HEWQS?21 zh|Z{CbbgmHF?qPiD2LbETPDk5Bxr*43>lXLNPd?Ze63%nWM}r*@k;Q6dmqYF#~boX z0+z1FkS65}l>%({zm!_OcDu5xWyG=%=33HTEZ*1BTHt-RcYcP%|76c{+0}L^Z)Olj z5}2#eKwYq#J>5iXRY9V>c_m(ve)ipYBvT{R7Ah-!$1`n0W~*sq)zv5|7rN!?=p3rj z<2~8Qk}7_Uq=5Lwtb)1MdBdpAMDiYKTBG>2pFgn$%W1~_uD7*FUt&{Cj~%MP%TDZG z0<^LNl`4!Yqjh(VB=rs!AdGVh3vUP-R_1nLd%C*%fvYh8<>SYO6|OnK=mu?BkL9)H zAhWZ=q-tw)6v_t&1nsRiOM*AzDeMcP6j_gFPY2FoXI||n_Nw8{R<~;3ei@MgkLAFh zQS(Y{lK*(QgZ^?^0DE=8%%4kX%iaB=}WXvGkv z1U8QonW)hr*O$02%?pYn7CaVu26{+Y6Z_0s{Dw8puGuKtPp}&=V8K<)ms!NGQLD7Q>#H#uA}BRA(Wfmr|LfP z14;re;O$HHupy(&A#oA`qU+4AX4}P}N$Fy$X<1bSrr$gtQS<%HK^dCaQgZBBb)+jH zoUZ3^Y;15e%$nfXxo@r-96s$mPBzC;aHe}0w^b^TaYiXR^URnd8t>npkP=*!7G_ur|9hPMCEB&f7xGGOF$ zV3q7#^Yb=8LT6j|LAwKT6-C9<w9q3hp+^W10x558Jm>fB9pjDh{<-6g$505Hl)cwld#yR=n)CCuyZ}=yw^xxa z(k*{mUXWbZcnH1fMh*8M% zu-XVhRvFd-ckkn!HQBWbWH9b7NOK{A{Jm{f_MC&c;!7ep?6q$^*>w%tyW7$F2hS^A z>R2Zeuv^L^i48Di6gu?PNg2$7fFCf#1K+X4?(~fxDWk~elk%h_K+ z);5x~C@1eILVu6lK?2EW;rYUC#zw;-n?m=&n%c!&mD0pYGtxp3d*h(V#?H$$JADw@ z_f=^R^wf8ezh7)akuHYREosXRF-k{1nU{!%v5Jlp1AIIz zT=k6vI%7FK5`iLVK0v&p@$aM-WF5ny44McYd6!AQ0OLNx{ScLl4Q)@W>rq*{rn9VK zG1wg0Oy1{ZGZm%PJ5g*iP=at%uX+yb)V2H4IudirTyDjAa38{Ni@SqTYg|vI+bVFB_e#w_X!>AImYq`ADw^3?zE0~6# zl4f%qU!?1VrbXp)Z*gLkAy{z3xSl1h{8D@_rsYTbThgb2qT9h+Rr4dqK4@d{qg9pl zgg$uko8?zt)4uaV*1bPcH1zzS9+P)OqB|s2ZK5!=oJzV&3L{X!vdG|f%t&Z*wa=nDISohm$`JIk`dtN5N|3-Mn;+aO$ z5>4desb-s8M-Ztn|Mdn`?xxUC{0VP}}qwY7hI5BX_4RepO0bspqu=4xBaI@!m3tyD0d)Q-X zbm}+D2B>{`#nUsOIcs7iDCHQRzr0@&<)c91MrYl+WoDA0wVlvccSHYyOikn1&i6k` zU}E5=>9^ee^zoi|xEwJp>v>R9w^)rJfTZzXhhIifb)(j=xpvNMb=ZoOBNn%7;S2K0 z$W?55y~5}9J6>Swi`taZYwc5S4%^mPaR-nAEVKpAC3u#=Bgl3Fj$k?``GApk7E#s2 z)F#ijms>2XBvxwbyHz#ObHKn>-3dm{)$!@5)MShipIt&ay};K*UMtw5F3XcbtcXKn zlKLt^TNCeS1<>0hF;XTB>I6D}9KI=15&a3~f-oInnU!SESx*&ys0R+zCzp_;L)Ni| z{Q{!%U_ojUn^=CUC(IC8DrzSo8Wa0jx75<;N$J65nqh>u=CIljZ*c}PIJ$8x%@4mP zL6|X_5eDC&g~%+bb;!=d@t5LJTcoLv28C~J0uES3txeI~f2qyXW9m9bLp%*SRQ18X z#U#YVcIvfOV6HUs`=zWA0>u1^95S@vn}2w6pOync2qx&87uxBW4#nCWX3Y33D+ z3ZMjTgIl(PKD9w$U_VmsDpxvn)Ly4p%2UO$I(&Ch{VOF_b|4nWo>QyOkFXu`)>*O> zZU$3G@3wgJVU`cply8`vvf>a)Z-uwdr91YE2yJv6bZq8qA=fy+%57MazrF1EtDt%z zH8S_+qP;K-ICTZi7`k@MrL=Y;h|=zr00%(!;rl)0sjaiAKM~i(1MJr4n?v zNx^L)DjTy@A*G3}U`8t#!_UlEU;*!(ms78~lu>T?p3rczc5!JxBB1e_y9LPFkd*AH zrdAInJ?bMvvpc}dN1sLPiq)`vnNwZYh^5!EG|qUjnJl%8#t`x79F%~f@FkB>YeQjJ zExGk*d+{4R>#?nxRwduo*mu!sciH|73qnQ6llb27`5=^T1(Xup$F`yigFFhVOJlYg zO}swbhnlOSz$d$0q(Qubep$Ykva$y0tmqp-m&hKeRFt7=rKPKCc3KJ9B`Z?LSE=s$ zg-{v1Ck1qVOD@nl=006HkgW&|*3Ry;(s4#>%yS%)+ZrH6`4ylrgYvzCYN?f$2|W*F zb!e-6QS#PF`8D>x*lv{nmUl6uYZKkkSsA-_7ckNxt(afB+7ItR5gAZ}-^%v(GZAF6 z%>D%(`2YT^4b+3O)hSP8zxEBd0}g zI4TUSzQHr6^fK(Uuk^X1>fN&xR9TuQ5YV#E1t~|x65M_6ALbU!kFnA{u2uV85@r&? z$K&Yoe)WUs3Qoi|G`mTpg?qsBQGYWHy4HvV`9H-(Y*HJYs`~2nnz-3P5)4R#sZwY! zMRt9O*Relz6T3Xxr1SnxXs3L>X=T@*w|+6>W1|fw&FM;Hxl1M`MP6zTK?AnOU+Mx! zbONV+s4a8WM7~cs?jyV#r?jKwo$V4To$WWSi8zNiI#K*%MTu#I)H8FYyUp`>y)R4S z_$6fC5wV^t3qY{t3M&Uro>2J}xbLhF+WW4e%rW8x++FRbUe9uX3XUV-)~i2N9MWsL z!Pf~XDpq+gZ4^X4j_kXZo1Ci?aQsM3X>8KQPww-~ArW1w6sXWB{5Gw3Wu`?Z7vA$C z(1C7uezn>J(nXbA4h(!pn_cYK7)o)~il9siFa;}vCRynra&co{ryR7IkUAvjN4MA0>qBM-kr2GRUMuCzN+t1qj-~JSW zg>gzI2s>=dvj@4&zv0-P`+|YDM5uJG&2|Xw1nGeKvhWlq%*wbujvcq&lH!>wa{xPK z=y=RLL_WT=<7!NsO@ld}HFI9ke91S7MNrw!S47O8(?AcJ2CmQ9ss{ghdthQ{e0^oY zz+2e$tRGR_-;J9l zDv#rUa;7=eZ4L%-z~5ZkIJZUSSAxiJ;iMS6?3+Z{nw^QDv^sKw33U6w)Oy@QvlF~# zmA9WpI(81L#0|NbF+UgNYO4zsTcluWwJp%v>RI{%<@6^8+EFR0mo^m0bmA=oU(!_$ z*=xr7URi=>>`wT;rcR1Hs^mk{ZABm4v9yg8_O6dMA<=92erReSO<04vmz*W#fJrcZ zA8uE9WEC&jkirWTZ+(DdGPCe!tqe=poYS)>Vto=NdgWsx zwg2uuI<8ITSNZg)&93dtS$i4UEsd6Ife%*g2B5Ie%k(UDpNResQxw@`*X%K$PuV3| zH(wr`uT_oY)d<`QlMLe#jLa&UXn?mI?I=uqBs)B|?>%iY0#yCF&Q3`B-f5CZ=JUH6 z|C2Zj72a6Z^x{o#42ZT$4fx;mSb884P#aaVU2bqkywZBjSHNd@MUJ@8qay`%Ex1Pw zge#}Nk%FM3F?l<2?Hyr&w|MC78<>z{GW+)WMM{OT^DPa^+;PQZm{4T>Wz)^gF|`yJiHbzM{oAXMWFK;dxv&2?@>WB?h_BaWD>M1Wb&8vXFsCC)$7gAYZJt z`NCA6c}keBtJT6*crCo^J(AHm7&+bvHkwoz>A$)?b!6(&`5o!uqoCL>cDFwGQpj)x zNEG*hsuUrG3-GuP#4=k^SjsuPFIvNa@pFeD&(R=Yge379TZNXWQ3Seamw4po{5w%s zNEo-V%xNjsmsD(-SHq08++2hJpKGV<-iUyIh|oht#EM&UYGNKB+3x<{$$phs@nrX* zFj+Eo<~Cp?f3}n`U?&kQSH=a{{Z__?>!ot@hFK3ZeC9lFcB+*uIb=_1886p==+K*9 zs{at?CF!{lbtx$6CW^;yQ*HPM^z;oMww+=BLq(Zi_XixhY-2C{!}&W!ba+(Hcpx=) zVqb%;pZ&6uZG^;V$V?#pXn7cG8%{XnYUio(JO#5;xmY&t9{zj26t2TQ*QQq^UM$NN zgySYG7lUj3y?U)KsL?viNu}~p^>ifhfC_cfn}H<0$gZZb#e5T@|gQ5L4A zb343rs8hLEq$Yiw1heO*F`(WA)R7P*mPysPV`#os@K~bKr@tOBG1&DDeOw849e#;O z=&5f)cN}kIg;25%Z_Yu_obYFkT_t)&q8eZ);Bv;uKCer!n?R)HU0#CzP1fs&8M|i-IB>@M`k(rRqfzuh}M)tuu zaAUtSPjpY5u>y0ru+i)|;j5@MK}m?uWvb$hi`Swg(pJ>cC&DjH)$pk6KpzK1wYLg$ zSK7d%v7nPQMjJiY$&nb|Tk3RVprklRh7n7Z*=Rd21b43Z_Tpy1m{w+ULt2@c4d3@7 zOk>HFmpSFk%z_-B{K|{ejJ(iLqxR0uexST=4`MO7;2zhC0kwQGvrLL`@g0$8l0a{@ z7`mN5++J<;!FV@pO!yeyyLZn+#iN1B3)^2HB5-oN7GW~+YceLA$D{to(ui5`@bdvz z{EMVPy_x{b#S2%?YA3fYf^G+$DdZ$4;Y{PBf2mjIFI<{5ETr;t`nfHwhjkU*Qw|gEQYDf92Z>L~G4E3p5NFA}t zsvvFc0azl7Y3c*ZOWbHr?(of=@sFzsh+>dl6GNL2ixDGLF1Qv?T7o3@uO;%SL~jd zfdheXa>;B*l%-g{|6Lrnb4f`G^4e@YBa$7m;xrJGpjcj{Be4+iPwFC}6H&{H@6$~2 z9Z#VRWU%BZY2CO1>0YT?W>;@w|MGZ4UBYFXlEXb}gnDKVO5NkwTcmM`<@}KEa1LbF z8h`is4vkIci6a#X7jP&39?D4NZ;VbdZjnJGFsoH>#^-q!a)B!=G)pK}Igq^cqtzGN8bOF}> zu=iG1uB^di{y)njHPU{{XnMC&QEl973)6=nTY)%AZ83%~7KShs7btCZ?sMP&!C^*4 z(_~1iKXI8#yTnm7?KRTqfN`EEd+!MnHVS<$%b$+? zD7wcWNH7)EbU+l}wU;Gv>jkJSH%jDB<0+h!dTG?Zj_Owd8kFi`2V6!rO;xVk4_T$A z2yiUqMjb>ywBHL0V*Hg-CKP}=v%_3+n6MqlxoasvVug~hu)qoViQvB13sY5wUdY*q zi)b$(V@br?VOW%m?){{wD;SnEER|GWbMSruDS*)>uVvRqXFGAED(U`HG%)&!QfmD;^UiURn6G-_2awLB{z*#bVa@3{{Ez zaUte%387MDD__p{;d^%Q4lj<0e_H;c5fYVz7HxqgBiN_A0R6bf#=~+zEONB5MrR0X z!!shUwtYTlj#6B%719vWIPk*a{&oi941BmEC`t|$WN^QSWuMG#^=NBFe^ugIa8;x; zH=__E+%bB|c0j~z?8+_p>L`aH(suBDZc9n{XQCR6B6PvF<-l8JqxGY_K4P}A?87Ot zjy+cPVXu|DPP;)som#fA(sf6b>Xx(K_UC<;yx<}*T<|a~s6uITduV!LVbLK-cJYgB z^p-mBZ}|(fD`1Z6Kqwbb{$*4ntfp$b?U zA>|wQW;nNZw}g(FnF2_00p-KO9@ey?j;&Va5uaTz(pVs z(F7I#-&R(8*kT?A^z~HV&O-nPF%J$D2yyr#k(U+;OQ!1JQn24Qcjz1~<5-)pgQ=ND zC|Vfj@oQi3{xP2_KBgyg%JnUgJB|CkI*yo|_E6th?_wHaepE+qt`ruVDwTsH4|r`ph; zlcred%0)}b+(`ol35*l3n{u4*tsEZD9daq6Hh1RX^3?Q6BC(-~HvxG?k4I$Lx4vVP zOc7970ijygiXU5}kIZWC#Ju_B7{WKuJ1?Td`{quhM&j=LFiWcwDef&94-&ST_q+nD zt6VmD(Ky%`qK=un3e*2_OamODs`!bG)mM4OG4ngL_^5028$jN{5;!P^x;3cUGS@eq z_T`HUV(~*fu zNoOti))m1${a>CG6l?f@{dz0s7oOrA$<+JrnVFWd?xiZPR&%-SA8h_9eKqJ-MDlLf z0z6@&ki+kf>+ed^8IN7s?RHw1P7)V}kKa;lL5!qbfSCsqm1OO#|9zvarw9IY`IKBX zv=Z6F=NV^Dci9e!6dtc!wmn|;hs_Zof* z_&v^S@j+b9UbL%Il2AjS{Q0J*7*1L-=>gLUy4|}_EH<`G;`=?J+>+y5qvKvR)1UrU z&q!+GRpa@u+NBqO!211VZA%$S%Q}Y8-%{+Vseizz9kKs@&aZ<!HFiVg|{Un%A``1exj8hiI$i1r9uhEy>X zkoTNy5U718Z^i(ZVxBbr??+_+%`JF6)Yr`IIA8*P^Is~(r7n+FY#raf+sepynKj)2fU||SB^gF%u2mFE0F3X4J%0#m zCTdAQ!ljK&yIN2hMzDvj<}ta2bS6S~Xz~Q&vUlje@4N5liA-L(l|Nvlj$8YO-C&7| z#t7d3IeJ3y5D(&s^48C%qOBdbau!#jAXHd+H?Je( zTreDW5~}Svo>}w+55GVO=H2K&1h8PxhqHZnc0e-~&_vazwO7Nk0lZTP#+8a{G-7>0 z0FD#_*DtR$TJE*)q>z{D*ZX}ECsMp4%0LNAUjTxrWSckn8sXHK1%5BT69Gt-VAoS2 zhLUf8D#|%BoDxKObPZ^! z#CHG)e9axuIcW8#^(-H#Q+lnYk(+;^B$p4M^glirK+S-248Jw zr}mfG1y{}-VvCOV*F8*C<K^6)>LISCB9_%ClbEWz^sY4ji zgYB{o?We)eeUqvH)P#5^%)#;z&@Xj+^ue3THeNZgy3upO-6X}}q0^*|W#h9d`hoH< zQZTXq?0O}8F^l&lf{5R;yPkEVD@b{VF*s&tZ-avNrVuZl8_AhuC%Vfll~5#a2L^zj~^wfZ zf7Lf(_;&5m)SSe&nwPG)&v0{dzyS`=Ip^D7_8o@N|M2V!4{w#+ItH{_Wx84~Y%~f; zja7l%bul;IMTbOd7l@N|vgxHX>-sDHvqq9RBz1I#z$Xp$0cl$~k9xF;hYko_B1$N8 zIDz?+q=T|fE0#_aOt&{u_7gH&lCfF%ej}|5tJncO$p_#0G;n=7N(MX$S19_b7{2kccC3AFcu$Bu*`1i#`+E&Z46dl9mp7qIy{~*6>J7Q-UWso}Ym06^SP6)JhZ)^> z7EELl&QwiBhfQ3c44apeIrtOP{}YW?rwKm+PQ|GWH~i&ot12cZrc`A3|9~?#%d-4 zr_bEv<2T@m@)4@61a*~4&u@f2Kb!_8>Rhr@NXVhts>X~BBf^qf`TfbSLWKOO7N^_c zuR3uM`pb>bs1j2r5IVs)X?R)ih{H7C(1nmU-?#bVh7L<(&%0m+$WXAy2Rt zq1}mb&QYvzDTtibRH@=rOK+E#7zF~iAmMN;4Kq5XscbVj#+Spd>$J0p?+wZr?EPlL zdE2Fk9c4CCPjwbw9woC56lH>TGzUbh1y$zjPbK%@0<2qFiIT^aa{dyxYOFVG)JhPi zD8GO(_c0C~+3@G3Ts$p`bPa*UGMLT7ZIzJV6x688ANxc!u1@2)uquIu4RL^97ig#g z>)l%YffXJU%34S=Y_YJi9vGdKSj$T>#Ko7u6_Tqa0y}6Egr0%19{gMoO3eg_6B`RJ zo`5E??5q0Q0tQb-#|MB56VmV*i|u9veo50wiCyc@gdwp1#JPU?`dp`=IV5afbkO&W zLqVz^st*g#jSE~?^fA73n~@_K8SBEzThCx0ND>!U(AloUX2;K_{cYOaJ{24@Yq6u& znN3jD1pUEMW|Tf^%r2)Vqu6y;Xc#YU|5wy_*#xi7DI8zbqPJYjwKcw9f=t{RLLO*wZ0f zt%^=y$?xo@DcLJs1oAh2k0|1)bvL`blUpL|>SXI%t9o8dcRtY_MGw5UtQa0t56Gg( z*sJpljDLc;k~;M=PVRJ0$ycePB?`)NXp>^yn1q_8sVUJ{h8vW>pOSH;DLX_Fd_pa$g6uhHXw)>Zhy z?cqyh7NldYmmA7Q4QG4rD#R!tOsDlpXVt6&x1EjVm2Y^b$lM^#8#O%1D*abB40apc z&$j0T-xBje*9+d0?k$=j5|Yf>VOm3YGEC=i!Dd*@UpXH#z(&+<$D6emV|1!5Bcly3 zNe~o8XvvE+t*4_3N2D$nzBX|qEdPWvH*`nyZzgu(M}US3cVX8hNtG9>=z_aoSNe%pfB-O$otS zcb(19B;zD5N!_CMg1o#5$m-RzwoZ5KeD@wCmOFQ+Dvb1bS9}18O8LP%;n%ul9_m{h zwHP#b8m>5kU9?yp_rAA-;Eyy^Il)WSx0oNKzoMp*gK8o*p zw&A!-j~{}adXU-EJ9GVmuSamTo5h?HaF(7;cNnecMD+W)xm_G97JptqVt+Oz^|JhC zGxP>#TOynvJD~xsid<1)xKE}$Sz`VvmcXU%7!UyVvG0&Z+HXmj6D6`d@-Ndu^9J3eX`AHcwyV`Sa(*7%hn( zfI;w~y?=m@WagB{FZ2Xe4rz3d*J-PAg*MA^lq@RF) zwwRLIsZw@f)3JSg*PW;1k%V9aJ_AKi*7bNFaK(gQdDU-F^c=tXln3vGHRN|Smlkuc z)!q9;&9%1_aem<_+b>ISR;da;#BY9~&(fm0(6tny=;>?Sb>zlEz!rE{!}j=kMB?j) z>@Y)ITqICX$mFdgEB`6RDzJaCRoNlzqU5cZIyCXAXXXCLh6m5<;18dBl6@IEPJOC% zPv;Z*;sf`x1%J_b+n-%V5jv@KBlL^PbvEABPpL!ypr%4uePz?N&t_%C&?zWIAoBhA z&YO|$r|7??CIIeY?w7Q+A@PHK&#`TnfxrrveruKPC0obtU~CJEIc=g1_I}*T-7Vf% zDpb}=#Lj+QIDjg(?aUyU{snuLOe%FONh6^Eb zIv5Y9(4f*tWvb1dXO=yQ6L`?OWvn`1ZGB{xBac>oICp{ZE^* z%nL-KN@Hjg#`;JdP|*S2PTp*F{b|F9cVWL~XJ_M+o)(tWwu5S%?5Ful%CF90$&Ba= zoi(jznS4IMB)O4l|MGH2k0*VNU8@TtHRS+gc-CCUmQpUdv$<@P*m)N|A6F2nKY_d1(*dO#?P(mK$m31-9T&24qt9fx= zfQ+bu)v?JkLhtFVs_4vWS~B|?}y=s*Dm*= zkG7(#{_q|y77`F30Q$oBLEh84?_{|2m*cB7wUP?6DF1j+3gEKUVZ%IEuywG$7!=(` zC>>L)u2_{;r_&Dq_17O3Y^7j|1@nH*0=lq$hUn19rJPh6k*csRQ#6M=eGe4ja@Z_gOOcp$pZ$mF+#tDVKVUVSikkCdB&GR|@h ze+03?a+wCYXJPI0_?|Zh9@{8bgF~WuHfk_^Mqc_=x&A-$OQ7KlzS_IGKuEOjt4^Li z)EXMiN+N#*cx;c;Uroo=?^{{#)2+(gV{D}1{&?M8Tv|da&{6Niy#I94?cVC5sWJD+ zlaj5Xh5$FJ4fY`K@a?R1NDhGH96&hE8qwa5t)^`P*0Bwe=1_n`$Nme-a1P~Fv0969 zn^b#qDuv&J$*#Qp#TIal-h=9v-28k^6n$D?BT9baPo*@MOBXIYf_8s%w76{2C0YK{ zM;WV8sJINNDbl$M08aUcVueM9B;o2?oNzo8?(+@D)skbIkzu?HU7Duib^L)&M}RkDPqEtO=BtDN zwN{~+Z2O6zo-vh2nfySUqE-IJi_WygfJhJV75;1YaP`#m=m)pO_2J#aPAOYe(}XDW zm!}7Lu-+gqx&HvZ^zA^_b4o*&&*)j*T4Hmgn3b52*G0GQk8#A5%O}UMI zW3z>@`5-E#hDqk11!`;qZ{y<~KnsJd%%6AbiQMAA{jBw>p?1veDz6BdnVA7LH>af8 z6!cdbhme;<=mTJg1N3P=U=8MQ=3;6W#DL=t;s>CRKoGcI9!0cCeq9p)8*~IojynBZ zjHm6=;epkqUz7J*NIc~*OrM`Poh~bzu~B)+@LX2z;EWB}DOx&>7KThL7`%RS z#I+lax60!nrJaY3Ac#o|HQo-NxR?=Ad;)=*T$YcXI4RV2MWtUdaUmo*-H9#hpL=uXfTSFZq?LH!t(%8-Dlr1Ki$Ec69 zwq#>`dt$U5r-y8uC+Y(RWj{j@%Lsc^PEdl|)!t|+5wWU0S9f7|&U-5qgUXD$j^jfy zvqjzMMG|>O*DDT9A;L3L?u8HlJ|J1<$J^(JML6V70$i>(*pp!#TYe3g`z_uH*?%AA zaseUFg&pQj{5DXb01>@@OB3sW96${US<=^%lT*tU3aGIJOCH# zqk$rtaqxIcGP`woDZgx-Kw|iv9m0;V^GHug$XdEcO6Piog-pG@7J$`uRvvfGgIcNidF>P9aHMclaAAWMva;S3j3psfFIq4gv*t(&% ze|o;v>TzPWWaHMkm}y_iUmq@>^i>JvwFq#lIU9IFN!rc%Kn^ytQtoKji8Q>$=Zhgl_(z8 z03Q4^bkS(8vcSMz5-D@Tt?;07;${zRi-?m9sw(xX$1aWM8nO!y;|%=|T}J2;&g>}K zcyuG>)POXQI{U(G(@Q>B>Hba5V)OXGF_p$glV3HJrN)#`@%-U2vEqfW)L{P|6emLd z#CIAe2SsO7l762DGBUX_!sJdbnCOj0d-|%WxjqG>&Ts$`1qXYw5peB z<~8)rftJ9}2F{FB0XS2>I8-~`S}Xc0r7)$g7ziXJ-;0P;P>(SL)a`7g6Jxlnb7rcea-PP3tKJ?`f0cCD z70|j4-t!p-ecy%a>X{{yZ#M#xlPoBQy9X?X*=vzNSxFq{)&J4<=JHVKP4Kr0A~g&B zah53{fu$TR=eO;-omW{b1B~%YjmPN!u>W~o+Z$LeNqFm^uB3o*c(f;yKHto>k;i4T zuB=gY=xX@`dUV6VH!nq%Rq$7Ui$~((TBu5p4P%e;>VxdKP>Nw;5Fj--M5bAAyrTDG8WI1;<2Fo1jGu1n}*>E1+4%C*4G=_Xi9j6^5e=QQ6bI=-6kPaxpf z`guL1zr4^=r46SBELY%Dp^K+p)0>i5(dEmqcQc*K__c0{>#+n9%a3GUcSRjy?eyNF zRxfLxKpbIbQgdEIoI9nK^Vw6xKXvcN{m9c5Fu+)Y;1;keFVoKNwvK z*;%eK2U0>08vQ^R$R5y+vjFIF@mpg^h1aw?gnL*Un=}h8!NbyEtFvd%mSWi^syuDtySe`Bgnu1&HkT3>4X+FU%0RZtT-zC` z*{q~0d=Yv6PwaQ00?-Dc4J{5puq-YkL!bte(w(N1!T>z45H}!nYxEm&CUCvW0niRd ze|z16n&3m#W5ASaoW+b^AOHXJ{r-U? zXYPO1`Kl!{eJJ=Y|2OTrT_+eiK|#YrD?c;y%k?j1k4aAFc0iu|?$-%X_QA+Q8P8<- zC8u&nElu5bm40k@m3~%zrQi#Ope8OO1t6xz?xrcq_D&xWGf8oQeEiHn;P@s-p^Uk}ZH{N-_{#TGs$lXSRHJN25>yd8C>Empf${>I(c zsi_Ll{PsHCyz)i_%BLLBkBPK@TJ9!Fv4nh%5m=yw|A1TP@pM*uO}EpJB>?DPO9YQo z_oDC9cx=YN+QKd5Wn*3FrfzBA89CQFpO@jG9>MJ}yKgj{rojskT8CYjUEn_NOteAH zLnni_xYE`hfC1m3-?oA6o+gOU^XHZSRPzxGsDPt?NmBUKkiiAi^SbG767|2nUd8oA zfIveQP*-Jof=J*6c`9o5f=T4`H6*SqM>IaZdI*V#AzP60x4fjST7o&5q4flXmuBpg z=i!^0=7MQEKF)7V&X?pa=4u}fX}lx^!SY@^@k{5Dlbn)u%*mH_91bk_Hk8ej5E51dxkK z3N7z|)wZ^AcnY!}KBFYB?qxMxh}-`iGQh#0x1e(6gJ9ey{D<5t+V1*LO|ehC*Q`8xvGmQ5PfmCNWJfz_0X>c6||exxY}lu2r* zyk+ z&wyRHH30PL(-hA#$Cq5Rbo~4Q$|II;CkDlEr2v~_q&gxK*p*^_OOwnD;4w9Nb77~r zZZuTF7mX?7WF-CwoqCSIH3IbhFrcbJ7Q(rKxnYp8-yf8P%>#RIxEAhOP~TvFLj3Y& z8BZ+3ui*AQ3>SFrIJYZuzn9s|2djPV%m!uFs3+DvJSyzxYFAGt3DwVtvWbGc$PBAUWb((Yr|_QwpO>Ibn&TK z_hNzg%Xd&%OrSSp@3HrYuVFEFoI{0Asw4F3FA(}I9HV?ny({4}W2Sn#Q#VpcLQb70`R`Q)QKF|o_}bL| z$$B06Z=BoX_N#}PdKPn0J@So*ri>ar_5wcs>i3(+<6U0$S08xQfw}z=tf0xj?I&

wo>@!(vc*d={gv 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

W2h7bHPfj461(6 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 GDg3_(iBsqR literal 160160 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


>YnUkw;u8 z|4ml%>dL?Gow*kOZ`zZmr!@BYH2?X0XA=51M~d-lR%pMx|9r%L{U0h;czA(=iTTL` z9X9Bj;QEy1bzLvEoJPQ6^Y=6Jh)4@D4{1DnND>E&?cdK~vnVvAcIy^1z}A>)F%n?S zlwDYvXsXH@x69>vF;x2EY(BGaO;RxbKR0|)yDUrb4J^(#@}Zdm>Axp-p=%KoGst0#?eRYhVCs*O?L6BHA*wpfKmRA zcM`s3`h`AHuC^I5$h}75hzv&ahDYBLbu9>PJPjqAp#myq-rq5nrB8OMpkj|pUkl7t4!}(bLmctk&$^O*%BUGhFBqjbh6|KMTqspObysQK&qB)Z7{V~N>Jp+%UV9qLY(;x;t?@K5%{ z3UU@(AAvHn^Ba#04dweLPWEgafnvIiB`ZT_w}_|5lG;%ImgJ5`VAS4paLC)|S(~Hf zRH&X{UY|(S6zEH0F8w+b2VrMt&v|=$w}70d$an9|2V(A)`naWkf!(J_lJQ=sqhJm$ z_OW4T1UsxsJaTS_z?#6aI9R|g3Oh_MP#s!|09Y^kj_J?$(ZaTGf5`WVCzEAY2utmX z!{VYa1&-p1vP^M)B%m{vd^;9521v^vlBcZHG&N;rW30AG%=G@arujz-5!nk1DkCyK z-sUb#>!^0N6S%wYMnxhsUAPLzoGWCJr`PbSJbonYGq!ei4IuXx?3{I~Ah$sC0it;# z2MDP#e;=4xYFI`64g<_HW*~>My>EqJ0o>ng}Ff z_+sST{=x{--RYKT+xG>cuIS0R&(6L+=7~-LylFvsha+ZaD^#!r;SCFM6VeUggkY9Y zXOETzPf|rVN3q8|e;&c9!76aeI&+HrFw|ClGY+yRvz8)2Q@=c2w4VDm`NYl3KhF+e z`p?H5(=a1tDYB>PX{BeR(L-~?X-6K}^IvpId*ZC!7EZ7W8;;2Pjmm3p#5}#|OH;As zTRzh{h{U-AO@vzpMgBfT`jWw}Ai!rtwx7Vhd2^Ts0-U`x`y@Cl&{|s^Vrn}=v0rS9 zo-?(d6_TVe3+6rKPtWIHeCgCF3VDyELqr3R#k=1&8m`pXef8Z{cdlVn!;T#M{{8zN zbM$BT-p6^&JXI)uAcI0b!iMgku4~`et?e|K!_8sDZNIJb%~oP_O{9}H0WMxeY&YkQ z7?W>a554f+?|s6YIL(L6Y345z)dJ@VnjFP*zEtRUP=}BMj)vG#-;O37GK=tOTyMH7 zP=xA3o(PSPW98;?Dgg+=>$}@PTmk`WI#&#LX&NK=Bh-68rPK#yFcW#|*s2gEPF#Q7 zkuO^vqW#r0@35*|o{zP~aFmj?@DT3lA;%9AaL{lpvO*+0uj5$(+_kgoDOf`uQ88K% z07>e~#YV98KI59PF;7cN3y%bSSKlKQBeGcFJCL^$NW-WIC6h;>$$`Sub`opDFQ?Ft z=>cV@KU;n(bZ8ZV_;3y^LgV6gn>)X;TbFIb09e|gyx%$VBjw`5J@(Q@YYVPJGQIt= zMUeAs(0Y1*{~*HCm*4nleX{Q0<$}bIBdQ2(Nt1ciy z8wgpbrdMBU{s3?%N(lQ!{ty&%Nt6x8E?zu#*0}`ilkN-ge0cyZ6y(Q!(hK=DBO_F2 z@hQ}d<_A)qB0BWC1T3slK-?&icRyH;XFADk{*dE?zO9|I&a>^6G3E2yq@aMDlsvgm zu{~6^4Xs8mN8-ET>hvs(j)C1~RFtIpT~>PKWzr^>8lyReGJijM^OQo_iC zvRx-ij*m#~5vN6uxZx8*$YG7gWYPY9*uHNOy~JZ^xSr^BhFM;2$@$kC&%9^+EBdAM z5uh)pm6ho}>PUE|R6W&|cgOmH?%;$zfpc@!^;`h_NBcIQa^B|`5D|o=w>6IvjRs;z zhb=u4s1Na(Wn!7;%dR^h-a8m6QB3F#x7d>wT$gE!xju(`liD5d?pB(#Htwadd0Fhg z&jv2Fv=H$!YYh1!I85X24@t-L(Pb;02O1t4ID%0M3sdKh3-xvA7=8f^V(iTn*l;}!8P3TV7^1X?ll3FS1ZSn-=c&xX~_!l zTpnMYyy%MesFj6PG$4-e4jNF58u|lWSNg{dm42z>$3}t_qqh;?Q=D3;o)+6==jZkl ze!2&nkwPa`G$_xUJsa|z(p!WvJl$kV6*G%$(@!Z#qIT{n7jNc$+!22c;9YcqsL3lS zLk^8z0PVs6rpU`aEMC3&etG+rk$U`$cfrq&-r}K2CdWZpSy{}Qkp6c>34I_y2C_jrdreIqJ(t5?nqHsU%1>Xl zdZmz%4lt7Mh4lD+x-PSyP+D3#_4yU@SA?o*=(f@h2bxcwWrG_U zPNMooDi<)^*nF;f1D1#BiKDQx88rL~F-}`E_Oy68F||#ibyQjiQakS;kgTXlY4aR4 zZ$41Ylbgw{zIHw90Um@Lf>qWHrrfX2%*zLP^_(- z!Ve@ya(0`UI&mv`_TcK%I)ybYhrG4dMI&$#gniW;o9-YkP?})cZvXW_lL)b>o!Yv`V@6XwfzuP_fmxhGeb^=JyDB zx(=r~ws95oZr!ol?+4JK%axZTCErCw0T|RIP9JTP)F*@UNhOYa`$$FlqKth=)|2n) zq1qp$6jV6{(~v9u&BvF1bu0}~7oDfWI4NM9kZtJUAG((0a9M|jz1|~y%s=r-CimgI zEOC?)B~(F*F6WRO2&21C16?p62moS}5HJV?Tvv_)vS#bdu9)C|VgX!@*LSOX43Fz2%+2w zXnDoHDlgYsFrt-G_wj+-s*DcHU z&bd|ORkR{bED|P)VUc1E}tC3Y4>T(;XPchvvovZcEZTz>tQhhhL0-CS=0BOjSmZ|pv<;@MesN5Q$% z{wS~9aep5?1;itQ2m&6I$%JjRgGZ8>zfV@hdQkT>dT4q5$>%3iJrwK0q$TKoJ=?ml zT?QHrAQ93u#o3Ay2gfe0vb-p$VL|#@Dgv!L*f2>m3s3j}I_SCmCQdV?c8|(XZ05lD zhytVcc{~J+FpB=a4uBcuvKUBzck{jkh$XnI{`pPH_27qfFU`JZPbxT#E4YCBUB=uI zbsMvJm1i{Vp0vZK(L4=5&JMMN%e;Nk^{W6+FpQ_(Hy5HtuxFGP!}*ggG)8DTZtn@p ze)nIY!k9(;9f)>V!d@<4a6d2>2Rd+0(VZs$xnN0NHj?i|-@_t7O`LIf>}sNSbj-y` zJq|fH;q>&o4RhV?1&vONW%zbDohj7hcQ*jrkDZ0fDwl)-eZnuF!p4pN?vn z5TP|vJbFe*=t%LFj&^B2kHVj|su<+rMWo$DI5Y<39)psy|9}#g9g1f>MJ6sj=ikPn z=hoHiIKL~VN*w$GIIC%KsMiFeV1m&Lg4r)(Uhe=70rb}W4mhWmjP{!5Xi(4Tcp=^% zby<)e^obi)V*}E#RH;&uB%G4_E{d_KC8AVc946>}a60D4jj=clWmu9@GBy-d$7)0|Ua1#p+o7|T|yUtIN>ydt`tAssijAN#@PJfr6jh(Tq*EdOUyVW$U zH@?)KNRW}+-o&nkoDs+H^F`0DPD~^7OPi1(c;JQQK*Qn>$!$r5OUOic1SWQF&_m^B zNTt3sZ(0Vf_Gzx0h(OkXkO3 zH?!a*@{p|B9a7#rp7Fz{hpQRBT?kcEe}Czer$aUVzQ16No}Qj>13w7`rB~q6_c*gw z;`M{Vxj&(bJUbm}0;dWrhY6|`$7v29ziAMcFnw$PVblGy;(0Yb{UQlizsAfRF1fhR>5dG^TQzah0drD8Cn(?>nCBnF&Q zrUiK*0qzIHti%XHa3hhS9Syv?{NwK(<_YNF^0NGzSym|TJK2wnEBK@2)xJNr01Wz> zu2DwEu5!E)gsKuTpwuGz13by=y=oylEb;8xQM;;-YmB52RCW#KLmy zGpLR!qE#Q`M|I)-w*sTiedm^rsX43`jhe(?f5a-u4m!Z;--x|6C@gD-eQRm#NUa5d zibK1Qbtstbp`~N~*(Rg`{<;;?om8; zc`4fSZ0JgLB`w!_UiAgdlBUy#$tHml+*{JK-Te`-dpeJCNHRa&c=Ua4s5n}5yF5Ev zKva~$@WuDs+@pYxqYSxj2WE*ABW3*&?!=u(E@Sx9YrQ5kJA(M~<_-ckm_E;So|ct0 z*r#WFA%?2^w)^-|Ju&&0^i=OBHy$#_sRWDeo$&Bys(YTw!$Js`^){B$}qb)$ljYX8Cg|i z(k*sxv$gVl!$eNOFB!TThxH-_(XkIQf9i%b&zV?SrofM{R@jdblcX7_ii+2_C+qL& z>IU(RRh||UZ0zHXyK%en2odOTABzfVexVBp%(OE^29Py=b^7j2hG$G!zbs6B!=`!Gt|o4Y2=U|2N{o!^!Ga1lWyQl zl*tUZGsGd`=pSxp`~j9afpxk;`cx$Ga5UV`ZAfr#oI~?>&Ti8!j>4#KP5f1ffLA8}n z>(1`x!V5#Q)}dj%r1BAKMB3ffyGL?~PRs5a5g+-lcP3UF>P+u<&eou#wUJJ5RW9qw zb1V5>G4;jk9OaikAzSHj%6-Q{Hs9IiWyqMe4XRFq(U`3j=_LNByw{MT)cMHW&w(7pRmFe-?DR;hE)0wMhtrQVBIm5YHK7e>(tw;FCk}t z4i&2#{C@PnAFL)Ae$()RmKJA%RrFPfil8BYTa|nWiZ=7$JQjdwgK!bBN}tT>I9j-| zrG+v=UJ<#xZFOSS>BhlW+sf-C)&r5|PV(n;OSKI+!$zLu!TbJTrH%I?A(aDMO)E2$ z_ZJ^hJEh2z=-$EDE7xQYxiSfs#5hR)V~wo%^u~>%a`6|eO?UsiNdpiBSH^@uqGOFzC^JJp`&j{5Y4mHpIV_%g%LvbQa_l6enD#XcA z)R-8wPs%tj*I8w{N^{y)Ylhgqqs&K(LDMU%vl0fm?!6GeIyKU5T)YS$gF2)lkqOLF z!cWPM{Z2Ac;UZ|AQ$mRT;V`YiPjuMe29s&Q;Je?PFiJ!eriIhN;&zA-J*?b94ZJi( ze`@?IL2{xHCql^pVgg<(r@>3E%TmZokF2a{lx(ViA0w!`yX3}Rprx+jVNn2dxpuXF zhL}oWY)&2k&ey|!T^D6xVW_kXZD?R%@Qjg55W7mD)kMq#NSJIp$?G8Ik8|s4>e*pB z9*mPH#tE@2Sj|KU@G*lNMi%k9IoWRjKFUKfk?_plX^U{B6OK!F>bcVl+p`kle3UwH zaQb}QCd&o_eS@5y7y*JHo`46uB-+I_qx*0!iLi`1`fKz%l%|eOCxBvT0C5mhSRXR3 z@P}F_ED#H+X=t2){6H?1)0)m#5jsW{un}#tHXS)oB^@c7mm9#6VdpQ4w0;`RDrL@ICTjC<#@jU*%Pp$F3XG9dAY6 zY9NNECBT3bh!-SMOF0x3=WPO(`Fj^1H8Vkha*oDfp4g7py7M{N=N)SZ7?lXdA)QzG z-}jQUPrtggH|sYQCIEdD{E(fI0L!0*i`8fNm&d+e`l7R|J_}cqC>f2Z0Bu658gxyW_sM;-vgjLXttYl*KFIx8Gpa0v zs5qV=f7&q3DV4Z*q1lXL!d01U7^QRt*-+_feIsX6M+Ywzh5GV#v(LMF{M%lxMM5&@ z+|n4#E}#l{354xK`01~eMV}aC!f9GC!pd&>R zG1NQ8mkVr=TSFCBP5m!z&@CX`h&xS)Mm9a;XY#8xtWSWi5IK7@9f&s(gROING_vz-fRlaa~K!6r2;`#g*F@kyWcFKv?H z=PJJ4KC~oRIM4G|g&=ZR>DFzQNMNv~Z19)+(Qc(@#6`oK0)9R)NwW3j{ZIjGOhKby zh*}&Rt3}W>yF}GHm~NTYDTIJsvh~kWr=x6q$nM8F(eH2{(>IdJqTGydb>1R-GltO48PL$$BRwDOZ_w$&dWcP%>q z%-IS<$C1279nk!_!^ef+YyiV0v7`?jt29oPmiA|Fp3l!Kr)swd$LJ{6)X*@weN3^NFV#%u&{ z!1A8yfLrH?Nr$iGrArKXsjX;S(=pW6nD=%<`sHVzk+{)BM6#1y!84?u$Hg3vD)s%!fg?$79 z-WU>5pO9apAcyg+@87=z^JpMtaiMVE=Ii=(ivY&jOW)s#Oj32@pA3$Z=3XifTI=|^ z*}Z*VY4KuSL}+{8{_`Iq$k@uE{e_eWGptob-mYJ-%QRrr)VwN3U;r{&9)88&Yp_Qy%0(GC3)zS z^WbRkH>cUd_TB`x7m3$;pT~80-hKL*d?|5=JF3qiJ`Ce`0ow7a=_qjYVGx0>IVCY2 zFElT=AaYqBgGG~jhVdC1vBQ)YU`x@NXFt!pjs@>-Os(( zP9MMY^idlxeG=18!rzKKm?o-Dig#X+k%dFmt%We?Q;X&wzGD1Tp*4b^M1ey9!*8kH z^;HY*Q(P!=J;@_OH3_A8h={WAR?AO(D@rgr>T_7#uFuVFZV}g<$UgCF_0HGiKF*VY>IWO0av$2(b*T_Mf0ZYJBS66>STsbhd zq1Y-hXEaoF+%eUvF)4;w*Ws$>($80KNC{caKUUMZV`fer9yRryi2lRC9 zO5&W#=HpQ`su4Why6_(#HYQ@b_o*Af&!S1w*Xs5ZeMa#~pM#{Z6v>)?e(p&-UKb3C zzH(9Wmf8F8B6t-zG{sEA5Md*)#AQf45fNl5K7Pehxy#}liWCv>Bg)(0Eb@WpWJtrE zWYYjy({{ALGS_IkRD#)9$w84@(Rq3lKhg2**M1$%C!n)-fIHZpJ7; zn;{X1)lOJ}`it3bUp75|aW+jc0|5zmZ_SpRbI@wP&1Pl?(XB z|7~s_0yaE!qk4DagkNj`m!_Hz3Gv;F-lOx%**!ekt+$Yj2gS=5P*M_`gigK0cCwE% zRjVd#aSX-N1S+ksD}gK{jPQ67}nYxKdN5 zYi@w#^}4#c)OpXeWOF?VkT-aANE75*eo0P-KGK}a%+FT=yoTon%{{J?OEckkmf{KJ zt9cXzPuea61jSS*O7{?RJ#qPJG?I4#P4|WWoN(r)lki(eZb3+yNEoC)^~K~fQmc2! zg0QCr%br~*prKKsip5Dl4>ws)0&&Vug}w)OI#4aYh@qiWQHURd$mDegy&uF< zClRkI8XAH3m@2d5fx=_dufJqxcP`=&pL(g<3KLSU7uxAP%gD^kRChmKFgP-W{Fe+q{EMe|{a|X-w{h#4b0(f9_rI%DzXISkQK@H|+)_ zF#Yt(;h`H5EQf8mF-fm>cDyoX`Dv2NEXYmYCbBY~<05pEV!5|o+Ux4-(m`0`4=7dP zOxLUXx@4XgNi|Eeoni0g)>M0=Nfb)p_|7#RxIvrDjgmWqqzTlFMuCvh)Z1F*x+LTu z{ywpBd&8aaP*S+i4f53cV>RD8f5-kdgWl8;uUnEMyJL@?J!@wE>-8_?-k&IQOqB_U zPAEwhx(J-yH*eoQtR#HC?%gVqAAr|4ykdh#$sHd%`lt>Nw zoUV~@z65)5ZbRgo^|lbl73XCAYM;_`Q5-4*z(G_hF|>W?2k?%OLY@0UdSMvlb~0v;zHP-0#_ z?~FK+FygZwtm5IS8}<2fRu#W*T)}7J&4coKuaWEag1NuW)DlM;9SAamZflDZFI%Ck z>|tI2dSR&|ZSCg%5KsoON4Bujw2>UY`MW6*;+{-_T~H^2}4g_VWH_HLV*A#EP8!RezZ z?(39Z3bZ9zzTb#g7%VV*aP3;1EGsVh(^Zj;h^KW{fe&=>NOGmxeR3k;H1lR*VG)ao zL6saeY&J`tJnuEqBPfE8cr_C5l=8NxzzlKr)TxyG5aO%BMTd3cyaxI}I`9ThtA^JB zp0=QhiYt(E#LC!u+d_YkKhx#ZAU3{uMWcORALNW_;~WjxTi!|jrlnxnb0&}(c^*)r;rT8H0>_7;lAQO1`W7 zBpZ1}|5%x=4yrixt%(+xb* zhE9AWg_T;Us}rWl1Xkyn9NB_<>?eGVC+8>3i091#TTuLZz%d6S(jpMI7->ceG_|0>W_{q8- zp9z41Mlf6;|N1zHO{%~T7?on5gJ7Us{laU*zRp1G9@lVYsoAzdNOF)g_WJMU<~i!* z##w@@Yzm>^o=)it1oCAdx3_@gdb^b@N4>5gB3xQ zy>Tqy=P#nXh%z>rD4$B!yYleZv^|!I;0fZcwAoLnur-dE+C3!mvL#z;k$ERkeEu9? z7^m%ebGh{i8OHg}5@S0$qOg$IV~ zyAeCYTM!?TeD5$5+Xv+FI+R%u_F{+1t7b$?5^54#(1uzb{Q$qDXLa6NF1K7BE(J^c zi|p)Yj4;IGLS?R4FldyJlw`(`Y-eS4_JK|V2*WRQ9FrS$Y2uB!c&cje(#xWU4R35A z6Or@hle5piWYRBw%y9hXJafku_`6$oL>#)9L7*x*k8HXOQ`9cv6WcpG5l51X=?O_R zU9vaGg_HK0_daw;x1lA#b{m*wu>iKAlWNZ98W~IBb~F+h?Oc{2d|Q}UiQu`3MQTJNRRIcZ9Qyv= zy^F|?*5HYX;D@jNc_LU|$wW&c!K`bRe;Vv!t22B)j48P9k+^f8aLjt~`Np=HM#DXV z2;@g5rUDIWej{Q7yPC;ZDk%YPIRNlOlb1|7U?)N>I)iz)(v*22-;Hl-*XbvH>!h<>*h@8pk4Eumy5*7uDP~`_@PzG`!$ri{O z{qIlHtU<;2V%*Rlb#ipQUoyG>Q%JWfrcJ`_zAI=^;`QKT{S>b^u;^^uoqr-+BD2~Y z<>G!fW2%fkkGV-lMYemFOIFU?3!aX{Ia+!24&4O`_?RuIQVT%6V*9i6xO4JwxvUfI zKMyzv-uV75)iM9(f8F3W^8QyU-T(Kp8~*>3D(JLybPn9%3r7M*vnBo;(-K*I(?}62 zUz3?GrL6{|IOuMEX7&Pwvjw2Qg1VCbFV@~VEUKXG171KyKtxJf6jVS;KsuFDDd`49 z5b2VR1(hxl0g;kWVkzlfkj|yMWNBEsWA~dypZ9&A>$|S+uaC>)!Z~Np%-l0`pP4&; zzdxJ%9{!~K|M3`ra4c`Vsf=N*)K2;^_2Y!SQb3d>4G7{=Ck{MnB_PSbXdD7|!1b4W zB}t6=phGXZQvT<=ZMx${&!+;JoKE3-1H#V!M33qV5Mt*Rn>Np0JfdJ>j=s5_h+IB zU*UsZU_YHspA7wS`Ph}02bz5h{QVxlf8GkNfBScx5_6z*8k-(fvYnvov^tp002V=( z5*Nx_lHX;fsWRNr`{i(oOjc_WS4E|F;rdL(TQ^3IQ`ZkE;q=AohXf$%NF|gU;>7rKDcY@2KV(*4o_E1q#3A&*Hjo8u5XR?)O zh}HrIB)F$AeoX>=7mmP~P6T;c+g&$C+<$@O1r3UZp>^R+D zoMB}gn=nUrJE@}wd%ek*LTqc1wBknU>VDvtC(74_##k8bY`1oID0jc8NKA*73}Q<5 zcMa-Hj6T?%<4Z<96>?6wK^k@bXhMVg0oP5~$NCa}zJJD@g14yq61lm!u0SHuRT#hrz{<*6KelSAXq*tC`NR!ul!?y^UumKN zqb+4NKFJ(hE*uwvC9!x`s}#=j!|h|q{azbH*l+!GxjU%Y$9ya}Cs(CBrd}LV*PhSB zGBhpgrhjMkJ7aKYbmYYJ!Rh?z7^(d=oOU-aLnNaNu%fobOnYXA6pfIW>~&o^mZ#B` zzUhs|Y}d1TogaR9ql~+M$(PQ&J&*1IBXhZ=vt`>Ess?iVwg&pXGVVKku0?K`ZI;(v zyP0T@gdE7jl88&U@(6M}XI`6-3*9Wd3zarb=#sR~Z)3Edwmdw&-$O~#b)ugBi$-`_ zImsloAS(7GCCzC`=iMrWl?K7Y@?_<<)9M)Coq43on|ZgXi`nI&lw1LbVS{lCs1U~9 z{FXVesJJ*5;H}yt-+H06^!`1rx}6(c#N3<-SZ^+vOPP;aMWsDc8q9oJX0?fxHB0Q`Qq zq3fA12-;vQ*xB1Sk+sM!c?KCfel&{4kzXLuj~r zxIPem@xX@csf)zP;v6P6mJok&6UVn%Auc3Un`HOM>ERE88t|x&2P&HpCuiZdxSc(L z$AJjqW4s=HRDO8*&!1_1DKtFOSn1Z{@8R1!kln60p7E4|PN3qRg0S=1)G#x@B_~Xn zVyd{U`M3}c_QdbDZ4u`b>V+RPe1^N56RfsVEa&RxAH9r}#BH_ZA_ND^`qj*@j-6&e zSFc6A+3}e&?ta(C}DadVSo*@-C-r^f#*#y>DR zM>aH5o|rVezl=SeXlfc~bh{UftnJR2>YU#Eh%faeCkHsaZs3AUwx*!9f>!kT=`Y~v z3Sz;@?SQU+VPo2#eOv>a>N!@H!0<_~qZ+?kb%^VGop+7yJNwydMP=oPcIZOPt|mXf zo4Qqtay*kW=Ew9;7aDqXElqWGJR0YOPWgiaC!@n*+``jxDUn9W7La+me5P$w`9f3u zgP{DkSm;s%kJ*sl8F9Xq9-3J`wW>-Lcp28woS!1LB6);`g&$yIv@KydR$Gf#2X;0e z3H{9d`Sa%$P0f}O8!pE5GR#ELhokncPX$oMRhC8+#}zcseHIqao$?wrZC%3;bmk{4 zujiL$9PAax#=d={ZOfW4kO;5_tpokMi94ZP(pfiOb4%#(S262R>(|7@+<80qX6!dp z&hqOB#LPMd*;{)>W(C3PZGQcqdbofKZ`KJaRD?g4v7LE8H zpVz;0&RQcGxo;)%;oF7N2Okm=?Zb%hl%SZqzBUUr8+pSmZWgT%aQyP|pDSz|y}C0^ zD@+EKf(=L8$R7+%jz))Cc*}Tx5^^IpO4vRdd|KnaMsR-czfTZ{g>UyqX!=Sm;Tgxy zbsHzv>!&NW!>>qjU)|%avbEabu{_;8FMWYQy_XsQM)Q~Y!UdiPtJix=Guu)YY}1~p zy}4%y++_m4S}jQQS!P1L4LtJnacUkd^L~k8Xd)*kZ|~itht;_x8(4p;s`^o~YdsYO zDnL^a_|_pW4B*yOYH)s7x{_<8XX;*ad% zJR`%1_{I~K-QCF0wOg*^7mu<+yUvKWlTV1}_q;!=Zg!4@f%ps)v`sqy;67};0Pa90 z;bpEqYmP#odbb3eYEGVg1WTS5?q`a#i1kA5u)X?R$>0v8`HPCBl%UYi#&|yShn7d( z%fq7A5fXTK-04 zq{MjOI{j%9^Rjju9lsIm;F*)N8R|4wP#~0VhF-3Pc;tK5uGmXLUxSx2-MqPOP{Fw? zdyR9(N+pIHysey06XD-_L(*hww|)~rx~$O3UmxOtRio%|zF{bE31sEazD48NHxc{p zgB1n0q~r|#?HpiA%*inUh#5NNwhS8;$m>{yvj4FP0Gm}-4&j|k!@0V6vZ}xJ;w@y+ zK8F4`gkI>aep}>*Sa-~5c;}?0tpT^|)jN>yfzO;HQ*yGF(_x~lzm+=O! zCBjE(ec<(9dJU24PmaWc^`aCP-SQ?`8cNMX9MZ`6Sx8c`VGc;JD$f#jzsjPl@tpAk zX&8Nh=4nQDRZ-31o-xnzsOx_CM#?GUnedB2_ghyOPOoo@pKGhP^lAO=AuO#KFbryx z*-qs^viOiK1%QHR=jxqRaKh4MK)32Y7Kqy(J&D2rMm;9~yI=qI@D$LHUXLCjVuTfo1KbVNCY=4ueYN0z(T~_w{gQFBD zl=un06ycT&Qm%P=f6-jNtIjbUG&zBV@G7u(3(+$Z4}M|tk0r7>QN zFbO*I6AyM!syl0o?^3ayLKS-W()QM*D_);&cELVLG*8K*p2|1`P^@E^suDYHO1XnT$ql>Zjk9nL@qZg`LvKZ^tT7(tqcJ5Z zsL?b0`HSlM;Qb33Y`dnckFp(h+f0dKGcgfKQ_ln|-6M%QagF!I=Ir)=ehcTiI|SPt z;75^`(5+aGR73X$pH1YSjVy2C+!2Fh7>M>MRSHFxh z7gd2M)}7wEV^yPtihkj2W?pFeI2K6m&X&{4NZ_aAQIm)ny}90~boyXAN(J z0&~U(k?L-jK58JzzkX(|jV%-6jx4nVs*wMK`ZsigX~e|x|9SpG$ZvPYxtl0ECj3&DxP&N`8@Y`sR$uwsb}0*!a^>rF6;0A=6spv9Q0ccC#M{Ep^T&x zWU{6m28YP`E_x9~@UKemZ0*2<6c$&Z=~k0I2TKrNXS*8Hwu6fYwR!x@@*1eD9m^Hx zM!Acmw)C~8QO1+sym*YM#9xbB)XKPY@o^PevI$)MVThKOBSxt`K`q?xzPQb{^>4L{ zKI$iQkMBmgqoDEplM+1AG6xO^@MPDaZDZu{5-`>E`~w0h3IjL35#!e7Z!twbc}DGd z8Q}Vk)iW`zOb&Aht{qp{z)4A?#QxQ;vm$TIz`%fmti|Y#^FEx0A2PeQGQcaSB6A7C zD(W@3dWX6L-~hpn5zj6&F}eN&HPP+i?0&dB-w12+$lcV>xCG0H>|01R9T`PktE0!{hm5b|UaBy(M`PN-ev$}W~Cfgk> z(_2A+CLUby^YA2tpsm4&T&%()VQDxQz+1ph#yLRq1 zHkvL+tN}7bIHB#`Z*?^bZL%s5?RM^;}c%@<;)rZPm(8Ij9{_VoZ~Axn)%b+-}#D!kxk2f4*D;S)PfQ z=~_?2IC$C4WSCr)db@2GK9u=`?x*-z4&Agu92?Fzvqp&!`%l<~Of&r3=&bC~a(ZM) z6`HSB(5IJ|3#+n3ncqrv>+cuBwK@0Nop7(w-J=ak0r3 z5053?>=SKLigjP}7hT`PnZ2QFXMNKlj`;1~(eg)RP_;D#?DW=`t$vV_I;(4@o)>v= z$nmTRqgDr~vEkVau6@5w(mbfQkk`?}>x>fCZm)-)%16*gIi4S? zNS;#wvNxMOH_*H^@j5`=cpr+h9~Ww2BaVU-Pb*t#Pj60DQ>FNvSXgzI24TfbcJEf4 z*SY`N&eHx;!kdF`cQX}%F88g+sv0`1A%sMiA(O5%-nfutqq<4eV}$!w!xiL6a`Zt3 zX^A&ev7G%atv;>q`oaMRJvr?G4IhwS6u6b@m-`;LY;u*ET+J)L+ zAZ(JQ3}o!mX;lY$T>oQ>56LMz!;7>%4%DfzPX)2kOQa9I(ER+j#?f$2TURCBF_zeK+j{9Is#pl2@~lzR|iH4X&c-#45ulL z<*QWFv>f{hU2XQ^(JkwjKr%S#$(y;%6rT_wGA>P3nM?0Op3+L4F%70Yl_d>f)ggWQ;r&}F zPFv^fGA^NPjf{I}>l+V)I+Aacef-E_`le?yvYp}0XM($YuA+h|hifs~ysn>5#g-E9 zMvE;?I^h%3UV?17iB+6#RP%Rlg2hS`Hn!pxiFbinO$$@A-O7kuD3Z}We;b2PihDhn zrTVSKsw-?8zhXy>EL|HzXEv$=&4Kv67l2?x%IBtai@*F(5xcXI#NWAtsx?1(w>?;7 z)&YQFsW`e|HXX+0%F#?^<5V6kFZ?3{Pk7>CdAVrqQaj@xUZ*H7w)?(y=Pp#^!>7g@<0-( z?b8Uoz2Jp12%$bo!aU-tc-`>}?L?1-sX|0C6Q|SE;1VH)p~#)}uX<+~FIV@`?KB0J zm+C3(X~bs2$?iKgcxj94$xEtxJ;p6)i}1$|L_h3OrfnV;Mec=AW{-Mpvvac-QDJay z^YN)$7=%T>fh7aY8d_B)0@T%=xe@=CEGk@mxhb-J9e%-EZzwQCL`1U7p1R912srLvc@@!K9<;T5I1w#vI=XAoIx3s*{cyC3tT@( z9?m6Ej+uD$FF|e?pnS&A;jduG?zYlOq~4;4_=?k{&r#ki@<7m-;lOJdIY9!y%r6jS z*d|2!@?DQy(`i4(H%&hAY4c)B3O2$27dSehjE~~XGoJYlXTf07y1Fz#eN3$r`ApRw zem82GmgS@&`Jn4FnUHEReFwIwv_irMMB@(iW_E&QW!1w9>K?2iq+#LIJWpsIy}f}o zwE?a=Z0f%o5So5zrf@r$q_wN#-dXt*bmt=@C|PHe1TkMoa^LBcd}olDS^PB%PUnR9 zQmc^%*fD2naLj0FW}EMb*jq6HzW%n3+a zlDYv&Py?!h{&G9xVs$3G_DASn6qEZejE;@f>$I$jCa;YK#T*wY29#(m-`Z6H7~Ye7 z-c@bJ1=T^;Sw z2vNh*#Ecie@`fnncHua~Gl+fYA9q~h%H(@xT9rnk{3@!O!QYcft|~tIxH?)cDDa1{ zbA~RJ-;~?lDha-R-lu1L!uVoCIOd+j>cjeVjWkC@HpjNcsh44^;(>(P5D^Zh3uAR~ z43>TDbOP2lK%mW)H$x(vhCdj~=T*M7Xog}MM$_e6y?UI&163cevv(`sdEl{N;{yFk zGZUhXLtT3U&!gp;>#}6AEgm?iIgMjvx>w097q+GEafTgTip-eHuu%2)*?0FAJ?ce-3neGE5$Nm_=@Jv}gVKe4JTl!qGUl_r^-K&;I zLn2NIx)pF=^Q?cprj2u<3`p7Pq6T4*+>bC!qwcwRbQY)X_T-O_6YWfy^HY;^nEDq= zgrQ~pjNp=aM*2~uyUmGfn4va?oHXhe2S1KIYEaA!sIA^#c1Ix}f?!jp27XqVi}44o z&zyekckvf5shS>$g>(m2U6~ntE#s1LNa!I>6I0#ged$t24`6rD0`Zj`@NSh7TB_AN zoilA+GckbCTm1ePh$R3>cpqpiO1>GnCrmM>ZU@6KbkTR@KS#$Lq)R5~5N^D4@l@#8 znu>~kllkh~+|pw3E?=(aWe!r(_C_^wi0>I}YQJkAJ3&~eZ*u5-e7Lz-y;tu`jBP5i}b*ee~%pw}eqVJ{`lb z`^9*se6Symx4#F9t-)?&AHB-~^}Rjmi}#lDzSb_bPQP zBt4kYOBdQnn3(!w=eFItdhVo2V~%PezLc1EFM(I61DHOV20OutWO&g*_(Ri`MM2H6|uSgv-Ni(oD*>ugY;udxg&-ywXpET+1hdV*SdArfW2zfUnPas zC&;<}iTt;_Gt3veJT22Pc8IAFic39TMn;R-vq9_&!??*iI#bTus~4{j7cchXkzKmJ z-JQ(|uGpI%Mrd#BBke_!-ef+xctp643-0&rx?`=WT}d*~Ah3N-i{){Y^nq=jGg^Xm zOh*w^qUZE45Q^?6v-1C&$e6a=9G~=m@G40yBL5HeiHwZEf1^y&{WrKJ@qdF`2K*Pe zrK$A4t>(pko~h`+!7a!B8{E?RzvD3eKZ>PkS#TsOcIr*gwF%?TCv|r^%cF}!77)Y2 zCI6wXaF~KkVBSe!YH12c=rp|_*U3pp($n{_k#dcAQ}myt=;fn1F*6kt(4LoJZd8 zL4V(;(SPyX6t67d(u>fov8yGjEfsQMN+8C)$eGt#kl_2xS47%43MX`eXv;qLwRx$T z7RUU1=R{wAYxb626!up5dS2h>P0@dwX^Zu$DJ2f}U62;p2MEF^p_p@suc$5Duq#Pa zy9R?kH37n$i00stp?Clh5>kK+BF-55YDR0x%< zkzfSzt6LxngBgS!9ApHuzTvKzn!D`!5;4^q*&Spd$0gHO)Opu82~25a+>*rqd=7%8~I!w(-m?sZH8ZzSL67`8T(YWul+nRu(W&tg0o(}^H|zL13pw0iQ`N72b=ge zbmFmrBFwSRd_gbGl0c87x3;|xrvlTs>*_y&D15i=x!G;`TkdyPsb$`%h4zz+-THBl zF(GcHvUb)b^cgXu|=(_rEoS zTNxpQ+62;}nCxuZD11n?zpd;Nb_B%33~-|Zg6>o9FyQ>yF(Nws?*L53Wa1awK`iEWk(1+WKwl_DftKkujc^c^NN35vuG6Gr4+4J$bD?oBHg zTfOFGNK_{`Y+$y^$QjPb`ht)MCv#w3Q4c}$HIxsC%@m03XZ;nVo$0pZqx@;Cl=d0v zm`#?OvmD-X*($&{P2(Y-9GXQ7AVI%_G|F!%OVN`EAC=;omE+Fn;LziHDK}NBPx%x( zUgKvPLLCZ|W+p;v$_Zz!?j3#5elbhh5iC{5Y|^G(Cear%fx3z7tDz3RI?sNiZRWaz zZ@o;|G|!VfojQX=)Gy7Iq;i_`B9mjsX2Nsm=Gh?!1|}6ipZ?2sr8FQM-Ze4hRb@eL zX=(NAWdkmUP9X%45C&Q7LqS-`?0Hl=cpDsTHIg_C@sB_t`BjUwUPpfd!O1KkM+&Kz zboWHv=7L$8uv|fQDq`CoSKv^+Cx{v|RJ2o6rJFYwLZAk)8qM`spU+LkGX#;+4&)l> zA+dwg0FnIkE6w5%w;>i^KA52 zLYbGz@iR#6t`-8*7syBmIa+Qc@qc^{klkWU!v)@5dqRXjL^7DKY~%lS8mxY6tD)*M z)o&#mS0Z#~Hdgv%6X494liXMQdV}Np$l$Q0k;X`Z7W-}{$XU-Qh>nhS*gN6@nzg39iQ=U!Ss#h) z)4OzO{zUfytP-up1L$x<(+ejxCu^%PYPtxxv%}c}JyiET#MEHBhaHmUaCggA`@6qG zT=gWHl;0MvhcmtJBOP-ZMAI&7fAkj#zL!g*18R$<`I^2Va@AEeBiq z5cxE3cIoWOwOWyxAR*gweF`Awux~*trzZg8t2KilEiLVd(0!#FsjYd>yEkF%t--*T zxIGkueAKNku2Rs9NCh|S>75yjI@Eq_QPS-*2$u7-{G%(Zb{q2DRc*i|b0|yrfjprM z5cgEbo=1xDkBEk$k?tnWff-d>PlwtKIG*Xu#{K>dFXwyEM<7FR_UY65*OB4@ASyCV zrC?gfWljhHm4t&o=YF-``oMhW&QEHs?fGbxkg;NOW z1N^|0fD!Ud=Gez%_fFs{x@Wb0Vl6o6ebW!6J^Rk&p4K1b%T>lW_L;c3O%Li8{UtGMNoQoSeH2Z?+QImcNj!Q^zUHxe;_m(RN& z8L_jw8#Aa;e(w;kAZLdat7lVE>?$Y2UN()|pXG%jxtESQd2wzdLtKq;Zd}HZIu?95 z%i3EQAHh_Wq&tRAPnVj6cX#Bo@y{?OwNs_h%|V*j2zxPaXODGq9u@6B%N?A9kGa2X z2zmw)M}FnGxkB)4IqA#CP>Cr&pLBU-nu;qBGFd-)ZY3)4dAH}DpUEDbIBhx!h1Iw6 z=_Nah$vb$^w9~_4JvRyW4wAm^dsCaZeceA2#TEjMWIbvTB$rxlv#+^UtoD>sFt

zqHFp8fK98KA166Y7h_iI(Ga4R_x2uwW1HKta`K6S@zaONUB{o<>)Ear)%jz zREu<`a?%T3{SO;c)#<=Ip;PBo`A(AiL1gO(1+L0VAQBENz%M~SrVSWQxN!!K1RzLI zvF9Q0g@V_6-ZHljWc>Ag``5Y2@%hTG0Pztf|)=NH_N)EQo6pF)UM6oTESq|Du zG${%ighY*@6H+fb=^)Gk?9^qB?8*D5Jk|?ZVWYVp#Tm8cxgO10>hL+nWJBM5`nGy= zHGwh|`k?e`R$Y8jBnOQufqI>;P+IMrXo0AV^t;WHq_;FX`ZtMR(EO9ua z8y%zELQ~Y+7V}=qT)#d~&Ng$zS$`1V6+^uflc!>07B>g)$U0aiZO#29R5ouxzdCRk zZ*A2+ONEMFf2RcOq@I6!!L*okzhvb}En>#npy~45!A6*0X{pd)b#eYSZGnh(BxbI1 zC>B$D;~Nq?CGzWRf7)VuMiM>kdX4Q2&(YSE+@iU5n0+^n+c=-YxXxe&Sn^#^?i*Z^hR%iuB+WnrHCW_ejkV5_>o73pe>k7jkfc}2o_#DI3Sx}jpM zdmcB*$-arii}ldGJJ7EO$KIz8Ks zSnS}LP0Y3%GUta{h5 zqCUhbsfkTA9MGzPk&}eKj-=s}gGhlSF9>ADYnQmn1r_o%Wr9|HBl&^tQTIMJq82PZ zX~ZPn_TC14d$x}f{I#<}sTSd#1%PFF%zNlL^h&ORcMmnM>C>(A^|4~?dH}>y>*Xi? zeFrsRXVlyzq4^zqmVj5KCnHvGt!N{rvLUb}ebuWk&Hg+b2#sI8D}xj>uq|gz6r*7k zD_-_cXuPuSv5>pSTk~qAe1M>yKuA09$)EXl)@x%J!%c&lZB=O^p&R@*U71Ah`hw$czznOoajscOy`@&tyzN~{;KDXd%a}l0il3!Xeml=DA zC~A-+ctSYV^y{isjd?mhdc{wlM3UUwIBGq_Q~5Z*_O`8jPpygF53wsxCtW6SCuGR4 zN@UiY>d$BZF)LpD4LgO+&hY7(dAPnlk%7pKRwMVz3vt&kCA%BN z=^!_~<$oc$d4RqPgOA)p9q*R`RVK@s!w4{q&pq~KfYSPA?TQDPp%)DRnhPJ^lk3II zP>`Md*u;d%fQu^GeUZk%?T^1s;mgNe!q?CGWRKP+?5;4vj~5d<_D77ll@mEyjc0tw z@u2TibMJ5I4>o#I?Ad*2r^H@C&%Yqh&{iE!M(p-tv{h0XAx@5Pn@Y|p&G z{=1W{dn*VAaTuEYP^HIJ$`U{X709WbTxUXT1 z0BRXaIC$ToD>fkk2JqpOuy1n6ch*LGu)IP7a>kZ4*-(z^e#49PYV7A)H->iYYFA`P z3Hw7DKX#mJ>Q@zAl;vLidEiy*SzcM$^z`Ul%79*r`C)buZT;dWq?QTxolQbYs!R0G z@-fg}H`R^pNRNHut}YVL!Cyt3ExRfsX!)N*>L)9mwpU>VSUjH&kbl>VO&fxuy&zcI zwB?wDMILtgpPwG4gTx*o$N8%#dn?S%-QoLP*cef^I8n`d0typKt$=l1zGh*Xo`5-L zzs%<$2X$cQH`LS4%5iOyr9P|1a6?1&YW<3VzbKLRtM{$xUt<(g4u=Gh8j*V%zVLAn0_9OzXbFfa&ZjDkSuCtYt>Oob22I@bcMqu{;0z1fa4 zc2Sf7#e-}irGUrOI7DLl|30@AFzTA1B5zfEZ;Xg=aOkt^L ze&X06=}UiJ>l<_A=)DobiAv^;pTfVET&|1%}=8tPAM1O(~S z+y_<^Ufh31kBiueAnTy=5SG98BJBS~cLK)<0Kildmh+_zfha#)z<4ag16Zb-v4koX zkLA~S$o6mK|59}Ln>m4zfmsf85x(rq7f{A-=2-G z`viYU9~1ufO;yOn&`=QdIw~AvD+w}kj|I>a6&2JVIfRrkffF?MmmaWqT>Ma6#GMqC z0Ns(0^dxjS##~PB%E{qoB*^Rxip-mBz-QFRjr~uh9Ed=yOOent-fS281eiG*LGslH zME17NZo*6u=&O~oePxC5pNnjbI{zwDN_k;7>-_v9i(W4Szob);om~N&2@SxduqFr) z+C>fU_&{)n5-JlUi4pL#z#^&sepyw&;X($Vu`)oF&qM%cXTdYSsSu#oKotwdj==>P z4Eo&Rk3W^17clzZL9Q`M7#!xg>h)tRjlj5$GpYI87eV8=f2GgQA}%hjvs_jMxY7Yv zE*?l;{+8?tvYE`ieE=RXs7%FA9{sgGc}BB_e<@6D?=MV&v0qYB3fhV;f66H-(I|HE zFT+@;;3Zb#`zBvB9~<2`C-f+J?~~bo%3P1Q2o~z}*z1#*_3#k6uaazi{JtnTnsU`e z>dodZRG?@wH~w!0vp6lb#UTb>kFL5o`Z~N%tL2Fn zuOjY0M6{^VlDD|uzt^V=CE@zRgb1X@PtShi$0UfPG+DKZj=PZ6m;UB75}hU$be0H4 zaC^Oo(=5_!dia{7s>fTwy_MKt&CiAik?d~kkcaQq%J8;8^R&O2_^x$yG(Jctrz`yuzopjBJK&p!M>ncIML^(M#;fh`>sM6%FSi{hg zi;2t~!!>Fb1|p`Sx=EHzqEqpMh6%f8+lN0vHD_w%IwY_pd`u#7z^UMWo<~PDq7(vm z-tSV6l&~1O1gU=p>DLA|>UZAI4>3F_@9F3uGhC|sv8;PG!X7~L`VVl#=7`y}!gj-G_+&DWri_8t8A9;Jhu5H+(-`uDa@+lEW;I1zjT8~G z1D(#q{pDya6$r%qKF-ef+x$bcr!vvC^Giz##%^7pWgeRYHo&;s@*ZiIMD0RN#H72> zrNc42Bz}kNGkJp8(teWM6GxM#cAR(y;Uf0+?Qo>y7iM{vKh6BZwoBlT-#%1=w(=aN zDDn^`5b`72ylwgC>GQWciHJ3SX0|&f4!-NJ%$waD98VRaZoE3Ht@F5h_nu55{cX?X z^DX(gCPurEv)xUivoj~M`Z}>&kza)z(w-_PSnU`%JM#k|EhgpbpTzgp#|CDGjWC@m z>qMT3lh>ag2YUq`u?^w3_0(~BYE(#IAzhi>xU zq$yVe(^n*~6gf2sCaphJwq)F{h_Q$-Fg%&JHZ?>UIn?MSifGQ<73803iL;Yumf*rk z+bAA7vo$HLDgD>;8j~Upp-nqG_&un66BJN!byz3^w!|aE^d5U?VOCgVDpiYaSEL^ zq7xy`Hi*>vxkvyhC_qr^EwTffQviY83NWMojRgpUO$~W@8`(uK4SIp_8ye>x%2t@H zTD4S^JSXlW^pa$@VaUSCJzCy;7wz5slhp*V%*E z`;qj&_Z>4~&Qgw$N@<6UjIv3)!IIMy^ib#j*L`{U`L;WW-wIlh!6Hk+#77j`{V^*``MPsKPt5w|t7OoqJB$4fP<^VoaV zRjl^F**S|rt9tFua4;G0-{jP|RwuSI6!&pD*W4N&!jBva2gM=h80?!^ zz84)SlGeRBv<3w_5AkQg@*jH}iiB|x zqreU1N5|zWN1bKkhTWW^qM~21s^(+tF?PKH)+fMba&(MtOsCsGvX8U?z zo-t-f6IIH81NV%EGdd>4FN7}{Hc8w{tl z94q_j^Md$kql;2pmj`JwRYoqozI(q++RXjsSza&WFG54q^-Egk+S=Ob4%=`bS*zh( zp4!@rMly=IJp@RYv|)XK1_o;$!8Y*M+!}NjSmie{-^M#;w_Vy9toKg}EJ3T63gk}@ z2x4u_mkGV4CcJ>s|5^aKI<-{CS@448T(@@1qSeMYw`tX8>4@Ayx@>5}V+nTiP=%hI zD7pCO>KD#XOwP9)br6ih4j2MTv7elx2dOpFCxwD}?V~IpSgW*p`ZxzOsjWrds$T#n zg1D{iyV@KhByZ1Hy4LP$hMvYywtiU3h2{U!+?MHs^+RtRO9vjuIo?4hGYv z*U%gqAX>j);$UO@-`fQ9oI?87THd`olbxN+iGbUG9|>P6^E}7L^stT#AKP!Vunx~Oj~p}?C;|$6<4O8 z`2e()gHhZ&$gu7?33W;VEuNIlwQ37n+3F$fs*#c8>z)I=#=z2q9TTjplKc$)BFHMb zf-4XMSLD$0r(qgjXDtj)%hJT1JigE4KW3-k-o6deGao^vYhrVU;t%&ammWz zc&zrkn(y2qY6#=IeVoGs`Pf_-y1M~IDMDQcOG?#H2xaq=fd`lE(swmqL#~Ftq5}P` zI*5BX+wcKktN8u?{RE(~yxf{?faDgRFg}zp=D*@w2+BFy*QllPWoCOEG6JpL6+e!m zNL!!Vjs_|Ibnp|ilnQ5OSFcZKcNWkr5iT{t!~iV^ySyCUQ4n= z(w!xZ?0Y2&RSB*;<&JXq5!R;KJW<14mDU#5%Q#|uzUf6bGkaK*@9i+R3;?8lnZRY( z_X5fyGCme+7J%rnz<$x07Qv(NM`*3}xVQe(y#fFr9w?B8rChZ$k{_;h;dWb|&6L_N zL3+@ul-JEZ!CE<@nvnX2kim}4c+`C%ep{}3$E1n8g%`J2qAY z7}IOrwzycF=8Vf@Ko2L`J#l0j|4}9nK02daX zyo~wZ?clW9_?p>T{@^ z$!85eZGrviej`(d9iyvjYaawL3}8d2rly9?!#_Fk(9c5`2pMr+uQR&2y}viRW)|yp zJ|a3(ws)e^;*fZ%j@|x*MSV)7=CFr>SAJ{i#F~yj>2XBm>noVHOo4`|FE`HcwGB}} zC9Y2yH9iPyE0+$;m_@*)?tPxX@fFv`+`D`4644}R=DtJi<<^-XuL_iHV03iG77Sr~zsxI7 zxokvzZ0DZZGbi#{;84lRnNxa8$CqO~iut!S0UwT0i-Zv1xV@I!p5^lj1VsJkr(O0N zJLKP975kC3kWu-cl$VRsdJ+Hs#j;#4CI=gNCMH6DkiVPibJjv<$NFZmU(aKa%L#t5 zPhrr7M;V|6NVgX_E0PmykUH=n=la<+gTh#C8#}_5_(fqx?bL^pA0K_+c%JVjl zFiobF)pncl^cr&8?fTaw{kz;8ZKT<3?O9?mVH3B`(l`8jpPoC(_H6P;R`VS4IPBT8 z$ss(|a3JLqQxjP{)WVJ#fC97Jv_bT9@3T-)Wu@JrfAzbY39Qdi2??G(7-Bc_mp}?d zVf=?Glyr;TH-a&n539}(S*xr?Be;xj$;a8W@-&|#&*?Vc`iZ9;EeQ`#?>;|d z_+9K&+{EW(+jkF9ydQbX!^s>-9V zdUH1X8TwEe*lkvZ>lkt(S>`6r31hqaUC3T`pQ|IrC9AeP`dl@{Ekir(tB$DiY4<*y zpIjn5oK9gROBfapqVt)Q&Y3#|F?^|$TgY3ZB^!@x4wnKSF+jx;O4wdA{Q`)7#(l`X z^EV&sn3|ij11P>ZgY))_Y>uLj19eiQ)tk-|UZ+9^;Zp7m zh;qx6>a|VE_hZA(XpL3IH9v2py4f zQ`LWCDf(n$kQ7i&FOd|D zGWhkK|K`C?OU~@eYoS-J)dNOVRglzlU&-StSGoQwTzGKK%faCnmIz5tJ<%>3H&Xt1 zy%^E^LxHNq#iXGK(;jnE`I?o?*`LgeBe{w>^IC6@q|?*76}5wBkGR}Xt6O$+=5N~i zv_M2+nM&HMOLgOT6~G2#8_zLME&}%eY$=N2;fe}dwGvH)7>KAC-tj=3>5^6bK8Kmt z5!|fKvz%^nV46oxd$jW9KnK|&VV{$dIJM5xuf~N#HBOjL%#e)DIZ%o_qN4h{FvyC%+gglO7$Hkcxl!d6PXQD!$8@q%wf&e%*~AXNya2FbnE-2IK$w5jFQEBs z)C#Tu!{+i3jEYd~RyO8<8#o<|YCRf|+a*;(GqgS_+&R1YAWl$w6SEyCk)JQYB->Dp ze&;;;n$v08wIt<>H(59$;?S;Ni-vG|Xh{Ay$=k2Rx!~lp===Vq&LAO2jiLtRX3=2n z9-x_T_iWEjF@vPQ{xX#L8;UON(jArv)+$e?$=cd`yviKE&(AW2zLwuBM&3S~_QL)KEVMb;rhwirt^_Ue^=Ns*EzWJ}047;Co4 zTGp`>$!?5otTX2s^`7^4{yEomt}~YzU-Mw*d(Zc|pZodTpZjwQZ4y!7D45|4b#`yA z1HlhCLX|=f8BLzE0+$r4;eNIDR|=|jkQL>7vbkiIzD7?OGGnS3m-E-Q{qIHM&v?SS zCT%`m0Dj-v-vC$n!-m_fVT@bllw8O|17W&nE;e0)yBELxv{|i3!`8sZj zoUuL|@plN5x@SQ99Y|aP9snd82b%F~YyLTxQXJ-$RBG9Ef*4h%y_!_OxoddukUnFD zh@TAF+KCza1ijZTPHl>dTv24wFIZW>4X~NtTC3pw7!E*@r5ptpz#?0o(Vl2%sdJOJ zKIfFGma(t4jmP}-(rwdOYHSVXx>YV+$peh5W52y;*#iqxuM&EU7;L5y-%bzURQL?l zhnfV5o;mX%n@#Wf^)FBHjAsizSyV1%JKYnlLjOQOp3J`0!P)e*MJJJ`fkL7tPQuqqhm2$sbVvWb;7Tws##{smySFUsGZkB z|2I-HoT+2V538LoZUx)#P;CC~cE9Bw!OO9r!S7FFT!DoEZ@J{<^|D*3rD}dbw!L9t z%l!X7GqLFR)zz2MA^1n7w3yXMH1fry>ts_{#&)Xw{@i9Ayu{$)K(+KDSqj;?`#H0C zr3$Y2-Zt{a!L+NaYol~R#=VJvL~?i1iy<~4nznAw3XYn9+!4_bHAvTz47vW5*t=w{ zyvy)v+3odg;(}jU;6@~(#rP}y(baTiq|Lrd>R6`R9vX_72no=?1;k$`HZ&pDNwy%siJ%SdZ%qzuzPi74M+M}(kfRGDiF=LRXO zrogR(>%>q*SMe+|i(Exq`Ku1g&r@>kvIqJWP@gIbN@?~GFjfo%^C~BAc(K-3x6hyW z-u3+X=RD=YnkxF@cFL)M7QOh&9t`KDa*2HecW(Ny``G-p*cY7t0yhBHk@NT!O1YPo zmQrAm*RR?C$M7&$DEK;}sXyqJr{#K{*5l|#CABgd7Bdf|qAp;R=l&=(FEEBEK(Yg-Nyxr}Nk7Ej&frk3XvMxSFBUC)--L8-Ih;U&wHl zu6(cKz(7R_E%|$>pX@?3{oz#@Z_VBDfrwV8OhET5!(81d@ibsTd}$QYeka4H6;ZL= zjdcsauh>t(XrZGD$0q{c%af!hmX`SQa*0z#t>yF(`&rlb8rVFk#6@W2zGWvu?tOi^ z9dwvkp0P;UWPQC{Z7v>Slm*tijq8^{Gm%R^8H%LUZVO|t-bQ`&;~{Nkk-+Ua(eAx> zTa?Bi-<|M&HPeIlFWtEF?y7SG$dai$I0*S{%smCDef?5g7s#J#50*L@e3tbXvQ4<@ zNiu$ZNB4z4E1;!aW6`zplC+VH$u@GU3LIH2v2b#cWY1b@EldCk7}|Itt9kk-m<6u= zHJm7Dp#HwLmKVBT1EIe;0AF6gdCRk(**kCg6pe{}F{$id!vWnNqX}sq`AGCqkleai zN)d}6vP(?^xo6O|`MhZ5&r>;hmO#2$rPm99(d(5)!ga-fbv6MnqvXbm(@IRq&4?<{x}7 zj-9VFIAf2MSKJTs zAahVb98M~_+dn;JBC=MgWJ=+*%j2R|)UKJ=em~nzn%v@P>>!MQa*Y2@WPLl(ymMog zJQX2!MX?T)0ysYYk{%lMaHYbq57!@318{hXTVW#Bau;cL@{}J(TKEsX`|ZR~V9gRh z=T=S|0d*Rdt*qbPX}DY`bTI2zw3+&JYT#uGCRiHB&M_DWGYnHTtf?f{np{P=myqZB z`+Wb-BiF#D*_(3@GNdnbRVcBoudT(&jH6VGR0);pNtt!I&2v@}0W|RtlnV=3 zr$Ip8J=0uo_iMB{WrAI*n!gWZ3C)LPK}zMN0oadz-k!+NWG?A-0BRwa&qSZ(zyr)C zCTT(|7}tLvWsxk@JZn$6xDrd?z@rS>P=5`IKS55T_CD%95M%D&!#<~%guDc>*sQZ8 z4eNOk$TcSO^oK*x-R*1ZFCEgNX%gmkRfQ0#YKzr-mImlx7>O{JHPfR%J4Q|{m=*&A zPMwL;ZP7gPD$sXtwA(+KlxW}x2}L^T@dI+|L&dhY<`Ab#9Nw0831On^BK=S0H8TV|c3X=41wPIx+Q;=frdX@C>I`m-6*X-dZm|fvPm0zlf?cn_)V2<8rnJG6RhdI1_B(!7+g~2 zO(W}K4tSK9(Om2RZ&{A46WKoh4*mW_+8xOL=RI#sQyNFy&E2ZfNCd8k&uOo> zCp+`9`+R&AgFnA&w3-@geMDs#pbnhU=(NZ}(Rr#9sT99U!>B+uqPliN9Kt6dM2{7_ z#ypPqY+AGo=*4y@U^|eQv3uaN>ht!`S>KHvFyxaq`O-2asm);;nL_+&vIn@)4Iy0w z`Wtn8Jgurd5`-9$?Qbv#N5WKdIw9Pn>ieQFq-JW+8%P_3h7L=@58EccPGf(A8&xtq zPjgY{_Lm~wR>>eTZLL=nSqCr9}l%TvIS3&z-w( zFLu{OJ{+`cobXN39kC^{%}QF(S`mvV8zjfP{{SZrK?k)D5-wD~j}9MgR7a@~Q4@w4 zud2>FPY;iCv?tjh|M5%zOI;4omiYga1HEWmIs#r2Vl`Uf#=k)Tit217?qTtI&fNmh zCe!tVat&_zD4O5U4^=pJT0))BFEfVRe9-j;AA}&nm=!Ud)&5#wyNk6fw?_09h9%0Ld zY9@&j=eh{CSxpj7++D26RLU6Bz!S8?(pL52AF{I@VIf#;{8|1y|wA*f&;eYa|eb{nPq(A8d&fy34ERv-L zUVHQjgwJ&?ZDp?Vmwu98PDp`Ul>1s5FXQq&Q&|*cTxlE?ku?o<;;xGMZ8tqL4mWBm zfTIN8p+?mOlxwr4Mi^K$>}^(Iu=dNi(lR$beve$U4v=AA+)`4u`nKUh=(lrDjh`}p zz|Bglr6mYib0O0lX~_g42auEYG3h!|k0KDSz@JfW=}$hBcRfHgH`s*7CMV}}`m@#l z!f||&M}=~}=^h^-+q;O#T_BY>vjj+@LR}=Don|<*Y<5uQY|9O%p1EMOAq_;WQEPn- z(LdL>a;1m2kk*KJRZ3d>kzWNXTiq=UZ*6Piv-#}Um48e)@Z5sx1=xU4fDd3w7J07~ z1~{#_*QeUN2D%5O_rU8M%Nq4zw^=S@5E&t*j&#>hS*=lYdZ@qD|4H+WbWb#$=rvZ0??INBt{Vm2*ZzPzKF&`%PXW|C~ zOkh2{u*f?W`nvE}_BS48#Np1T8ziuPQ1s&*5o^cpw2O4--U`p0Dt-RPJdW*&52@n7 zy9IPjVG0le;G^`43gg>}8z%u5bLAC;mN!OU-!vRVIwNc+z}l#G(?JOA=G6ex>+ zctJzZ4KrSJg3qcg>mo>ow80kLKisR-;c&Qk0QnKwWKi;R?qxPTX8 z5m$H*sF~Y^nVUL+dDRf=Y!DfmF)ItYWvNfv)m5JgKXojPJ%3q}WJ**AF8g;?e7G$k~c%| zXS+eDM+B0cMYufMxdc3V!cDiugoU5g*@zfztwaHC9VdDX9#yyL$_0|J;;Wr9nZ}z? zQ&;B87%}sT?{WCQv!wzHbC7A?m(445KUq`_yh!50rb;`#b~rdUy?~IfI`gBIQIl71{wxPyuoNe4 zKI)+#)jq`8Uu!)5Mw)4UKG(V)Vz){Fi_JxmyyDL7vxg%ROrYZCTkr2ghTh*EaH{u` z8QaWnEUhAgWAkRB7N7!CIeBeQmGz)snS5cc42;brwaHM^AeUP4!e2b*jFyHFn^NSO zH;vRVU5f9z_NP!+Ue9M~Wql$S`^+;kUGS&p_a%}m*a#&hC2Wev$+25+bxb#$o2+Y1 zmsW;K1Y!HDjguZg&Pdb2p;s~Q@zUVab##+vq=*>-s{9Hz1WviHe`gvS!vQoU4cJA^ zFK#3zcv~ znkCeh(wXVhMRAhWLMW{1rPOPlAHPp26oDQ%Ju{AfhwO_*Oq*?8l^aK$NFhvPBX|{k zjzo;fdo3x0=0&ar)+HGIafYZu7)sV9@>gXL8VO_&t@pRcf{j=se{q zFz~d{m#UKfcijs?yx+_KdG2%vKKD#mhd3Qnl}vJ2iwQn=hAWaaTqDi9wz_ z5!jUu;ZdfcO2~!D$)c{tZ_In#ipST5H{nO4rWejgT`Axy$s`nTdn8bT z2IS2BYO;H87|i5&Oy`Vu!IsGd5Z_F?Cs)e(UccV^E~FhsnsrPyoZ?hu`V)|ae&tMp zd=JH_pNJr%AV=-0C=2@%&`i?AQXk++4~fSWG`*n)ukAUL-Gnms!_ozs5GzNA*4f>xSaz( zUyu9vkTb+2>0@&7DT3p6Iul#Ht_~d6ftWMiy1JcGRW;z~VqJo=9Wm{50mp^dlGWR6 z`!9Ru6oS!*^(&+`Ho3pDnO51RHhM1)=pN%NASOv)9?f5Z+sp=p000dXNklh=)-RFPK>C?CGNMBzcK+tL2+| z1ya(^8J$)*>@*yI8pd&PyaXD8<0Wwt(-1F)@e*i0LgMY1wj|=lNts!kky)ITS)B1Y zCN%gl^4$(neg`Rc4yzx!k^Rq{#Brt}egfmh@%<#?B`|)n(3iI9h?~SQZM^v08CGxT zAmz>FoZG><*u19Y4{V6W9L=Iu{aW%bA)s8)EhyHB&%#O0!sap{E-Eg@iz8yNYA}vR zgoBC$VHUMuZGaP>ftQ$xaeT;SnhFOycI*%gI9>vYO~d%paJ&F<3s!HV48h0{8VqA| z7tkP0m`h_s!5Hu?ZhSh%OM*WQRc&7W6-K=_YZ3r}7{rZ%5m3b%LBoLkeedw6-<}6v z3~^mh5F);@wSxnD&Z0KNbz?+P2v$)8;>IV@WrJccMo?AOJlw?#eIF17!#I9BZfqK^ zN#e$5;`-BZ{3Ky+h<#7L%i4{9Ko}~5=t%%=%M#cgYcFapOVvRT4>1~mq(;>B;k5r-&9qv0^&@Of0F;V>tPl448B z@9J7M=BRwu3<++%2WlJIeJcC+1qXBnv9x zrujQHYayAi{Mpt{G*T>rj1bQ$#OEN7F)m^pe){z9FnI^#S>FEL z<4tQ}Ywun)MzIQlpjPR9?16GSrHrLAzCN~Vw<1C@MMABiciZ}=Wv_W_M>!j+3^}!w zUx|T%4%|6uifcqYD@n+6PqX4yejO$^5_g+6p=knEnL4ybzGrc&tIBcQ*}K+5L7I9am0q81qv+6lAG^j@b#B@ z@3oidy!9?{eF#PuE5>yYVjvOX8LZY`6}CDC29DF!wTz){ZG{_&S+sxuB;2L&QdOk8 ztDv9slk?Hcc>vmXW*b^RH1L4l$2W>*K1MVGCx$BIGXVgKrSl7S6N|$;ho2|PUc~WY z<+|2JXq1I8B21s7ciT6w_`>FDqrd;C0DQcy4H7d82g=a4wgMq{>6jzEy^ZwtQKE>? zVyJjsYO59+Cdf9(<9KlhvVg@;c%T6$J_GUFnEUzFI5EQqzj+zFQD?G|U~PnWKBjFl zi?G(fjGwG1D!z!!1pxkQ)${!N;6dIvc8oWV9pkk_hj{bu7mH=ikCuTBRf}dvCO+a8gJUWpedYqG zj87`#BO=_o>P{9fUCN@HZsL#cSc!;`8u2-o@yC#$O@E`!$fB1Xa|Lz_Day>n;K}e_5EZdzPQ+GTxB%t?+&9ZRTPW_7~W+SeL zMzHwiI}tyQaf+#>wO9=>PK-s%{sbo$M=V&I;}=h#;r|A=O}PxHg#P}cvU26}F*YQ| z@aAuS%O7ssh!_LLkYB%^|9;~QL@pg_qYMbfApjtjFo@$JHo{sku8&$pRf(c}u@er~ zg3~q~TnA%8Lj`kXUIVuhmVf0d0Q~0gVff+~0Wfd9#m!&-@}$}umw@}W#QAyO3BJC4 zF^;vUF@?>TFvNJV0x<}VZ_pq>gDmQ}?C*P@d;Tgx@AoFvua?Ij-G2KOX=mIQOgthrsJYHwL0kolOMqHs&EGEIrRP4vilR0w zyxS3js0BZUW;56@U)aHN4F{hax@f4?{~I{&1P7=c@YPm z8N>#8)CP!zsOO{EG@yu^KsC?5|6q`>Zt5f$zQ7N^`^c1?fJ+!}6208I6WXhb@*_kR z)_(gl9Qe^GP=P3qgkd2?jU_-s4*d8ef4*%AHk&SNj$cP;#tWJ$J0UGS^~4s@U3OD^uZ zeL_O##)X-QJRf!+Vb!X2O?Rr^U|;>$6JxITY#;l4{m!x1x7@$5X8V(o|KNiU^1zp# zY*g(MT%7;M)fkU}YTR=F!poAsXZ!dv8kMalzyALN ziumm8V9c|U;^(vpbJ_%3^q3ji>N0bk`k8s037e2+v1oc|JJXBkMy?a*@>vv8}Ml+rQ<1EBZ zq&=dFNHdL5j~LED5c%b27MK$kvK7}Kq`k6-Tq%^4P(8>!+nXPJE1;nVM8){;Na1(E z-W7b;K<#SAH|5p7Ja2T}@9Yc|l3WE%z@h zPxh7fn?YRyj(z?g1>o&e!3*9_dAyzS=ro8?rOt0tkNyZJuU zQrwt!iYaSH_h`B22bz=7^vk&4CoU(RSJu7S6ZGZa`r5Xdf@o<1u7u^bvh_m?hoFw` zJ~^{@%Oy$d;+5m)weRID%tAkX9+D&K=ma0e!r9t zfP6Uiextgrh?XaygjyE;e!uY1E0-#Ms#rfv5dunqA)IxTjS~z8u51)P= jea+>6`u~7yEdT!j;~5r=ot`^800000NkvXXu0mjf!mPx? literal 3100 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 qTet3H>(-qs)_C~vboj&j0sjX;w + + ByondTools + + + + + + org.python.pydev.PyDevBuilder + + + + + + org.python.pydev.pythonNature + + diff --git a/tools/BYONDTools/LICENSE.md b/tools/BYONDTools/LICENSE.md new file mode 100644 index 00000000000..05c03da6eb1 --- /dev/null +++ b/tools/BYONDTools/LICENSE.md @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright (c) 2013 Rob "N3X15" Nelson + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/tools/BYONDTools/README.md b/tools/BYONDTools/README.md new file mode 100644 index 00000000000..8875a771921 --- /dev/null +++ b/tools/BYONDTools/README.md @@ -0,0 +1,30 @@ +OpenByond +========= + +A set of tools for BYOND-based games. + +Overview +-------- + +This is a toolkit for developers of BYOND-based games intended to do common, complex +tasks that the engine itself does not currently possess. It also exposes common +interfaces for developers wishing to obtain information from the BYOND object tree, +maps, and DMIs. + +Requirements +------------ + +* Python 2.7+ +* Python Imaging Library (PIL) +* numpy + +Use +--- + +Each script has documentation in its code at the top of each file. + +Support +------- + +No commercial or official support is provided, but you are free to +submit bug reports or harass N3X15 in irc.rizon.net #vgstation. diff --git a/tools/BYONDTools/byond/DMI/State.py b/tools/BYONDTools/byond/DMI/State.py new file mode 100644 index 00000000000..b14388626ed --- /dev/null +++ b/tools/BYONDTools/byond/DMI/State.py @@ -0,0 +1,142 @@ +from byond import directions +from PIL import Image +import logging + +class State: + # So we don't overwrite the static state. + MovementTag = 'M' + def __init__(self, nm): + self.name = nm + self.hotspot = '' + self.frames = 0 + self.dirs = 1 + self.movement = 0 + self.loop = 0 + self.rewind = 0 + self.delay = [] + self.icons = [] + self.positions = [] + + @staticmethod + def MakeKey(name,movement=False): + key = name + tags = '' + if movement: + tags += State.MovementTag + if tags != '': + key += '\t' + tags + return key + + def genManifest(self): + ''' +state = "void" + dirs = 4 + frames = 4 + delay = 2,2,2,2 + ''' + o = '\r\nstate = "{0}"'.format(self.name) + o += self.genManifestLine('hotspot', self.hotspot, '') + o += self.genManifestLine('frames', self.frames, -1) + o += self.genManifestLine('dirs', self.dirs, -1) + o += self.genManifestLine('movement', self.movement, 0) + o += self.genManifestLine('loop', self.loop, 0) + o += self.genManifestLine('rewind', self.rewind, 0) + o += self.genManifestLine('delay', self.delay, []) + + return o + + # Mostly for movement states. + def displayName(self): + tags=[] + if self.movement: + tags += self.MovementTag + if len(tags)>0: + return '{} ({})'.format(self.name,', '.join(tags)) + return self.name + + def genDMIH(self): + o = '\r\nstate "%s" {' % self.name + o += self.genDMIHLine('hotspot', self.hotspot, '') + o += self.genDMIHLine('frames', self.frames, -1) + tdirs = 'ONE' + if self.dirs == 4: + tdirs = 'CARDINAL' + elif self.dirs == 8: + tdirs = 'ALL' + o += self.genDMIHLine('dirs', tdirs, '') + o += self.genDMIHLine('movement', self.movement, 0) + o += self.genDMIHLine('loop', self.loop, 0) + o += self.genDMIHLine('rewind', self.rewind, 0) + o += self.genDMIHLine('delay', self.delay, []) + + o += '\n\timport pngs {' + for vdir in range(self.dirs): + _dir = directions.IMAGE_INDICES[vdir] + o += '\n\t\tdirection "%s" {' % directions.getNameFromDir(_dir) + for f in range(self.frames): + o += '\n\t\t\t"%s"' % self.getFrame(_dir, f) + o += '\n\t\t}' + o += '\n\t}' + o += "\n}" + return o + + def key(self): + return State.MakeKey(self.name, movement=self.movement==1) + + def genDMIHLine(self, name, value, default): + if value != default: + if type(value) is list: + value = ','.join(value) + return '\n\t{0} = {1}'.format(name, value) + return '' + + def genManifestLine(self, name, value, default): + if value != default: + if type(value) is list: + value = ','.join(value) + return '\n\t{0} = {1}'.format(name, value) + return '' + + def ToString(self): + o = '%s: %d frames, ' % (self.name, self.frames) + o += '%d directions' % self.dirs + # o += ' icons: ' + repr(self.icons) + return o + + def numIcons(self): + return self.frames * self.dirs + + def getFrameIndex(self, direction, frame): + _dir = 0 + if self.dirs == 4 or self.dirs == 8: + _dir = directions.IMAGE_INDICES.index(direction) + if self.dirs == 4 and _dir > 3: + _dir = 0 + + frame = _dir + (frame * self.dirs) + if frame > len(self.icons): + logging.warn('Only {} icons in state, args {{dir:{}, frame:{}}}: {}'.format(len(self.icons), direction, frame, self.ToString())) + return frame + + def getFrame(self, direction, frame): + return self.icons[self.getFrameIndex(direction, frame)] + + def setFrame(self, direction, frame, img): + fi = self.getFrameIndex(direction, frame) + if len(self.icons) < fi: + shouldBeSize = 1 + if fi > 7: + logging.error('Unable to set frame: State uninitialized with that many frames.') + return + elif fi > 3: + shouldBeSize = 8 + elif fi > 0: + shouldBeSize = 4 + while len(self.icons) < shouldBeSize: + self.icons.append(Image.new('RGBA', (32, 32))) + logging.warn('{0} now has {1} frames.'.format(self.name, len(self.icons))) + self.icons[fi] = img + + def postProcess(self): + # So old I forgot what everything did. + return diff --git a/tools/BYONDTools/byond/DMI/__init__.py b/tools/BYONDTools/byond/DMI/__init__.py new file mode 100644 index 00000000000..2fd68007e1d --- /dev/null +++ b/tools/BYONDTools/byond/DMI/__init__.py @@ -0,0 +1,379 @@ + +import sys, os, glob, string, traceback, fnmatch, math, shutil, collections + +from PIL import Image, PngImagePlugin +from .State import State +from byond.DMIH import * +import logging + +class DMILoadFlags: + NoImages = 1 + NoPostProcessing = 2 + + +class DMI: + MovementTag = '\t' + def __init__(self, filename): + self.filename = filename + self.version = '' + self.states = collections.OrderedDict() # {} + self.icon_width = 32 + self.icon_height = 32 + self.pixels = None + self.size = () + self.statelist = 'LOLNONE' + self.max_x = -1 + self.max_y = -1 + self.img = None + + def make(self, makefile): + print('>>> Compiling %s -> %s' % (makefile, self.filename)) + h = DMIH() + h.parse(makefile) + for node in h.tokens: + if type(node) is Variable: + if node.name == 'height': + self.icon_height = node.value + elif node.name == 'weight': + self.icon_width = node.value + elif type(node) is directives.State: + self.states[node.state.key()] = node.state + elif type(node) is directives.Import: + if node.ftype == 'dmi': + dmi = DMI(node.filedef) + dmi.extractTo("_tmp/" + os.path.basename(node.filedef)) + for name in dmi.states: + self.states[name] = dmi.states[name] + + def save(self, to, **kwargs): + if len(self.states) == 0: + return # Nope. + # Now build the manifest + manifest = '#BEGIN DMI' + manifest += '\nversion = 4.0' + manifest += '\n\twidth = {0}'.format(self.icon_width) + manifest += '\n\theight = {0}'.format(self.icon_height) + + frames = [] + fdata = [] + + # Sort by name because I'm autistic like that. + ordered = self.states + if kwargs.get('sort', True): + ordered = sorted(self.states.keys()) + + for name in ordered: + if len(self.states[name].icons) > 0: + manifest += self.states[name].genManifest() + numIcons = self.states[name].numIcons() + lenIcons = len(self.states[name].icons) + if numIcons != lenIcons: + logging.warn('numIcons={0}, len(icons)={1} in state {2}!'.format(numIcons, lenIcons, name)) + # frames += self.states[name].icons + # frames.extend(self.states[name].icons) + for i in range(len(self.states[name].icons)): + fdata += ['{}[{}]'.format(self.states[name].name, i)] + frames += [self.states[name].icons[i]] + else: + logging.warn('State {0} has 0 icons.'.format(name)) + manifest += '\n#END DMI' + + # print(manifest) + + # Next bit borrowed from DMIDE. + icons_per_row = math.ceil(math.sqrt(len(frames))) + rows = icons_per_row + + if len(frames) > icons_per_row * rows: + rows += 1 + + sheet = Image.new('RGBA', (int((icons_per_row + 1) * self.icon_width), int(rows * self.icon_height))) + + x = 0 + y = 0 + # for frame in frames: + # print('per_row={0}, rows={1}, size={2}'.format(icons_per_row,rows,sheet.size)) + for f in range(len(frames)): + frame = frames[f] + icon = frame + if isinstance(frame, str): + icon = Image.open(frame, 'r') + box = (x * self.icon_width, y * self.icon_height) + # print('{0} -> ({1},{2}) {3} {4}'.format(f,x,y,box,fdata[f])) + sheet.paste(icon, box, icon) + x += 1 + if x > icons_per_row: + y += 1 + x = 0 + + # More borrowed from DMIDE: + # undocumented class + meta = PngImagePlugin.PngInfo() + + # copy metadata into new object + reserved = ('interlace', 'gamma', 'dpi', 'transparency', 'aspect') + for k, v in sheet.info.items(): + if k in reserved: continue + meta.add_text(k, v, 1) + + # Only need one - Rob + meta.add_text(b'Description', manifest.encode('ascii'), 1) + + # and save + sheet.save(to, 'PNG', pnginfo=meta) + # with open(to+'.txt','w') as f: + # f.write(manifest) + # logging.info('>>> {0} states saved to {1}'.format(len(frames), to)) + + def getDMIH(self): + o = '# DMI Header 1.0 - Generated by DMI.py' + o += self.genDMIHLine('width', self.icon_width, -1) + o += self.genDMIHLine('height', self.icon_height, -1) + + for s in sorted(self.states): + o += self.states[s].genDMIH() + + return o + + def genDMIHLine(self, name, value, default): + if value != default: + if type(value) is list: + value = ','.join(value) + return '\n{0} = {1}'.format(name, value) + return '' + + def extractTo(self, dest, suppress_post_process=False): + flags = 0 + if(suppress_post_process): + flags |= DMILoadFlags.NoPostProcessing + # print('>>> Loading %s...' % self.filename) + self.loadAll(flags) + # print('>>> Extracting %s...' % self.filename) + self.extractAllStates(dest, flags) + + def getFrame(self, state, direction, frame, movement=False): + state = State.MakeKey(state,movement=movement) + if state not in self.states: + return None + return self.states[state].getFrame(direction, frame) + + def setFrame(self, state, direction, frame, img, movement=False): + state = State.MakeKey(state,movement=movement) + if state not in self.states: + self.states[state] = State(state) + return self.states[state].setFrame(direction, frame, img) + + def getHeader(self): + img = Image.open(self.filename) + if(b'Description' not in img.info): + raise Exception("DMI Description is not in the information headers!") + return img.info[b'Description'].decode('ascii') + + def setHeader(self, newHeader, dest): + img = Image.open(self.filename) + + # More borrowed from DMIDE: + # undocumented class + meta = PngImagePlugin.PngInfo() + + # copy metadata into new object + reserved = ('interlace', 'gamma', 'dpi', 'transparency', 'aspect', 'icc_profile') + for k, v in img.info.items(): + if k in reserved: continue + # print(k, v) + meta.add_text(k, v, 1) + + # Only need one - Rob + meta.add_text(b'Description', newHeader.encode('ascii'), 1) + + # and save + img.save(dest + '.tmp', 'PNG', pnginfo=meta) + shutil.move(dest + '.tmp', dest) + + def loadMetadata(self, flags=0): + self.load(flags | DMILoadFlags.NoImages) + + def loadAll(self, flags=0): + self.load(flags) + + def load(self, flags): + self.img = Image.open(self.filename) + + # This is a stupid hack to work around BYOND generating indexed PNGs with unspecified transparency. + # Uncorrected, this will result in PIL(low) trying to read the colors as alpha. + if self.img.mode == 'P': + # If there's no transparency, set it to black. + if 'transparency' not in self.img.info: + logging.warn('({0}): Indexed PNG does not specify transparency! Setting black as transparency. self.img.info = {1}'.format(self.filename, repr(self.img.info))) + self.img.info['transparency'] = 0 + + # Always use RGBA, it causes less problems. + self.img = self.img.convert('RGBA') + + self.size = self.img.size + + # Sanity + if(b'Description' not in self.img.info): + raise Exception("DMI Description is not in the information headers!") + + # Load pixels from image + self.pixels = self.img.load() + + # Load DMI header + desc = self.img.info[b'Description'].decode('ascii') + """ +version = 4.0 + width = 32 + height = 32 +state = "fire" + dirs = 4 + frames = 1 +state = "fire2" + dirs = 1 + frames = 1 +state = "void" + dirs = 4 + frames = 4 + delay = 2,2,2,2 +state = "void2" + dirs = 1 + frames = 4 + delay = 2,2,2,2 + """ + state = None + x = 0 + y = 0 + self.statelist = desc + ii = 0 + for line in desc.split("\n"): + line = line.strip() + if line.startswith("#"): + continue + if '=' in line: + (key, value) = line.split(' = ') + key = key.strip() + value = value.strip().replace('"', '') + if key == 'version': + self.version = value + elif key == 'width': + self.icon_width = int(value) + self.max_x = self.img.size[0] / self.icon_width + elif key == 'height': + self.icon_height = int(value) + self.max_y = self.img.size[1] / self.icon_height + # print(('%s: {sz: %s,h: %d, w: %d, m_x: %d, m_y: %d}'%(self.filename,repr(img.size),self.icon_height,self.icon_width,self.max_x,self.max_y))) + elif key == 'state': + if state != None: + # print(" + %s" % (state.ToString())) + if(self.icon_width == 0 or self.icon_height == 0): + if(len(self.states) > 0): + raise SystemError("Width and height for each cell are not available.") + else: + self.icon_width = self.img.size[0] + self.max_x = 1 + self.icon_height = self.img.size[1] + self.max_y = 1 + elif(self.max_x == -1 or self.max_y == -1): + self.max_x = self.img.size[0] / self.icon_width + self.max_y = self.img.size[1] / self.icon_width + for _ in range(state.numIcons()): + state.positions += [(x, y)] + if (flags & DMILoadFlags.NoImages) == 0: + state.icons += [self.loadIconAt(x, y)] + x += 1 + # print('%s[%d:%d] x=%d, max_x=%d' % (self.filename,ii,i,x,self.max_x)) + if(x >= self.max_x): + x = 0 + y += 1 + self.states[state.key()] = state + # if not suppress_post_process: + # self.states[state.name].postProcess() + ii += 1 + state = State(value) + elif key == 'dirs': + state.dirs = int(value) + elif key == 'frames': + state.frames = int(value) + elif key == 'loop': + state.loop = int(value) + elif key == 'rewind': + state.rewind = int(value) + elif key == 'movement': + state.movement = int(value) + elif key == 'delay': + state.delay = value.split(',') + elif key == 'hotspot': + state.hotspot = value + else: + logging.critical('Unknown key ' + key + ' (value=' + value + ')!') + sys.exit() + + self.states[state.name] = state + for _ in range(state.numIcons()): + self.states[state.name].icons += [self.loadIconAt(x, y)] + x += 1 + if(x >= self.max_x): + x = 0 + y += 1 + + def extractAllStates(self, dest, flags=0): + for _, state in self.states.iteritems(): + # state = State() + for i in xrange(len(state.positions)): + x, y = state.positions[i] + self.extractIconAt(state, dest, x, y, i) + + if (flags & DMILoadFlags.NoPostProcessing) == 0: + self.states[state.name].postProcess() + if dest is not None: + outfolder = os.path.join(dest, os.path.basename(self.filename)) + nfn = self.filename.replace('.dmi', '.dmih') + valid_chars = "-_.()[] %s%s" % (string.ascii_letters, string.digits) + nfn = ''.join(c for c in nfn if c in valid_chars) + nfn = os.path.join(outfolder, nfn) + with open(nfn, 'w') as dmih: + dmih.write(self.getDMIH()) + + def loadIconAt(self, sx, sy): + if(self.icon_width == 0 or self.icon_height == 0): + raise SystemError('Image is {}x{}, an invalid size.'.format(self.icon_height, self.icon_width)) + # print(" X (%d,%d)"%(sx*self.icon_width,sy*self.icon_height)) + icon = Image.new(self.img.mode, (self.icon_width, self.icon_height)) + + newpix = icon.load() + for y in range(self.icon_height): + for x in range(self.icon_width): + _x = x + (sx * self.icon_width) + _y = y + (sy * self.icon_height) + try: + pixel = self.pixels[_x, _y] + if pixel[3] == 0: continue + newpix[x, y] = pixel + except IndexError: + print("!!! Received IndexError in %s <%d,%d> = <%d,%d> + (<%d,%d> * <%d,%d>), max=<%d,%d> halting." % (self.filename, _x, _y, x, y, sx, sy, self.icon_width, self.icon_height, self.max_x, self.max_y)) + print('%s: {sz: %s,h: %d, w: %d, m_x: %d, m_y: %d}' % (self.filename, repr(self.img.size), self.icon_height, self.icon_width, self.max_x, self.max_y)) + print('# of cells: %d' % len(self.states)) + print('Image h/w: %s' % repr(self.size)) + print('--STATES:--') + print(self.statelist) + sys.exit(1) + return icon + + def extractIconAt(self, state, dest, sx, sy, i=0): + icon = self.loadIconAt(sx, sy) + outfolder = os.path.join(dest, os.path.basename(self.filename)) + if not os.path.isdir(outfolder): + os.makedirs(outfolder) + nfn = "{}[{}].png".format(state.name, i) + valid_chars = "-_.()[] %s%s" % (string.ascii_letters, string.digits) + nfn = ''.join(c for c in nfn if c in valid_chars) + nfn = os.path.join(outfolder, nfn) + if os.path.isfile(nfn): + os.remove(nfn) + try: + icon.save(nfn) + except SystemError as e: + print("Received SystemError, halting: %s" % traceback.format_exc(e)) + print('{ih=%d,iw=%d,state=%s,dest=%s,sx=%d,sy=%d,i=%d}' % (self.icon_height, self.icon_width, state.ToString(), dest, sx, sy, i)) + sys.exit(1) + return nfn diff --git a/tools/BYONDTools/byond/DMIH/Variable.py b/tools/BYONDTools/byond/DMIH/Variable.py new file mode 100644 index 00000000000..5ccac96ee58 --- /dev/null +++ b/tools/BYONDTools/byond/DMIH/Variable.py @@ -0,0 +1,9 @@ + + +class Variable(object): + name='' + value=None + + def __init__(self,name,value): + self.name=name + self.value=value \ No newline at end of file diff --git a/tools/BYONDTools/byond/DMIH/__init__.py b/tools/BYONDTools/byond/DMIH/__init__.py new file mode 100644 index 00000000000..d70bcdc353b --- /dev/null +++ b/tools/BYONDTools/byond/DMIH/__init__.py @@ -0,0 +1,135 @@ +''' +Created on Feb 23, 2013 + +@author: Rob +''' + +from . import directives, Variable + +valid_symbol_chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_" + +class DMIH(object): + """ +# DMI Header 1.0 +# ------------------------ + +height = 32 +width = 32 + +state "AMAZIN' RAISINS" { + dirtype=CARDINAL + frames=5 + + import pngs { + direction NORTH { + "amazinraisin-N-0.png" + "amazinraisin-N-1.png" + "amazinraisin-N-2.png" + "amazinraisin-N-3.png" + "amazinraisin-N-4.png" + } + direction EAST { + "amazinraisin-E-0.png" + "amazinraisin-E-1.png" + "amazinraisin-E-2.png" + "amazinraisin-E-3.png" + "amazinraisin-E-4.png" + } + direction WEST { + "amazinraisin-W-0.png" + "amazinraisin-W-1.png" + "amazinraisin-W-2.png" + "amazinraisin-W-3.png" + "amazinraisin-W-4.png" + } + direction SOUTH { + "amazinraisin-S-0.png" + "amazinraisin-S-1.png" + "amazinraisin-S-2.png" + "amazinraisin-S-3.png" + "amazinraisin-S-4.png" + } + } +} + +# File State orig State new +import dmi "import/ohgodwhy.dmi" "Oh god why" "metroid5" + + """ + + tokens = [] + + ''' + directive arg1 {block} + ''' + directives = { + 'direction': directives.Direction.Direction, + 'import': directives.Import.Import, + 'state': directives.State.State + } + + def parse(self, file): + with open(file) as f: + self.tokens = self.parseBlockContents(f) + + def readSymbol(self, f): + f.seek(f.tell() - 1) # Back up one char + o = '' + while True: + c = f.read(1) + if c in valid_symbol_chars: + o += c + else: + return o + + def readString(self, f, b): + # f.seek(f.tell()-1) # Back up one char + o = '' + while True: + c = f.read(1) + if c == b: + return o + else: + o += c + + def parseBlockContents(self, f): + buf = '' + currentBlock = [] + memory = [] + _in = None + memchanged = False + while True: + b = f.read(1) # .decode('utf-8') + if b in ('"', "'"): + memory += [self.readString(f, b)] + memchanged = True + + if b in valid_symbol_chars: + memory += [self.readSymbol(f)] + f.seek(f.tell() - 1) # Back up one char in case we have to deal with a block. + memchanged = True + + if b == '=': + memory += ['='] + memchanged = True + + if b == '{': + memory += [self.parseBlockContents(f)] + memchanged = True + + if b == '}' or b == '': # End of block or end of file. + return currentBlock + + if memchanged: + token = None + if len(memory) == 3: + if memory[2] == '=': + token = Variable(memory[0], memory[1]) + if len(memory) > 0: + if memory[0] in self.directives: + token = self.directives[memory[0]](memory[0], memory[1:]) + if token: + currentBlock += [token] + memory = [] + memchanged = False + diff --git a/tools/BYONDTools/byond/DMIH/directives/Direction.py b/tools/BYONDTools/byond/DMIH/directives/Direction.py new file mode 100644 index 00000000000..796b254f544 --- /dev/null +++ b/tools/BYONDTools/byond/DMIH/directives/Direction.py @@ -0,0 +1,28 @@ +''' +Created on Feb 23, 2013 + +@author: Rob +''' +from .Directive import Directive +from byond import directions + +class Direction(Directive): + ''' + Tells the compiler which frames will be used for this direction. + ''' + + ''' + Which direction? + ''' + dir=0 + + ''' + List of files. + ''' + frames=[] + def __init__(self,name,frames): + Directive.__init__(self, name, [name,frames]) + _dir = directions.getDirFromName(name) + if _dir: + self.dir=_dir + self.frames=frames \ No newline at end of file diff --git a/tools/BYONDTools/byond/DMIH/directives/Directive.py b/tools/BYONDTools/byond/DMIH/directives/Directive.py new file mode 100644 index 00000000000..ca1db7753e7 --- /dev/null +++ b/tools/BYONDTools/byond/DMIH/directives/Directive.py @@ -0,0 +1,14 @@ +''' +Created on Feb 23, 2013 + +@author: Rob +''' + +class Directive(object): + ''' + Base type for directives. + ''' + name = '' + + def __init__(self,name,args): + self.name=name \ No newline at end of file diff --git a/tools/BYONDTools/byond/DMIH/directives/Import.py b/tools/BYONDTools/byond/DMIH/directives/Import.py new file mode 100644 index 00000000000..1e4e37f74af --- /dev/null +++ b/tools/BYONDTools/byond/DMIH/directives/Import.py @@ -0,0 +1,50 @@ +''' +Created on Feb 23, 2013 + +@author: Rob +''' +from .Directive import Directive + +class Import(Directive): + ''' + Tells the compiler to import a file into the DMI. + ''' + + ''' + pngs or dmi. + ''' + ftype='' + + ''' + The file(s) to import into the DMI. + ''' + filedef=None + + ''' + State(s) to import (DMIs) + ''' + states={} + + def __init__(self,name,params): + Directive.__init__(self,name,params) + self.ftype=params[0] + if self.ftype=='pngs': + self.filedef=params[1] + elif self.ftype=='dmi': + self.filedef=str(params[1]) + if type(params[2]) is list: + for sn in params[2]: + self.addState(sn) + elif type(params[2]) is str: + self.addState(params[2]) + + def addState(self,sn): + oldname=None + newname=None + snp=sn.split('->') + if snp.len == 2: + (oldname, newname)=snp + elif snp.len == 1: + oldname=newname=snp[0] + if oldname and newname: + self.states[oldname]=newname \ No newline at end of file diff --git a/tools/BYONDTools/byond/DMIH/directives/State.py b/tools/BYONDTools/byond/DMIH/directives/State.py new file mode 100644 index 00000000000..134c4786c32 --- /dev/null +++ b/tools/BYONDTools/byond/DMIH/directives/State.py @@ -0,0 +1,51 @@ +''' +Created on Feb 23, 2013 + +@author: Rob +''' +from .Directive import Directive +from .Import import Import +from byond.DMI import State +from .. import Variable + +directly_assignable={ + 'hotspot':tuple, + 'dirs':int, + 'frames':int, + 'movement':int, + 'loop':int, + 'rewind':int, + 'delay':tuple +} + +class State(Directive): + ''' + Tells the compiler to create a state with the specified variables and frames. + ''' + + ''' + The actual state + ''' + state = None + imports = [] + def __init__(self,name,params): + Directive.__init__(self,name,params) + self.state=State() + if params.len != 2: + raise Exception('state directive requires 2 parameters. state "name" { }') + self.state.name=params[0] + for o in params[1]: + if type(o) is Variable and o.name in directly_assignable: + if o.name == 'dirs': + if o.value == 'CARDINAL': + o.value = 4 + elif o.value == 'ALL': + o.value = 8 + else: + o.value = 1 + setattr(self.state,o.name,directly_assignable[o.name](o.value)) + if type(o) is Import: + if o.ftype == 'pngs': + for dirblock in o.filedef: + for i in range(dirblock.frames.len): + self.state.setFrame(dirblock.dir, i, dirblock.frames[i]) \ No newline at end of file diff --git a/tools/BYONDTools/byond/DMIH/directives/__init__.py b/tools/BYONDTools/byond/DMIH/directives/__init__.py new file mode 100644 index 00000000000..b7b57d26429 --- /dev/null +++ b/tools/BYONDTools/byond/DMIH/directives/__init__.py @@ -0,0 +1,4 @@ +from . import Direction, Directive, Import, State +__all__ = [ + Direction, Directive, Import, State +] \ No newline at end of file diff --git a/tools/BYONDTools/byond/__init__.py b/tools/BYONDTools/byond/__init__.py new file mode 100644 index 00000000000..b46c624fe03 --- /dev/null +++ b/tools/BYONDTools/byond/__init__.py @@ -0,0 +1,41 @@ +''' +Created on Sep 21, 2013 + +@author: Rob +''' +import os + +from .map import Map, Tile, MapRenderFlags +from .objtree import ObjectTree + +def GetFilesFromDME(dmefile='baystation12.dme', ext='.dm'): + filesInDME=[] + rootdir = os.path.dirname(dmefile) + with open(dmefile, 'r') as dmeh: + for line in dmeh: + if line.startswith('#include'): + inString = False + # escaped=False + filename = '' + for c in line: + """ + if c == '\\' and not escaped: + escaped = True + continue + if escaped: + if + escaped = False + continue + """ + if c == '"': + inString = not inString + if not inString: + filepath = os.path.join(rootdir, filename) + if filepath.endswith(ext): + filesInDME += [filepath] + filename = '' + continue + else: + if inString: + filename += c + return filesInDME diff --git a/tools/BYONDTools/byond/basetypes.py b/tools/BYONDTools/byond/basetypes.py new file mode 100644 index 00000000000..658a9c4840e --- /dev/null +++ b/tools/BYONDTools/byond/basetypes.py @@ -0,0 +1,454 @@ +''' +Created on Nov 6, 2013 + +@author: Rob +''' +# import logging +AREA_LAYER = 1 +TURF_LAYER = 2 +OBJ_LAYER = 3 +MOB_LAYER = 4 +FLY_LAYER = 5 + +import re +from .utils import eval_expr +REGEX_TABS = re.compile('^(?P\t*)') +class BYONDValue: + """ + Handles numbers and unhandled types like lists. + """ + def __init__(self, string, filename='', line=0, typepath='/', **kwargs): + #: The actual value. + self.value = string + + #: Filename this was found in + self.filename = filename + + #: Line of the originating file. + self.line = line + + #: Typepath of the value. + self.type = typepath + + #: Has this value been inherited? + self.inherited = kwargs.get('inherited', False) + + #: Is this a declaration? (/var) + self.declaration = kwargs.get('declaration', False) + + #: Anything special? (global, const, etc.) + self.special = kwargs.get('special', None) + + #: If a list, what's the size? + self.size = kwargs.get('size', None) + + def copy(self): + '''Make a clone of this without dangling references.''' + return BYONDValue(self.value, self.filename, self.line, self.type, declaration=self.declaration, inherited=self.inherited, special=self.special) + + def __str__(self): + return '{0}'.format(self.value) + + def __repr__(self): + return ''.format(self.value, self.filename, self.line) + + def DumpCode(self, name): + ''' + Try to dump valid BYOND code for this variable. + + .. :param name: The name of this variable. + ''' + decl = [] + if self.declaration: + decl += ['var'] + if self.type != '/' and self.declaration: + decl += self.type.split('/')[1:] + decl += [name] + constructed = '/'.join(decl) + if self.value is not None: + constructed += ' = {0}'.format(str(self)) + return constructed + +class BYONDFileRef(BYONDValue): + """ + Just to format file references differently. + """ + def __init__(self, string, filename='', line=0, **kwargs): + BYONDValue.__init__(self, string, filename, line, '/icon', **kwargs) + + def copy(self): + return BYONDFileRef(self.value, self.filename, self.line, declaration=self.declaration, inherited=self.inherited, special=self.special) + + def __str__(self): + return "'{0}'".format(self.value) + + def __repr__(self): + return ''.format(self.value, self.filename, self.line) + +class BYONDString(BYONDValue): + """ + Correctly formats strings. + """ + def __init__(self, string, filename='', line=0, **kwargs): + BYONDValue.__init__(self, string, filename, line, '/', **kwargs) + + def copy(self): + return BYONDString(self.value, self.filename, self.line, declaration=self.declaration, inherited=self.inherited, special=self.special) + + def __str__(self): + return '"{0}"'.format(self.value) + + def __repr__(self): + return ''.format(self.value, self.filename, self.line) + +class PropertyFlags: + '''Collection of flags that affect :func:`Atom.setProperty` behavior.''' + + #: Property being set should be saved to the map + MAP_SPECIFIED = 1 + + #: Property being set should be handled as a string + STRING = 2 + + #: Property being set should be handled as a file reference + FILEREF = 4 + + #: Property being set should be handled as a value + VALUE = 8 + +class Atom: + ''' + An atom is, in simple terms, what BYOND considers a class. + + :param string path: + The absolute path of this atom. ex: */obj/item/weapon/gun* + :param string filename: + The file this atom originated from. + :param int line: + The line in the aforementioned file. + ''' + + #: Prints all inherited properties, not just the ones that are mapSpecified. + FLAG_INHERITED_PROPERTIES = 1 + + #: writeMap2 prints old_ids instead of the actual IID. + FLAG_USE_OLD_ID = 2 + + def __init__(self, path, filename='', line=0, **kwargs): + global TURF_LAYER, AREA_LAYER, OBJ_LAYER, MOB_LAYER + + #: Absolute path of this atom + self.path = path + + #: Vars of this atom, including inherited vars. + self.properties = {} + + #: List of var names that were specified by the map, if atom was loaded from a :class:`byond.map.Map`. + self.mapSpecified = [] + + #: Child atoms and procs. + self.children = {} + + #: The parent of this atom. + self.parent = None + + #: The file this atom originated from. + self.filename = filename + + #: Line from the originating file. + self.line = line + + #: Instance ID (maps only). Used internally, do NOT change. + self.id = None + + #: Instance ID that was read from the map. + self.old_id = None + + #: Used internally. + self.ob_inherited=False + + #: Loaded from map, but missing in the code. (Maps only) + self.missing=kwargs.get('missing',False) + + #if not self.missing and path == '/area/engine/engineering': + # raise Exception('God damnit') + def copy(self): + ''' + Make a copy of this atom, without dangling references. + + :returns byond.basetypes.Atom + ''' + new_node = Atom(self.path,self.filename,self.line,missing=self.missing) + new_node.properties = self.properties.copy() + new_node.mapSpecified = self.mapSpecified + new_node.id = self.id + new_node.old_id = self.old_id + # new_node.parent = self.parent + return new_node + + def getProperty(self, index, default=None): + ''' + Get the value of the specified property. + + :param string index: + The name of the var we want. + :param mixed default: + Default value, if the var cannot be found. + :returns: + The desired value. + ''' + prop = self.properties.get(index, None) + if prop == None: + return default + elif prop == 'null': + return None + return prop.value + + def setProperty(self, index, value, flags=0): + ''' + Set the value of a property. + + In the event the property cannot be found, a new property is added. + + This function will attempt to convert python types to BYOND types. + Hints can be provided in the form of PropertyFlags given to *flags*. + + :param string index: + The name of the var desired. + :param mixed value: + The new value. + :param int flags: + Changes value assignment behavior. + + +------------------------------------+------------------------------------------------+ + | Flag | Effect | + +====================================+================================================+ + | :attr:`PropertyFlag.MAP_SPECIFIED` | Adds the property to *mapSpecified*, if needed.| + +------------------------------------+------------------------------------------------+ + | :attr:`PropertyFlag.STRING` | Forces conversion of value to a BYONDString. | + +------------------------------------+------------------------------------------------+ + | :attr:`PropertyFlag.FILEREF` | Forces conversion of value to a BYONDFileRef. | + +------------------------------------+------------------------------------------------+ + | :attr:`PropertyFlag.VALUE` | Forces conversion of value to a BYONDValue. | + +------------------------------------+------------------------------------------------+ + + :returns: + The desired value. + ''' + if flags & PropertyFlags.MAP_SPECIFIED: + if index not in self.mapSpecified: + self.mapSpecified += [index] + if flags & PropertyFlags.VALUE: + self.properties[index] = BYONDValue(value) + elif isinstance(value, str) or flags & PropertyFlags.STRING: + if flags & PropertyFlags.STRING: + value = str(value) + self.properties[index] = BYONDString(value) + elif flags & PropertyFlags.FILEREF: + if flags & PropertyFlags.FILEREF: + value = str(value) + self.properties[index] = BYONDFileRef(value) + else: + self.properties[index] = BYONDValue(value) + + def InheritProperties(self): + if self.ob_inherited: return + #debugInheritance=self.path in ('/area','/obj','/mob','/atom/movable','/atom') + if self.parent: + if not self.parent.ob_inherited: + self.parent.InheritProperties() + for key in sorted(self.parent.properties.keys()): + value = self.parent.properties[key].copy() + if key not in self.properties: + self.properties[key] = value + self.properties[key].inherited = True + #if debugInheritance:print(' {0}[{2}] -> {1}'.format(self.parent.path,self.path,key)) + #assert 'name' in self.properties + self.ob_inherited=True + for k in self.children.iterkeys(): + self.children[k].InheritProperties() + + def __ne__(self, atom): + return not self.__eq__(atom) + + def __eq__(self, atom): + if atom == None: + return False + if self.mapSpecified != atom.mapSpecified: + return False + if self.path != atom.path: + return False + return self.properties == atom.properties + + def handle_math(self,expr): + if isinstance(expr,str): + return eval_expr(expr) + return expr + + def __lt__(self, other): + if 'layer' not in self.properties or 'layer' not in other.properties: + return False + myLayer = 0 + otherLayer = 0 + try: + myLayer = self.handle_math(self.getProperty('layer',myLayer)) + except ValueError: + print('Failed to parse {0} as float.'.format(self.properties['layer'].value)) + pass + try: + otherLayer = self.handle_math(other.getProperty('layer',otherLayer)) + except ValueError: + print('Failed to parse {0} as float.'.format(other.properties['layer'].value)) + pass + return myLayer > otherLayer + + def __gt__(self, other): + if 'layer' not in self.properties or 'layer' not in other.properties: + return False + myLayer = 0 + otherLayer = 0 + try: + myLayer = self.handle_math(self.getProperty('layer',myLayer)) + except ValueError: + print('Failed to parse {0} as float.'.format(self.properties['layer'].value)) + pass + try: + otherLayer = self.handle_math(other.getProperty('layer',otherLayer)) + except ValueError: + print('Failed to parse {0} as float.'.format(other.properties['layer'].value)) + pass + return myLayer < otherLayer + + def MapSerialize(self, flags=0): + atomContents = [] + # print(repr(self.mapSpecified)) + if (flags & Atom.FLAG_INHERITED_PROPERTIES): + for key, val in self.properties.items(): + atomContents += ['{0} = {1}'.format(key, val)] + else: + for i in range(len(self.mapSpecified)): + key = self.mapSpecified[i] + if key in self.properties: + val = self.properties[key] + atomContents += ['{0} = {1}'.format(key, val)] + if len(atomContents) > 0: + return self.path + '{' + '; '.join(atomContents) + '}' + else: + return self.path + + def dumpPropInfo(self, name): + o = '{0}: '.format(name) + if name not in self.properties: + return o + 'None' + return o + repr(self.properties[name]) + + def _DumpCode(self): + divider = '//' + ((len(self.path) + 2) * '/') + '\n' + o = divider + o += '// ' + self.path + '\n' + o += divider + o += self.path + '\n' + # o += '\t//{0} properties total\n'.format(len(self.properties)) + for name in sorted(self.properties.keys()): + prop = self.properties[name] + if prop.inherited: continue + _type = prop.type + if not _type.endswith('/'): + _type += '/' + prefix = '' + if prop.declaration: + prefix = 'var' + if not prop.declaration: # and _type == '/': + _type = '' + o += '\t{prefix}{type}{name}'.format(prefix=prefix, type=_type, name=name) + if prop.value is not None: + o += ' = {value}'.format(value=str(prop)) + o += '\n' + + # o += '\n' + # o += '\t//{0} children total\n'.format(len(self.children)) + procs = '' + children = '' + for ck in sorted(self.children.keys()): + co = '\n' + co += self.children[ck]._DumpCode() + if isinstance(self.children[ck], Proc): + procs += co + else: + children += co + o += procs + children + return o + + def DumpCode(self): + return self._DumpCode() + +class Proc(Atom): + def __init__(self, path, arguments, filename='', line=0): + Atom.__init__(self, path, filename, line) + self.name = self.figureOutName(self.path) + self.arguments = arguments + self.code = [] # (indent, line) + self.definition = False + self.origpath = '' + + def figureOutName(self,path): + name = path.split('(')[0] + return name.split('/')[-1] + + def CountTabs(self, line): + m = REGEX_TABS.match(line) + if m is not None: + return len(m.group('tabs')) + return 0 + + def AddCode(self, indentLevel, line): + self.code += [(indentLevel, line)] + + def AddBlankLine(self): + if len(self.code) > 0 and self.code[-1][1] == '': + return + self.code += [(0, '')] + + def MapSerialize(self, flags=0): + return None + + def InheritProperties(self): + return + def getMinimumIndent(self): + # Find minimum indent level + for i in range(len(self.code)): + indent, _ = self.code[i] + if indent == 0: continue + return indent + return 0 + + def _DumpCode(self): + args = self.path[self.path.index('('):] + true_path = self.path[:self.path.index('(')].split('/') + name = true_path[-1] + true_path = true_path[:-1] + if self.definition: + true_path += ['proc'] + true_path += [name + args] + o = '\n' + '/'.join(true_path) + '\n' + min_indent = self.getMinimumIndent() + # Should be 1, so find the difference. + indent_delta = 1 - min_indent + # o += '\t// true_path = {0}\n'.format(repr(true_path)) + # o += '\t// name = {0}\n'.format(name) + # o += '\t// args = {0}\n'.format(args) + # o += '\t// definition = {0}\n'.format(self.definition) + # o += '\t// path = {0}\n'.format(self.path[:self.path.index('(')]) + # o += '\t// origpath = {0}\n'.format(self.origpath) + # o += '\t// min_indent = {0}\n'.format(min_indent) + # o += '\t// indent_delta = {0}\n'.format(indent_delta) + for i in range(len(self.code)): + indent, code = self.code[i] + indent = max(1, indent + indent_delta) + if code == '' and i == len(self.code) - 1: + continue + if code.strip() == '': + o += '\n' + else: + o += (indent * '\t') + code.strip() + '\n' + return o diff --git a/tools/BYONDTools/byond/directions.py b/tools/BYONDTools/byond/directions.py new file mode 100644 index 00000000000..8102b5fdbb4 --- /dev/null +++ b/tools/BYONDTools/byond/directions.py @@ -0,0 +1,47 @@ +''' +Created on Feb 23, 2013 + +@author: Rob +''' +import sys +# NORTH, SOUTH, EAST, and WEST are just #define statements built in DM. +# They represent 1, 2, 4, and 8 + +NORTH = 1 +SOUTH = 2 +EAST = 4 +WEST = 8 + +IMAGE_INDICES=[ + SOUTH, + NORTH, + EAST, + WEST, + (SOUTH|EAST), + (SOUTH|WEST), + (NORTH|EAST), + (NORTH|WEST) + ] + +def getDirFromName(name): + return getattr(sys.modules[__name__],name,None) + +def getNameFromDir(_dir): + if _dir == NORTH: + return 'NORTH' + elif _dir == SOUTH: + return 'SOUTH' + elif _dir == EAST: + return 'EAST' + elif _dir == WEST: + return 'WEST' + elif _dir == (NORTH|WEST): + return 'NORTHWEST' + elif _dir == (NORTH|EAST): + return 'NORTHEAST' + elif _dir == (SOUTH|EAST): + return 'SOUTHEAST' + elif _dir == (SOUTH|WEST): + return 'SOUTHWEST' + else: + return 'UNKNOWN (%d)' %_dir \ No newline at end of file diff --git a/tools/BYONDTools/byond/map.py b/tools/BYONDTools/byond/map.py new file mode 100644 index 00000000000..6d0ad497947 --- /dev/null +++ b/tools/BYONDTools/byond/map.py @@ -0,0 +1,1079 @@ +import os, itertools, sys +from byond.DMI import DMI +from byond.directions import SOUTH, IMAGE_INDICES +from byond.basetypes import Atom, BYONDString, BYONDValue, BYONDFileRef +# from byond.objtree import ObjectTree +from PIL import Image, ImageChops +import logging + +ID_ENCODING_TABLE = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ' + +# Cache +_icons = {} +_dmis = {} + +def chunker(iterable, chunksize): + """ + Return elements from the iterable in `chunksize`-ed lists. The last returned + chunk may be smaller (if length of collection is not divisible by `chunksize`). + + >>> print list(chunker(xrange(10), 3)) + [[0, 1, 2], [3, 4, 5], [6, 7, 8], [9]] + """ + i = iter(iterable) + while True: + wrapped_chunk = [list(itertools.islice(i, int(chunksize)))] + if not wrapped_chunk[0]: + break + yield wrapped_chunk.pop() + +# From StackOverflow +def trim(im): + bg = Image.new(im.mode, im.size, im.getpixel((0, 0))) + diff = ImageChops.difference(im, bg) + diff = ImageChops.add(diff, diff, 2.0, -100) + bbox = diff.getbbox() + if bbox: + return im.crop(bbox) + +# Bytes +def tint_image(image, tint_color): + return ImageChops.multiply(image, Image.new('RGBA', image.size, tint_color)) + +def BYOND2RGBA(colorstring, alpha=255): + colorstring = colorstring.strip() + if colorstring[0] == '#': colorstring = colorstring[1:] + if len(colorstring) != 6: + raise ValueError("input #%s is not in #RRGGBB format" % colorstring) + r, g, b = colorstring[:2], colorstring[2:4], colorstring[4:] + r, g, b = [int(n, 16) for n in (r, g, b)] + return (r, g, b, alpha) + +class Tile: + FLAG_USE_OLD_ID = 1 + FLAG_INHERITED_PROPERTIES = 2 + + def __init__(self, _map): + self.origID = '' + self.ID = 0 + self.instances = [] + self.frame = None + self.unselected_frame = None + self.areaSelected = True + self.log = logging.getLogger(__name__ + '.Tile') + self.map = _map + + def ID2String(self, pad=0): + o = '' + _id = self.ID + IET_SIZE = len(ID_ENCODING_TABLE) + while(_id >= len(ID_ENCODING_TABLE)): + i = _id % IET_SIZE + o = ID_ENCODING_TABLE[i] + o + _id -= i + _id /= IET_SIZE + o = ID_ENCODING_TABLE[_id] + o + if pad > len(o): + o = o.rjust(pad, ID_ENCODING_TABLE[0]) + return o + + def GetAtoms(self): + atoms = [] + for instance in self.instances: + atom = self.map.getInstance(instance) + if atom is None: continue + atoms += [atom] + return atoms + + def SortAtoms(self): + return sorted(self.GetAtoms(), reverse=True) + + def GetAtom(self, idx): + return self.map.getInstance(self.instances[idx]) + + def GetInstances(self): + return self.instances + + def __str__(self): + return self.MapSerialize(Tile.FLAG_USE_OLD_ID) + + def MapSerialize(self, flags=0, padding=0): + # "aat" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating,/area/security/prison) + atoms = [] + atomFlags = 0 + if flags & Tile.FLAG_INHERITED_PROPERTIES: + atomFlags |= Atom.FLAG_INHERITED_PROPERTIES + for i in xrange(len(self.instances)): + iid = self.instances[i] + # print('{0} = {1}'.format(repr(i), repr(iid))) + atom = self.map.getInstance(iid) + if atom.path != '': + atoms += [atom.MapSerialize(atomFlags)] + if not (flags & Tile.FLAG_USE_OLD_ID): + return '"{ID}" = ({atoms})'.format(ID=self.ID2String(padding), atoms=','.join(atoms)) + else: + return '"{ID}" = ({atoms})'.format(ID=self.origID, atoms=','.join(atoms)) + + def MapSerialize2(self, flags=0, padding=0): + ''' + DMM2 serialization method. + ''' + # "aat" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating,/area/security/prison) + atomFlags = 0 + if flags & Tile.FLAG_INHERITED_PROPERTIES: + atomFlags |= Atom.FLAG_INHERITED_PROPERTIES + instancelist = ','.join([str(i) for i in self.GetInstances()]) + if not (flags & Tile.FLAG_USE_OLD_ID): + return '"{ID}" = ({atoms})'.format(ID=self.ID2String(padding), atoms=instancelist) + else: + return '"{ID}" = ({atoms})'.format(ID=self.origID, atoms=instancelist) + + def __eq__(self, other): + if len(self.instances) != len(other.instances): + return False + else: + return all(self.instances[i] == other.instances[i] for i in xrange(len(self.instances))) + + def RenderToMapTile(self, passnum, basedir, renderflags, **kwargs): + img = Image.new('RGBA', (96, 96)) + self.offset = (32, 32) + foundAPixelOffset = False + render_types = kwargs.get('render_types', ()) + skip_alpha = kwargs.get('skip_alpha', False) + # for atom in sorted(self.GetAtoms(), reverse=True): + for atom in self.SortAtoms(): + if len(render_types) > 0: + found = False + for path in render_types: + if atom.path.startswith(path): + found = True + if not found: + continue + + aid = atom.id + # Ignore /areas. They look like ass. + if atom.path.startswith('/area'): + if not (renderflags & MapRenderFlags.RENDER_AREAS): + continue + + # We're going to turn space black for smaller images. + if atom.path == '/turf/space': + if not (renderflags & MapRenderFlags.RENDER_STARS): + continue + + if 'icon' not in atom.properties: + logging.critical('UNKNOWN ICON IN {0} (atom #{1})'.format(self.origID, aid)) + logging.info(atom.MapSerialize()) + logging.info(atom.MapSerialize(Atom.FLAG_INHERITED_PROPERTIES)) + continue + + dmi_file = atom.properties['icon'].value + + if 'icon_state' not in atom.properties: + # Grab default icon_state ('') if we can't find the one defined. + atom.properties['icon_state'] = BYONDString("") + + state = atom.properties['icon_state'].value + + direction = SOUTH + if 'dir' in atom.properties: + try: + direction = int(atom.properties['dir'].value) + except ValueError: + logging.critical('FAILED TO READ dir = ' + repr(atom.properties['dir'].value)) + continue + + icon_key = '{0}|{1}|{2}'.format(dmi_file, state, direction) + frame = None + pixel_x = 0 + pixel_y = 0 + if icon_key in _icons: + frame, pixel_x, pixel_y = _icons[icon_key] + else: + dmi_path = os.path.join(basedir, dmi_file) + dmi = None + if dmi_path in _dmis: + dmi = _dmis[dmi_path] + else: + try: + dmi = DMI(dmi_path) + dmi.loadAll() + _dmis[dmi_path] = dmi + except Exception as e: + print(str(e)) + for prop in ['icon', 'icon_state', 'dir']: + print('\t{0}'.format(atom.dumpPropInfo(prop))) + pass + if dmi.img is None: + logging.warning('Unable to open {0}!'.format(dmi_path)) + continue + + if dmi.img.mode not in ('RGBA', 'P'): + logging.warn('{} is mode {}!'.format(dmi_file, dmi.img.mode)) + + if direction not in IMAGE_INDICES: + logging.warn('Unrecognized direction {} on atom {} in tile {}!'.format(direction, atom.MapSerialize(), self.origID)) + direction = SOUTH # DreamMaker property editor shows dir = 2. WTF? + + frame = dmi.getFrame(state, direction, 0) + if frame == None: + # Get the error/default state. + frame = dmi.getFrame("", direction, 0) + + if frame == None: + continue + + if frame.mode != 'RGBA': + frame = frame.convert("RGBA") + + pixel_x = 0 + if 'pixel_x' in atom.properties: + pixel_x = int(atom.properties['pixel_x'].value) + + pixel_y = 0 + if 'pixel_y' in atom.properties: + pixel_y = int(atom.properties['pixel_y'].value) + + _icons[icon_key] = (frame, pixel_x, pixel_y) + + # Handle BYOND alpha and coloring + c_frame = frame + alpha = int(atom.getProperty('alpha', 255)) + if skip_alpha: + alpha = 255 + color = atom.getProperty('color', '#FFFFFF') + if alpha != 255 or color != '#FFFFFF': + c_frame = tint_image(frame, BYOND2RGBA(color, alpha)) + img.paste(c_frame, (32 + pixel_x, 32 - pixel_y), c_frame) # Add to the top of the stack. + if pixel_x != 0 or pixel_y != 0: + if passnum == 0: return # Wait for next pass + foundAPixelOffset = True + + if passnum == 1 and not foundAPixelOffset: + return None + if not self.areaSelected: + # Fade out unselected tiles. + bands = list(img.split()) + # Excluding alpha band + for i in range(3): + bands[i] = bands[i].point(lambda x: x * 0.4) + img = Image.merge(img.mode, bands) + + return img + +class MapLayer: + def __init__(self, _map, height=255, width=255): + self.map = _map + self.min = (1, 1) + self.max = (height, width) + self.height = height + self.width = width + self.tiles = [[0 for _ in xrange(self.width)] for _ in xrange(self.height)] + + def SetTileAt(self, x, y, tile): + grow = False + if y >= self.height: + self.height = y + 1 + grow = True + if x >= self.width: + self.width = x + 1 + grow = True + if grow: + self.grow() + try: + self.tiles[y][x] = tile.ID + except IndexError: + logging.critical('Failed to set self.tiles[{}][{}]: IndexError'.format(y, x)) + logging.critical('width: {}'.format(self.width)) + logging.critical('height: {}'.format(self.height)) + logging.critical('real width: {}'.format(len(self.tiles))) + logging.critical('real height: {}'.format(len(self.tiles[0]))) + sys.exit(1) + + def grow(self): + gamt = self.height - len(self.tiles) + if gamt > 0: + logging.debug('y += ' + str(gamt)) + self.tiles += [[0] for _ in xrange(gamt)] + gamt = 0 + for y in range(len(self.tiles)): + gamt = self.width - len(self.tiles[y]) + if gamt > 0: + self.tiles[y] += [0 for _ in xrange(gamt)] + logging.debug('x[{}] += {}'.format(y, gamt)) + + def GetTileAt(self, x, y): + # print(repr(self.tiles)) + return self.map.tileTypes[self.tiles[y][x]] + +class MapRenderFlags: + RENDER_STARS = 1 + RENDER_AREAS = 2 + +class Map: + WRITE_OLD_IDS = 1 + + READ_NO_BASE_COMP = 1 + def __init__(self, tree=None, **kwargs): + self.filename = 'Unknown' + self.readFlags = 0 + self.tileTypes = [] + self.instances = [] + self.zLevels = {} + self.oldID2NewID = {} + self.DMIs = {} + self.width = 0 + self.height = 0 + self.idlen = 0 + self.tree = tree + self.generatedTexAtlas = False + self.selectedAreas = () + self.whitelistTypes = None + self.forgiving_atom_lookups = kwargs.get('forgiving_atom_lookups', False) + self.missing_atoms = set() + + self.log = logging.getLogger(__name__ + '.Map') + + self.duplicates = 0 + self.tileChunk2ID = {} + + self.atomBorders = { + '{':'}', + '"':'"', + '(':')' + } + self.atomCache = {} + nit = self.atomBorders.copy() + for start, stop in self.atomBorders.items(): + if start != stop: + nit[stop] = None + self.atomBorders = nit + + def readMap(self, filename, flags=0): + self.readFlags = flags + if not os.path.isfile(filename): + logging.warn('File ' + filename + " does not exist.") + self.filename = filename + with open(filename, 'r') as f: + print('--- Reading tile types from {0}...'.format(self.filename)) + self.consumeTiles(f) + print('--- Reading tile positions...') + self.consumeTileMap(f) + + + + def writeMap(self, filename, flags=0): + self.filename = filename + tileFlags = 0 + if flags & Map.WRITE_OLD_IDS: + tileFlags |= Tile.FLAG_USE_OLD_ID + padding = len(self.tileTypes[-1].ID2String()) + with open(filename, 'w') as f: + for tile in self.tileTypes: + f.write('{0}\n'.format(tile.MapSerialize(tileFlags, padding))) + for z in self.zLevels.keys(): + f.write('\n(1,1,{0}) = {{"\n'.format(z)) + zlevel = self.zLevels[z] + for y in xrange(zlevel.height): + for x in xrange(zlevel.width): + tile = zlevel.GetTileAt(x, y) + if flags & Map.WRITE_OLD_IDS: + f.write(tile.origID) + else: + f.write(tile.ID2String(padding)) + f.write("\n") + f.write('"}\n') + + def writeMap2(self, filename, flags=0): + self.filename = filename + tileFlags = 0 + atomFlags = 0 + if flags & Map.WRITE_OLD_IDS: + tileFlags |= Tile.FLAG_USE_OLD_ID + atomFlags |= Atom.FLAG_USE_OLD_ID + padding = len(self.tileTypes[-1].ID2String()) + with open(filename, 'w') as f: + f.write('// Atom Instances\n') + for atom in self.instances: + f.write('{0} = {1}\n'.format(atom.id, atom.MapSerialize(atomFlags))) + f.write('// Tiles\n') + for tile in self.tileTypes: + f.write('{0}\n'.format(tile.MapSerialize2(tileFlags, padding))) + f.write('// Layout\n') + for z in self.zLevels.keys(): + f.write('\n(1,1,{0}) = {{"\n'.format(z)) + zlevel = self.zLevels[z] + for y in xrange(zlevel.height): + for x in xrange(zlevel.width): + tile = zlevel.GetTileAt(x, y) + if flags & Map.WRITE_OLD_IDS: + f.write(tile.origID) + else: + f.write(tile.ID2String(padding)) + f.write("\n") + f.write('"}\n') + + + def GetTileAt(self, x, y, z): + if z < len(self.zLevels): + return self.zLevels[z].GetTileAt(x, y) + + def consumeTileMap(self, f): + zLevel = [] + y = 0 + z = 0 + inZLevel = False + width = 0 + height = 0 + while True: + line = f.readline() + if line == '': + return + # (1,1,1) = {" + if line.startswith('('): + coordChunk = line[1:line.index(')')].split(',') + # print(repr(coordChunk)) + z = int(coordChunk[2]) + zLevel = MapLayer(self, 255, 255) + inZLevel = True + y = 0 + width = 0 + height = 0 + continue + if line.strip() == '"}': + inZLevel = False + if height == 0: + height = y + newZ = MapLayer(self, height, width) + self.zLevels[z] = newZ + for ny in range(height): + for nx in range(width): + newZ.SetTileAt(nx, ny, zLevel.GetTileAt(nx, ny)) + self.log.info('Added map layer {0} ({1}x{2})'.format(z, height, width)) + # print(' * Added map layer {0} ({1}x{2})'.format(z, height, width)) + continue + if inZLevel: + if width == 0: + width = len(line) / self.idlen + if width > 255: + logging.warn("Warning: Line is {} blocks long!".format(width)) + x = 0 + for chunk in chunker(line.strip(), self.idlen): + chunk = ''.join(chunk) + tid = self.oldID2NewID[chunk] + zLevel.SetTileAt(x, y, self.tileTypes[tid]) + x += 1 + y += 1 + + def generateTexAtlas(self, basedir, renderflags=0): + if self.generatedTexAtlas: + return + print('--- Generating texture atlas...') + self._icons = {} + self._dmis = {} + self.generatedTexAtlas = True + for tid in xrange(len(self.tileTypes)): + tile = self.tileTypes[tid] + img = Image.new('RGBA', (96, 96)) + tile.offset = (32, 32) + tile.areaSelected = True + tile.render_deferred = False + for atom in sorted(tile.GetAtoms(), reverse=True): + + aid = atom.id + # Ignore /areas. They look like ass. + if atom.path.startswith('/area'): + if not (renderflags & MapRenderFlags.RENDER_AREAS): + continue + + # We're going to turn space black for smaller images. + if atom.path == '/turf/space': + if not (renderflags & MapRenderFlags.RENDER_STARS): + continue + + if 'icon' not in atom.properties: + print('CRITICAL: UNKNOWN ICON IN {0} (atom #{1})'.format(tile.origID, aid)) + print(atom.MapSerialize()) + print(atom.MapSerialize(Atom.FLAG_INHERITED_PROPERTIES)) + continue + + dmi_file = atom.properties['icon'].value + + if 'icon_state' not in atom.properties: + # Grab default icon_state ('') if we can't find the one defined. + atom.properties['icon_state'] = BYONDString("") + + state = atom.properties['icon_state'].value + + direction = SOUTH + if 'dir' in atom.properties: + try: + direction = int(atom.properties['dir'].value) + except ValueError: + print('FAILED TO READ dir = ' + repr(atom.properties['dir'].value)) + continue + + icon_key = '{0}:{1}[{2}]'.format(dmi_file, state, direction) + frame = None + pixel_x = 0 + pixel_y = 0 + if icon_key in self._icons: + frame, pixel_x, pixel_y = self._icons[icon_key] + else: + dmi_path = os.path.join(basedir, dmi_file) + dmi = None + if dmi_path in self._dmis: + dmi = self._dmis[dmi_path] + else: + try: + dmi = self.loadDMI(dmi_path) + self._dmis[dmi_path] = dmi + except Exception as e: + print(str(e)) + for prop in ['icon', 'icon_state', 'dir']: + print('\t{0}'.format(atom.dumpPropInfo(prop))) + pass + + if dmi.img is None: + self.log.warn('Unable to open {0}!'.format(dmi_path)) + continue + + if dmi.img.mode not in ('RGBA', 'P'): + self.log.warn('{} is mode {}!'.format(dmi_file, dmi.img.mode)) + + if direction not in IMAGE_INDICES: + self.log.warn('Unrecognized direction {} on atom {} in tile {}!'.format(direction, atom.MapSerialize(), tile.origID)) + direction = SOUTH # DreamMaker property editor shows dir = 2. WTF? + + frame = dmi.getFrame(state, direction, 0) + if frame == None: + # Get the error/default state. + frame = dmi.getFrame("", direction, 0) + + if frame == None: + continue + + if frame.mode != 'RGBA': + frame = frame.convert("RGBA") + + pixel_x = 0 + if 'pixel_x' in atom.properties: + pixel_x = int(atom.properties['pixel_x'].value) + + pixel_y = 0 + if 'pixel_y' in atom.properties: + pixel_y = int(atom.properties['pixel_y'].value) + + self._icons[icon_key] = (frame, pixel_x, pixel_y) + img.paste(frame, (32 + pixel_x, 32 - pixel_y), frame) # Add to the top of the stack. + if pixel_x != 0 or pixel_y != 0: + tile.render_deferred = True + tile.frame = img + + # Fade out unselected tiles. + bands = list(img.split()) + # Excluding alpha band + for i in range(3): + bands[i] = bands[i].point(lambda x: x * 0.4) + tile.unselected_frame = Image.merge(img.mode, bands) + + self.tileTypes[tid] = tile + + def renderAtom(self, atom, basedir, skip_alpha=False): + if 'icon' not in atom.properties: + logging.critical('UNKNOWN ICON IN ATOM #{0} ({1})'.format(atom.id, atom.path)) + logging.info(atom.MapSerialize()) + logging.info(atom.MapSerialize(Atom.FLAG_INHERITED_PROPERTIES)) + return None + # else: + # logging.info('Icon found for #{}.'.format(atom.id)) + + dmi_file = atom.properties['icon'].value + + # Grab default icon_state ('') if we can't find the one defined. + state = atom.getProperty('icon_state', '') + + direction = SOUTH + if 'dir' in atom.properties: + try: + direction = int(atom.properties['dir'].value) + except ValueError: + logging.critical('FAILED TO READ dir = ' + repr(atom.properties['dir'].value)) + return None + + icon_key = '{0}|{1}|{2}'.format(dmi_file, state, direction) + frame = None + pixel_x = 0 + pixel_y = 0 + if icon_key in _icons: + frame, pixel_x, pixel_y = _icons[icon_key] + else: + dmi_path = os.path.join(basedir, dmi_file) + dmi = None + if dmi_path in _dmis: + dmi = _dmis[dmi_path] + else: + try: + dmi = DMI(dmi_path) + dmi.loadAll() + _dmis[dmi_path] = dmi + except Exception as e: + print(str(e)) + for prop in ['icon', 'icon_state', 'dir']: + print('\t{0}'.format(atom.dumpPropInfo(prop))) + pass + if dmi.img is None: + logging.warning('Unable to open {0}!'.format(dmi_path)) + return None + + if dmi.img.mode not in ('RGBA', 'P'): + logging.warn('{} is mode {}!'.format(dmi_file, dmi.img.mode)) + + if direction not in IMAGE_INDICES: + logging.warn('Unrecognized direction {} on atom {}!'.format(direction, atom.MapSerialize())) + direction = SOUTH # DreamMaker property editor shows dir = 2. WTF? + + frame = dmi.getFrame(state, direction, 0) + if frame == None: + # Get the error/default state. + frame = dmi.getFrame("", direction, 0) + + if frame == None: + return None + + if frame.mode != 'RGBA': + frame = frame.convert("RGBA") + + pixel_x = 0 + if 'pixel_x' in atom.properties: + pixel_x = int(atom.properties['pixel_x'].value) + + pixel_y = 0 + if 'pixel_y' in atom.properties: + pixel_y = int(atom.properties['pixel_y'].value) + + _icons[icon_key] = (frame, pixel_x, pixel_y) + + # Handle BYOND alpha and coloring + c_frame = frame + alpha = int(atom.getProperty('alpha', 255)) + if skip_alpha: + alpha = 255 + color = atom.getProperty('color', '#FFFFFF') + if alpha != 255 or color != '#FFFFFF': + c_frame = tint_image(frame, BYOND2RGBA(color, alpha)) + return c_frame + + def generateImage(self, filename_tpl, basedir='.', renderflags=0, z=None, **kwargs): + ''' + Instead of generating on a tile-by-tile basis, this creates a large canvas and places + each atom on it after sorting layers. This resolves the pixel_(x,y) problem. + ''' + if z is None: + for z in self.zLevels.keys(): + self.generateImage(filename_tpl, basedir, renderflags, z, **kwargs) + return + self.selectedAreas = () + skip_alpha = False + render_types = () + if 'area' in kwargs: + self.selectedAreas = kwargs['area'] + if 'render_types' in kwargs: + render_types = kwargs['render_types'] + if 'skip_alpha' in kwargs: + skip_alpha = kwargs['skip_alpha'] + + print('Checking z-level {0}...'.format(z)) + instancePositions = {} + for y in range(self.zLevels[z].height): + for x in range(self.zLevels[z].width): + t = self.zLevels[z].GetTileAt(x, y) + # print('*** {},{}'.format(x,y)) + if t is None: + continue + if len(self.selectedAreas) > 0: + renderThis = True + for atom in t.GetAtoms(): + if atom.path.startswith('/area'): + if atom.path not in self.selectedAreas: + renderThis = False + if not renderThis: continue + for atom in t.GetAtoms(): + if atom is None: continue + iid = atom.id + if atom.path.startswith('/area'): + if atom.path not in self.selectedAreas: + continue + + # Check for render restrictions + if len(render_types) > 0: + found = False + for path in render_types: + if atom.path.startswith(path): + found = True + if not found: + continue + + # Ignore /areas. They look like ass. + if atom.path.startswith('/area'): + if not (renderflags & MapRenderFlags.RENDER_AREAS): + continue + + # We're going to turn space black for smaller images. + if atom.path == '/turf/space': + if not (renderflags & MapRenderFlags.RENDER_STARS): + continue + + if iid not in instancePositions: + instancePositions[iid] = [] + + # pixel offsets + ''' + pixel_x = int(atom.getProperty('pixel_x', 0)) + pixel_y = int(atom.getProperty('pixel_y', 0)) + t_o_x = int(round(pixel_x / 32)) + t_o_y = int(round(pixel_y / 32)) + pos = (x + t_o_x, y + t_o_y) + ''' + pos = (x, y) + + instancePositions[iid].append(pos) + + if len(instancePositions) == 0: + return + + levelAtoms = [] + for iid in instancePositions: + levelAtoms += [self.getInstance(iid)] + + pic = Image.new('RGBA', ((self.zLevels[z].width + 2) * 32, (self.zLevels[z].height + 2) * 32), "black") + + # Bounding box, used for cropping. + bbox = [99999, 99999, 0, 0] + + # Replace {z} with current z-level. + filename = filename_tpl.replace('{z}', str(z)) + + pastes = 0 + for atom in sorted(levelAtoms, reverse=True): + if atom.id not in instancePositions: + continue + icon = self.renderAtom(atom, basedir, skip_alpha) + if icon is None: + continue + for x, y in instancePositions[atom.id]: + new_bb = self.getBBoxForAtom(x, y, atom, icon) + # print('{0},{1} = {2}'.format(x, y, new_bb)) + # Adjust cropping bounds + if new_bb[0] < bbox[0]: + bbox[0] = new_bb[0] + if new_bb[1] < bbox[1]: + bbox[1] = new_bb[1] + if new_bb[2] > bbox[2]: + bbox[2] = new_bb[2] + if new_bb[3] > bbox[3]: + bbox[3] = new_bb[3] + pic.paste(icon, new_bb, icon) + pastes += 1 + + if len(self.selectedAreas) == 0: + # Autocrop (only works if NOT rendering stars or areas) + pic = trim(pic) + else: + # if nSelAreas == 0: + # continue + pic = pic.crop(bbox) + + if pic is not None: + # Saev + filedir = os.path.dirname(filename) + if not os.path.isdir(filedir): + os.makedirs(filedir) + print(' -> {} ({}x{}) - {} objects'.format(filename, pic.size[0], pic.size[1], pastes)) + pic.save(filename, 'PNG') + + def getBBoxForAtom(self, x, y, atom, icon): + icon_width, icon_height = icon.size + pixel_x = int(atom.getProperty('pixel_x', 0)) + pixel_y = int(atom.getProperty('pixel_y', 0)) + + return self.tilePosToBBox(x, y, pixel_x, pixel_y, icon_height, icon_width) + + def tilePosToBBox(self, tile_x, tile_y, pixel_x, pixel_y, icon_height, icon_width): + # Tile Pos + X = tile_x * 32 + Y = tile_y * 32 + + # pixel offsets + X += pixel_x + Y -= pixel_y + + # BYOND coordinates -> PIL coords. + # BYOND uses LOWER left. + # PIL uses UPPER left + X += 0 + Y += 32 - icon_height + + return ( + X, + Y, + X + icon_width, + Y + icon_height + ) + + def consumeTiles(self, f): + index = 0 + self.duplicates = 0 + lineNumber = 0 + self.tileChunk2ID = {} + while True: + line = f.readline() + lineNumber += 1 + if line.startswith('"'): + t = self.consumeTile(line, lineNumber) + t.ID = index + self.tileTypes += [t] + self.idlen = max(self.idlen, len(t.ID2String())) + self.oldID2NewID[t.origID] = t.ID + index += 1 + # No longer needed, 2fast. + # if((index % 100) == 0): + # print(index) + else: + self.log.info('-- {} tiles loaded, {} duplicates discarded'.format(index, self.duplicates)) + return + + def consumeTile(self, line, lineNumber): + t = Tile(self) + t.origID = self.consumeTileID(line) + tileChunk = line.strip()[line.index('(') + 1:-1] + + if tileChunk in self.tileChunk2ID: + tid = self.tileChunk2ID[tileChunk] + self.log.warn('{} duplicate of {}! Installing redirect...'.format(t.origID, tid)) + self.oldID2NewID[t.origID] = tid + self.duplicates += 1 + return self.tileTypes[tid] + + t.instances = self.consumeTileAtoms(tileChunk, lineNumber) + return t + def getTileTypeID(self, t): + for tile in self.tileTypes: + if tile == t: + return tile.ID + return None + + def consumeTileID(self, line): + e = line.index('"', 1) + return line[1:e] + + def GetInstances(self): + return self.instances + + # So we can read a map without parsing the tree. + def GetAtom(self, path): + if self.tree is not None: + atom = self.tree.GetAtom(path) + if atom is None and self.forgiving_atom_lookups: + self.missing_atoms.add(path) + return Atom(path, self.filename, missing=True) + return atom + return Atom(path) + + def consumeTileAtoms(self, line, lineNumber): + instances = [] + atom_chunks = self.SplitAtoms(line) + + for atom_chunk in atom_chunks: + if atom_chunk in self.atomCache: + instances += [self.atomCache[atom_chunk]] + else: + atom_id = self.consumeAtom(atom_chunk, lineNumber) + self.atomCache[atom_chunk] = atom_id + instances += [atom_id] + + return instances + + def SplitProperties(self, string): + o = [] + buf = [] + inString = False + for chunk in string.split(';'): + if not inString: + if '"' in chunk: + inString = False + pos = 0 + while(True): + pos = chunk.find('"', pos) + if pos == -1: + break + pc = '' + if pos > 0: + pc = chunk[pos - 1] + if pc != '\\': + inString = not inString + pos += 1 + if not inString: + o += [chunk] + else: + buf += [chunk] + else: + o += [chunk] + else: + if '"' in chunk: + o += [';'.join(buf + [chunk])] + inString = False + buf = [] + else: + buf += [chunk] + return o + + def SplitAtoms(self, string): + ignoreLevel = [] + + o = [] + buf = '' + + string = string.rstrip() + line_len = len(string) + for i in xrange(line_len): + c = string[i] + pc = '' + if i > 0: + pc = string[i - 1] + + if c in self.atomBorders and pc != '\\': + end = self.atomBorders[c] + if end == c: # Just toggle. + if len(ignoreLevel) > 0: + if ignoreLevel[-1] == c: + ignoreLevel.pop() + else: + ignoreLevel.append(c) + else: + if end == None: + if len(ignoreLevel) > 0: + if ignoreLevel[-1] == c: + ignoreLevel.pop() + else: + ignoreLevel.append(end) + if c == ',' and len(ignoreLevel) == 0: + o += [buf] + buf = '' + else: + buf += c + + if len(ignoreLevel) > 0: + print(repr(ignoreLevel)) + sys.exit() + return o + [buf] + + def consumeAtom(self, line, lineNumber): + if '{' not in line: + atom = line.strip() + if atom.endswith('/'): + self.log.warn('{file}:{line}: Malformed atom: {data} has ending slash. Stripping slashes from right side.'.format(file=self.filename, line=lineNumber, data=atom)) + atom = atom.rstrip('/') + currentAtom = self.GetAtom(atom) + if currentAtom is not None: + return self.AssignIID(currentAtom) + else: + self.log.critical('{file}:{line}: Failed to consumeAtom({data}): Unable to locate atom.'.format(file=self.filename, line=lineNumber, data=line)) + return None + chunks = line.split('{') + if len(chunks) < 2: + self.log.error('{file}:{line}: Something went wrong in consumeAtom(). line={data}'.format(file=self.filename, line=lineNumber, data=line)) + atom = chunks[0].strip() + if atom.endswith('/'): + self.log.warn('{file}:{line}: Malformed atom: {data} has ending slash. Stripping slashes from right side.'.format(file=self.filename, line=lineNumber, data=atom)) + atom = atom.rstrip('/') + currentAtom = self.GetAtom(atom) + if currentAtom is not None: + currentAtom = currentAtom.copy() + else: + return None + if chunks[1].endswith('}'): + chunks[1] = chunks[1][:-1] + property_chunks = self.SplitProperties(chunks[1]) + mapSupplied = [] + for chunk in property_chunks: + if chunk.endswith('}'): + chunk = chunk[:-1] + pparts = chunk.split('=', 1) + key = pparts[0].strip() + value = pparts[1].strip() + if key == '': + self.log.warn('Ignoring property with blank name. (given {0})'.format(chunk)) + continue + data = self.consumeDataValue(value, lineNumber) + if key not in currentAtom.mapSpecified: + mapSupplied += [key] + currentAtom.properties[key] = data + + currentAtom.mapSpecified = mapSupplied + + # Compare to base + if not (self.readFlags & Map.READ_NO_BASE_COMP): + base_atom = self.GetAtom(currentAtom.path) + assert base_atom != None + # for key in base_atom.properties.keys(): + # val = base_atom.properties[key] + # if key not in currentAtom.properties: + # currentAtom.properties[key] = val + for key in currentAtom.properties.iterkeys(): + val = currentAtom.properties[key].value + if key in base_atom.properties and val == base_atom.properties[key].value: + if key in currentAtom.mapSpecified: + currentAtom.mapSpecified.remove(key) + # print('Removed {0} from atom: Equivalent to base atom!') + + return self.AssignIID(currentAtom) + + def AssignIID(self, atom, replacing=None): + if atom not in self.instances: + if replacing is not None: + atom.id = replacing + self.instances[replacing] = atom + return replacing + else: + atom.id = len(self.instances) + self.instances.append(atom) + return atom.id + else: + r_iid = self.instances.index(atom) + if replacing is not None: + self.ReplaceIIDs(replacing, r_iid) + return r_iid + + def consumeDataValue(self, value, lineNumber): + data = None + if value[0] in ('"', "'"): + quote = value[0] + if quote == '"': + data = BYONDString(value[1:-1], self.filename, lineNumber) + elif quote == "'": + data = BYONDFileRef(value[1:-1], self.filename, lineNumber) + else: + data = BYONDValue(value, self.filename, lineNumber) + return data + + def getInstance(self, iid): + if iid is None: + return None + return self.instances[iid] + + def setInstance(self, iid, atom): + if iid is None: + return None + return self.AssignIID(atom, iid) + + def ReplaceIIDs(self, old_iid, new_iid): + updated = 0 + for tid in xrange(len(self.tileTypes)): + for i in xrange(len(self.tileTypes[tid].instances)): + if old_iid == self.tileTypes[tid].instances[i]: + self.tileTypes[tid].instances[i] = new_iid + updated += 1 + if updated > 0: + self.log.info('Updated {0} tiles (#{1} -> #{2})'.format(updated, old_iid, new_iid)) + diff --git a/tools/BYONDTools/byond/mapfixes/__init__.py b/tools/BYONDTools/byond/mapfixes/__init__.py new file mode 100644 index 00000000000..d2e1db498b7 --- /dev/null +++ b/tools/BYONDTools/byond/mapfixes/__init__.py @@ -0,0 +1,35 @@ +import logging, glob, os, sys +from .base import MapFix, GetDependencies + +def Load(): + print('Loading MapFix Modules...') + for f in glob.glob(os.path.dirname(__file__) + "/*.py"): + modName = 'mapfixes.' + os.path.basename(f)[:-3] + print(' Loading module ' + modName) + mod = __import__(modName) + for attr in dir(mod): + if not attr.startswith('_'): + #print(' {} = {}'.format(attr,getattr(mod, attr))) + globals()[attr] = getattr(mod, attr) + +def GetFixesForNS(namespaces, load_dependencies=True): + selected = [None] + namespaces + depends = GetDependencies() + if load_dependencies: + changed = True + while changed: + changed = False + for cat in selected: + if cat is None: continue # Global namespace is always needed. + print('Checking dependencies for {}...'.format(cat)) + if cat in depends: + for newcat in depends[cat]: + if newcat not in selected: + print('Selected dependency {} (required by {})'.format(newcat,cat)) + selected += [newcat] + changed = True + o = [] + for cat in selected: + for _, val in MapFix.all[cat].items(): + o += [val()] + return o diff --git a/tools/BYONDTools/byond/mapfixes/base.py b/tools/BYONDTools/byond/mapfixes/base.py new file mode 100644 index 00000000000..66bedf75fa6 --- /dev/null +++ b/tools/BYONDTools/byond/mapfixes/base.py @@ -0,0 +1,150 @@ +''' +Global BYOND fixes and matchers + +@author: Rob +''' +import logging +from byond.basetypes import BYONDString, BYONDValue +# from byond.directions import * + +# Decorator +class MapFix(object): + all = {} + def __init__(self, category, _id=None): + self.id = _id + self.category = category + def __call__(self, c): + if self.id is None: + fname_p = c.__name__ + self.id = fname_p + print('Adding MapFix {0}-{1}.'.format(self.category, self.id)) + if self.category not in MapFix.all: + MapFix.all[self.category] = {} + MapFix.all[self.category][self.id] = c + return c + +_dependencies = {} + +def DeclareDependencies(dependee, dependencies): + if dependee not in _dependencies: + _dependencies[dependee] = [] + _dependencies[dependee] += dependencies + print(' Dependencies: {}'.format(dependencies)) + +def GetDependencies(): + return _dependencies + +class Matcher: + def Matches(self, atom): + return False + + def Fix(self, atom): + return atom + + def SetTree(self, tree): + self.tree = tree + +@MapFix(None) +class NukeTags(Matcher): + def __init__(self): + pass + + def Matches(self, atom): + return 'tag' in atom.properties and 'tag' in atom.mapSpecified + + def Fix(self, atom): + atom.mapSpecified.remove('tag') + return atom + + def __str__(self): + return 'Removed tag' + +class RenameProperty(Matcher): + ''' + Generic property renamer. + ''' + + def __init__(self, old, new): + self.old = old + self.new = new + self.removed = False + + def Matches(self, atom): + if self.old in atom.properties and self.old in atom.mapSpecified: + return True + return False + + def Fix(self, atom): + if self.new not in atom.properties: # Defer to the correct one if both exist. + atom.properties[self.new] = atom.properties[self.old] + if self.old in atom.mapSpecified: + if self.new not in atom.mapSpecified: + atom.mapSpecified += [self.new] + else: + self.removed = True + atom.mapSpecified.remove(self.old) + del atom.properties[self.old] + return atom + + def __str__(self): + if self.removed: + return 'Removed {0}'.format(self.old) + else: + return 'Renamed {0} to {1}'.format(self.old, self.new) + +class ChangeType(Matcher): + def __init__(self, old, new, forcetype=False, fuzzy=False): + self.old = old + self.new = new + self.forcetype = forcetype + self.fuzzy = fuzzy + + def Matches(self, atom): + matches = False + if self.fuzzy: + matches = atom.path.startswith(self.old) + if matches: + self.new += atom.path[len(self.old):] + self.old = atom.path + #print('{} -> {}'.format(self.old,self.new)) + else: + matches = self.old == atom.path + if matches: + if atom.missing: + return True + else: + logging.warn('[{}] Found type, but marked not missing: {}'.format(self.__class__.__name__,atom.path)) + logging.warn('{}:{}: Target type found here'.format(atom.filename, atom.line)) + return False + + def Fix(self, atom): + atom.path = self.new + return atom + + def __str__(self): + return 'Change type from {0} to {1}'.format(self.old, self.new) + +@MapFix(None) +class FixStepX(RenameProperty): + def __init__(self): + RenameProperty.__init__(self, 'step_x', 'pixel_x') + +@MapFix(None) +class FixStepY(RenameProperty): + def __init__(self): + RenameProperty.__init__(self, 'step_y', 'pixel_y'), + +@MapFix(None) +class RepairDirections(Matcher): + def __init__(self): + pass + + def Matches(self, atom): + return 'dir' in atom.properties and 'dir' in atom.mapSpecified and isinstance(atom.properties['dir'], BYONDString) + + def Fix(self, atom): + atom.setProperty('dir', int(atom.getProperty('dir'))) + return atom + + def __str__(self): + return 'Repaired direction type' diff --git a/tools/BYONDTools/byond/mapfixes/ss13.py b/tools/BYONDTools/byond/mapfixes/ss13.py new file mode 100644 index 00000000000..ba4c0750835 --- /dev/null +++ b/tools/BYONDTools/byond/mapfixes/ss13.py @@ -0,0 +1,66 @@ + +from .base import Matcher,MapFix +from byond.basetypes import BYONDString, BYONDValue, Atom, PropertyFlags +from byond.directions import * + +@MapFix('ss13') +class StandardizeAPCs(Matcher): + ACT_CLEAR_NAME = 1 + ACT_FIX_OFFSET = 2 + def __init__(self): + self.actions = 0 + self.pixel_x = 0 + self.pixel_y = 0 + + def Matches(self, atom): + self.actions = 0 + if atom.path == '/obj/machinery/power/apc': + # Determine if this APC is pretty close to standard-issue (no weird permissions, etc). + nonstandard_settings = [] + for setting in atom.mapSpecified: + if setting not in ('name', 'pixel_x', 'pixel_y', 'tag', 'dir'): + nonstandard_settings += [setting] + if len(nonstandard_settings) > 0: + print('Non-standard APC #{}: Has strange settings - {}'.format(atom.id,', '.join(nonstandard_settings))) + else: + if 'name' in atom.properties and 'name' in atom.mapSpecified: + self.actions |= self.ACT_CLEAR_NAME + + direction = int(atom.getProperty('dir', 2)) + self.pixel_x = 0 + self.pixel_y = 0 + c_pixel_x = atom.getProperty('pixel_x', 0) + c_pixel_y = atom.getProperty('pixel_y', 0) + if (direction & 3): + self.pixel_x = 0 + if(direction == 1): + self.pixel_y = 24 + else: + self.pixel_y = -24 + else: + self.pixel_y = 0 + if(direction == 4): + self.pixel_x = 24 + else: + self.pixel_x = -24 + if self.pixel_x != c_pixel_x or self.pixel_y != c_pixel_y: + self.actions |= self.ACT_FIX_OFFSET + return self.actions != 0 + + def Fix(self, atom): + if self.actions & self.ACT_CLEAR_NAME: + atom.mapSpecified.remove('name') + if self.actions & self.ACT_FIX_OFFSET: + atom.setProperty('pixel_x', self.pixel_x, PropertyFlags.MAP_SPECIFIED) + atom.setProperty('pixel_y', self.pixel_y, PropertyFlags.MAP_SPECIFIED) + return atom + + def __str__(self): + if self.actions == 0: + return 'APC Standardization' + descr = [] + if self.actions & self.ACT_CLEAR_NAME: + descr += ['Cleared name property'] + if self.actions & self.ACT_FIX_OFFSET: + descr += ['Set pixel offset to {0},{1}'.format(self.pixel_x, self.pixel_y)] + return 'Standardized APC: ' + ', '.join(descr) \ No newline at end of file diff --git a/tools/BYONDTools/byond/mapfixes/ss13_vgstation.py b/tools/BYONDTools/byond/mapfixes/ss13_vgstation.py new file mode 100644 index 00000000000..c7ba8a68a76 --- /dev/null +++ b/tools/BYONDTools/byond/mapfixes/ss13_vgstation.py @@ -0,0 +1,311 @@ +''' +/vg/station-specific fixes. +''' + +from .base import Matcher,MapFix,RenameProperty,DeclareDependencies,ChangeType +from byond.basetypes import BYONDString, BYONDValue, Atom, PropertyFlags +from byond.directions import * + +DeclareDependencies('vgstation',['ss13']) + +@MapFix('vgstation') +class FixNetwork(Matcher): + def __init__(self): + pass + + def Matches(self, atom): + if atom.path.startswith('/obj/machinery/camera') and 'network' in atom.properties: + return isinstance(atom.properties['network'], BYONDString) and not atom.properties['network'].value.startswith('list(') + return False + + def Fix(self, atom): + fix = atom.properties['network'].value + atom.properties['network'] = BYONDValue('list("{0}")'.format(fix)) + return atom + + def __str__(self): + return 'Changed network property to list' + +@MapFix('vgstation') +class NetworkingChangeAtmos(ChangeType): + def __init__(self): + ChangeType.__init__(self,'/obj/machinery/atmospherics','/obj/machinery/networked/atmos', fuzzy = True) + +@MapFix('vgstation') +class NetworkingChangePower(ChangeType): + def __init__(self): + ChangeType.__init__(self,'/obj/machinery/power','/obj/machinery/networked/power', fuzzy = True) + +@MapFix('vgstation') +class NetworkingChangeFiber(ChangeType): + def __init__(self): + ChangeType.__init__(self,'/obj/machinery/fiber','/obj/machinery/networked/fiber', fuzzy = True) + + +class FixIDTags(Matcher): + atomsToFix={} + def __init__(self): + pass + + def Matches(self, atom): + global atomsToFix + if 'id_tag' in atom.properties: + compiled_atom = self.tree.GetAtom(atom.path) + if compiled_atom is None: return False + if 'id_tag' not in compiled_atom.properties: + FixIDTags.atomsToFix[atom.path] = True + return 'id' in atom.properties and 'id' in atom.mapSpecified + # return False + + def Fix(self, atom): + _id = atom.properties['id'] + id_idx = atom.mapSpecified.index('id') + atom.properties['id_tag'] = _id + del atom.properties['id'] + atom.mapSpecified[id_idx] = 'id_tag' + return atom + + def __str__(self): + return 'Renamed id to id_tag' + +@MapFix('vgstation') +class StandardizeManifolds(Matcher): + STATE_TO_TYPE = { + 'manifold-b' :'/obj/machinery/networked/atmos/pipe/manifold/supply/visible', + 'manifold-b-f':'/obj/machinery/networked/atmos/pipe/manifold/supply/hidden', + 'manifold-r' :'/obj/machinery/networked/atmos/pipe/manifold/scrubbers/visible', + 'manifold-r-f':'/obj/machinery/networked/atmos/pipe/manifold/scrubbers/hidden', + 'manifold-c' :'/obj/machinery/networked/atmos/pipe/manifold/cyan/visible', + 'manifold-c-f':'/obj/machinery/networked/atmos/pipe/manifold/cyan/hidden', + 'manifold-y' :'/obj/machinery/networked/atmos/pipe/manifold/yellow/visible', + 'manifold-y-f':'/obj/machinery/networked/atmos/pipe/manifold/yellow/hidden', + 'manifold-g' :'/obj/machinery/networked/atmos/pipe/manifold/filtering/visible', + 'manifold-g-f':'/obj/machinery/networked/atmos/pipe/manifold/filtering/hidden', + 'manifold' :'/obj/machinery/networked/atmos/pipe/manifold/general/visible', + 'manifold-f' :'/obj/machinery/networked/atmos/pipe/manifold/general/hidden', + } + def __init__(self): + return + + def Matches(self, atom): + if atom.path == '/obj/machinery/networked/atmos/pipe/manifold' and 'icon_state' in atom.mapSpecified: + return atom.getProperty('icon_state') in self.STATE_TO_TYPE + return False + + def Fix(self, atom): + icon_state = atom.properties['icon_state'].value + new_atom = Atom(self.STATE_TO_TYPE[icon_state]) + if 'dir' in atom.mapSpecified: + new_atom.setProperty('dir', atom.getProperty('dir'), PropertyFlags.MAP_SPECIFIED) + return new_atom + + def __str__(self): + return 'Standardized pipe manifold' + +@MapFix('vgstation') +class StandardizePiping(Matcher): + TYPE_TRANSLATIONS = { + '/obj/machinery/networked/atmos/pipe/simple': 'simple', + '/obj/machinery/networked/atmos/pipe/manifold': 'manifold', + '/obj/machinery/networked/atmos/pipe/manifold4w': 'manifold4w', + } + COLOR_CODES = { + 'b':'supply', + 'r':'scrubbers', + 'g':'filtering', + 'c':'cyan', + 'y':'yellow', + '': 'general' + } + def __init__(self): + self.before = None + self.after = None + return + + def trans_simple(self, atom): + type_tmpl = '/obj/machinery/networked/atmos/pipe/simple/{color}/{visibility}' + color_code, visible = self.parseIconState(atom.getProperty('icon_state', '')) + return self.getNewType(type_tmpl, color_code, visible) + + def trans_manifold(self, atom): + type_tmpl = '/obj/machinery/networked/atmos/pipe/manifold/{color}/{visibility}' + color_code, visible = self.parseIconState(atom.getProperty('icon_state', '')) + return self.getNewType(type_tmpl, color_code, visible) + + def trans_manifold4w(self, atom): + type_tmpl = '/obj/machinery/networked/atmos/pipe/manifold4w/{color}/{visibility}' + color_code, visible = self.parseIconState(atom.getProperty('icon_state', '')) + return self.getNewType(type_tmpl, color_code, visible) + + def parseIconState(self, state): + parts = state.split('-') + if len(parts) <= 1: + return ('', True) + elif len(parts) == 2: + if parts[1] == 'f': + return ('', True) + return (parts[1], True) + return (parts[1], parts[2] != 'f') + + def getNewType(self, tmpl, color_code, visible, color_wheel=COLOR_CODES): + visibility = 'visible' + if not visible: + visibility = 'hidden' + color = color_wheel[color_code] + return Atom(tmpl.format(color=color, visibility=visibility)) + + def Matches(self, atom): + return atom.path in self.TYPE_TRANSLATIONS + + def Fix(self, atom): + self.before = atom.MapSerialize() + old_dir = None + if 'dir' in atom.mapSpecified: + old_dir = int(atom.getProperty('dir', 2)) + atom = getattr(self, 'trans_{0}'.format(self.TYPE_TRANSLATIONS[atom.path]))(atom) + if old_dir is not None and old_dir != 2: + atom.setProperty('dir', old_dir, PropertyFlags.MAP_SPECIFIED) + self.after = atom.MapSerialize() + return atom + + def __str__(self): + if self.before is not None and self.after is not None: + return 'Standardized pipe: {0} -> {1}'.format(self.before, self.after) + else: + return 'Standardize pipes' + +@MapFix('vgstation') +class StandardizeInsulatedPipes(Matcher): + STATE_TO_TYPE = { + 'intact' :'/obj/machinery/networked/atmos/pipe/simple/insulated/visible', + 'intact-f':'/obj/machinery/networked/atmos/pipe/simple/insulated/hidden' + } + def __init__(self): + return + + def Matches(self, atom): + if atom.path == '/obj/machinery/networked/atmos/pipe/simple/insulated': + return True + if atom.path.startswith('/obj/machinery/networked/atmos/pipe/simple/insulated') and int(atom.getProperty('dir', 0)) in (3, 8, 12): + # print(atom.MapSerialize()) + return True + return False + + def Fix(self, atom): + newtype = atom.path + if atom.path == '/obj/machinery/networked/atmos/pipe/simple/insulated': + icon_state = '' + if 'icon_state' in atom.properties: + icon_state = atom.properties['icon_state'].value + newtype = self.STATE_TO_TYPE.get(icon_state, '/obj/machinery/networked/atmos/pipe/simple/insulated/visible') + new_atom = Atom(newtype) + if 'dir' in atom.mapSpecified: + # Normalize dir + direction = int(atom.getProperty('dir', 2)) + if direction == 3: + direction = 1 + elif direction == 8: # Breaks things, for some reason + direction = 4 + elif direction == 12: + direction = 4 + new_atom.setProperty('dir', direction, PropertyFlags.MAP_SPECIFIED) + return new_atom + + def __str__(self): + return 'Standardized insulated pipe' + +@MapFix('vgstation') +class FixWindows(Matcher): + def __init__(self): + return + + def Matches(self, atom): + if atom.path.startswith('/obj/structure/window/full'): + return False + if atom.path.startswith('/obj/structure/window') and int(atom.getProperty('dir', SOUTH)) in (NORTH | WEST, SOUTH | WEST, NORTH | EAST, SOUTH | EAST): + # print(atom.MapSerialize()) + return True + return False + + def Fix(self, atom): + newtype = atom.path.replace('/obj/structure/window', '/obj/structure/window/full') + atom.path = newtype + atom.properties = {} + atom.mapSpecified = [] + return atom + + def __str__(self): + return 'Standardized full windows' + +@MapFix('vgstation') +class FixVaultFloors(Matcher): + """ + Changes flooring icons to use /vg/'s standardized vault icons. + """ + # state:1 + ICON_STATE_CHANGES = { + 'vault:1' :{'icon_state':'dark-markings', 'dir':2}, + 'vault:2' :{'icon_state':'dark vault stripe', 'dir':2}, + 'vault:4' :{'icon_state':'dark-markings', 'dir':1}, + 'vault:8' :{'icon_state':'dark-markings', 'dir':8}, + 'vault:6' :{'icon_state':'dark vault corner', 'dir':2}, + 'vault:10':{'icon_state':'dark vault corner', 'dir':8}, + 'vault:5' :{'icon_state':'dark vault full', 'dir':2}, + 'vault:9' :{'icon_state':'dark loading', 'dir':4}, + + 'vault-border:1' :{'icon_state':'dark vault stripe', 'dir':2}, + 'vault-border:2' :{'icon_state':'dark vault stripe', 'dir':1}, + 'vault-border:4' :{'icon_state':'dark vault stripe', 'dir':4}, + 'vault-border:8' :{'icon_state':'dark vault stripe', 'dir':8}, + 'vault-border:6' :{'icon_state':'dark vault corner', 'dir':2}, + 'vault-border:10':{'icon_state':'dark vault stripe', 'dir':5}, + 'vault-border:5' :{'icon_state':'dark vault stripe', 'dir':5}, + 'vault-border:9' :{'icon_state':'dark vault stripe', 'dir':6}, + } + def __init__(self): + self.stateKey = '' + self.changesMade = [] + return + + def GetStateKey(self, atom): + icon_state = '' + _dir = '2' + if 'dir' in atom.properties: + _dir = str(atom.getProperty('dir')) + if 'icon_state' in atom.properties: + icon_state = atom.getProperty('icon_state') + return icon_state + ":" + _dir + + def Matches(self, atom): + if atom.path.startswith('/turf/') and 'icon_state' in atom.mapSpecified: + sk = self.GetStateKey(atom) + if sk in self.ICON_STATE_CHANGES: + self.stateKey = sk + return True + return False + + def Fix(self, atom): + self.changesMade = [] + propChanges = self.ICON_STATE_CHANGES[self.stateKey] + if 'tag' in atom.mapSpecified: + atom.mapSpecified.remove('tag') + for key, newval in propChanges.items(): + if key not in atom.mapSpecified: + atom.mapSpecified += [key] + oldval = 'NONE' + if key in atom.properties: + oldval = str(atom.properties[key]) + if isinstance(newval, str): + atom.properties[key] = BYONDString(newval) + elif isinstance(newval, int): + atom.properties[key] = BYONDValue(newval) + self.changesMade += ['{0}: {1} -> {2}'.format(key, oldval, atom.properties[key])] + return atom + + def __str__(self): + return 'Standardized vault flooring (' + ', '.join(self.changesMade) + ')' + +@MapFix('vgstation') +class RenameColorVG(RenameProperty): + def __init__(self): + RenameProperty.__init__(self, "color", "_color") \ No newline at end of file diff --git a/tools/BYONDTools/byond/network/__init__.py b/tools/BYONDTools/byond/network/__init__.py new file mode 100644 index 00000000000..e69de29bb2d diff --git a/tools/BYONDTools/byond/network/packets/__init__.py b/tools/BYONDTools/byond/network/packets/__init__.py new file mode 100644 index 00000000000..cb661ce9ea4 --- /dev/null +++ b/tools/BYONDTools/byond/network/packets/__init__.py @@ -0,0 +1,91 @@ +""" +BYOND Base Packet Class + +Created with help from tobba. +""" +import logging, struct + +class NetTypes: + BYTE = 0 + SHORT = 1 + LONG = 2 + STRING = 3 + + min_lens = [1, 2, 4, None] + + @staticmethod + def GetMinLength(t): + return NetTypes.min_lens[t] + +PacketTypes = {} + +class Packet: + ID = 0 + Name = '' + def __init__(self): + self.__field_data = {} + self.header = {} + self.min_length = 0 + + self.length = 0 + self.sequence = 0 + + def LinkField(self, datatype, propname, **kwargs): + ''' + Associate a part of a packet to a field in this class + ''' + kwargs['type'] = datatype + kwargs['name'] = propname + self.__field_data[len(self.__field_data)] = kwargs + self.min_length += NetTypes.GetMinLength(datatype) + + def Deserialize(self, msg): + if len(msg) < self.min_length: + logging.error('Received truncated packet {0}: min_length={1}, msg.len={2}'.format(self.Name, self.min_length, len(msg))) + + # TIME FOR ASSUMPTIONS! + pos = 0 + for idx, fieldinfo in self.__field_data.items(): + dtype = fieldinfo['type'] + propname = fieldinfo['name'] + unpacked = None + if dtype == NetTypes.BYTE: + dat = msg[pos:pos + 1] + unpacked = struct.unpack('B', dat) # Unsigned char + pos += 1 + elif dtype == NetTypes.SHORT: + dat = msg[pos:pos + 2] + unpacked = struct.unpack('h', dat) # short (maybe H?) + pos += 2 + elif dtype == NetTypes.LONG: + dat = msg[pos:pos + 4] + unpacked = struct.unpack('l', dat) # short (maybe L?) + pos += 4 + elif dtype == NetTypes.STRING: + dat = msg[pos:] + unpacked = dat.split('\x00', 1) + pos += len(unpacked) + 1 # NUL byte stripped + else: + logging.error('Unable to unpack {0} packet at field {1}: Unknown datatype {2}'.format(self.Name, idx, dtype)) + logging.error('Packet __field_data:'.repr(self.__field_data)) + raise SystemError() + setattr(self, propname, unpacked) + + def Serialize(self): + msg = b'' + for idx, fieldinfo in self.__field_data.items(): + dtype = fieldinfo['type'] + dat = getattr(self, fieldinfo['name']) + if dtype == NetTypes.BYTE: + msg += struct.pack('B', dat) # Unsigned char + elif dtype == NetTypes.SHORT: + msg += struct.pack('h', dat) # short (maybe H?) + elif dtype == NetTypes.LONG: + msg += struct.pack('l', dat) # short (maybe L?) + elif dtype == NetTypes.STRING: + msg += dat + b'\x00' + else: + logging.error('Unable to pack {0} packet at field {1}: Unknown datatype {2}'.format(self.Name, idx, dtype)) + logging.error('Packet __field_data:'.repr(self.__field_data)) + raise SystemError() + return msg diff --git a/tools/BYONDTools/byond/objtree.py b/tools/BYONDTools/byond/objtree.py new file mode 100644 index 00000000000..394c6f1d17a --- /dev/null +++ b/tools/BYONDTools/byond/objtree.py @@ -0,0 +1,709 @@ +''' +Superficially generate an object/property tree. +''' +import re, logging, os + +try: + import cPickle as pickle +except: + import pickle + +from .basetypes import Atom, Proc, BYONDValue, BYONDString, BYONDFileRef +from .utils import md5sum, get_stdlib + +REGEX_TABS = re.compile('^(?P[\t\s]*)') +REGEX_ATOMDEF = re.compile('^(?P\t*)(?P[a-zA-Z0-9_/]+)\\{?\\s*$') +REGEX_ABSOLUTE_PROCDEF = re.compile('^(?P\t*)(?P[a-zA-Z0-9_/]+)/(?P[a-zA-Z0-9_]+)\((?P.*)\)\\{?\s*$') +REGEX_RELATIVE_PROCDEF = re.compile('^(?P\t*)(?P[a-zA-Z0-9_]+)\((?P.*)\)\\{?\\s*$') +REGEX_LINE_COMMENT = re.compile('//.*?$') + +def debug(filename, line, path, message): + print('{0}:{1}: {2} - {3}'.format(filename, line, '/'.join(path), message)) + +class OTRCache: + # : Only used for obliterating outdated data. + VERSION = [28, 4, 2014] + + def __init__(self, filename): + self.filename = filename + self.files = {} + self.atoms = None + self.handle = None + + def StartReading(self): + if self.handle: + self.handle.close() + self.handle = None + if os.path.isfile(self.filename): + self.handle = open(self.filename, 'r') + + def StopReading(self): + if self.handle is not None: + self.handle.close() + + def CheckVersion(self): + # print('READ VERSION') + # Block 1: Version + if pickle.load(self.handle) != self.VERSION: + print('!!! Outdated OTR data, rebuilding.') + return False + return True + + def ReadFiles(self): + # print('READ FILES') + # Block 2: Files + self.files = pickle.load(self.handle) + + def ReadAtoms(self): + # print('READ ATOMS') + return pickle.load(self.handle) + + def CheckFileHash(self, fn, md5): + # print('{0}: {1}'.format(fn,md5)) + if fn not in self.files: + print(' + {0}'.format(fn)) + return False + if self.files[fn] != md5: + print(' * {0}'.format(fn)) + return False + return True + + def PruneFiles(self, file_list): + for fn in self.files.keys(): + if fn not in file_list: + self.files -= [fn] + print(' - {0}'.format(fn)) + + def SetFileMD5(self, fn, md5): + self.files[fn] = md5 + + def GetFiles(self): + return self.files.keys() + + def Save(self, atoms): + with open(self.filename, 'w') as f: + pickle.dump(self.VERSION, f) + pickle.dump(self.files, f) + pickle.dump(atoms, f) + +class ObjectTree: + reserved_words = ('else', 'break', 'return', 'continue', 'spawn') # , 'proc') + stdlib_files = ( + 'dm_std.dm', + 'atom_defaults.dm' + ) + def __init__(self, **options): + #: All atoms, in a list. + self.Atoms = {} + + #: All atoms, in a tree-node structure. + self.Tree = Atom('') + + #: Skip loading from .OTR? + self.skip_otr = False + + self.LoadedStdLib = False + self.cpath = [] + self.popLevels = [] + self.InProc = [] + self.pindent = 0 # Previous Indent + self.ignoreLevel = [] # Block Comments + self.ignoreStartIndent = -1 + self.debugOn = True + self.ignoreDebugOn = False + self.ignoreTokens = { + '/*':'*/', + '{"':'"}' + } + self.defines = {} + self.defineMatchers = {} + self.comments = [] + self.fileLayouts = {} + self.LeavePreprocessorDirectives = options.get('preprocessor_directives', False) + + nit = self.ignoreTokens.copy() + for _, stop in self.ignoreTokens.iteritems(): + nit[stop] = None + self.ignoreTokens = nit + + self.defines['__OBJTREE'] = BYONDValue('1') + + def ProcessMultiString(self, filename, line, ignoreLevels, current_buffer): + return '"{0}"'.format(current_buffer) + + def SplitPath(self, string): + o = [] + buf = [] + inProc = False + for chunk in string.split('/'): + if not inProc: + if '(' in chunk and ')' not in chunk: + inProc = True + buf += [chunk] + else: + o += [chunk] + else: + if ')' in chunk: + o += ['/'.join(buf + [chunk])] + inProc = False + else: + buf += [chunk] + return o + + def ProcessFilesFromDME(self, dmefile='baystation12.dme', ext='.dm', **kwargs): + changed_files = 0 + rootdir = os.path.dirname(dmefile) + projectfile = os.path.join(rootdir, os.path.basename(dmefile).replace('.dme', '.otr')) + + cache = OTRCache(projectfile) + invalid = False + if not self.skip_otr: + if os.path.isfile(projectfile): + print('--- Loading pickled object tree...') + cache.StartReading() + if cache.CheckVersion(): + cache.ReadFiles() + else: + invalid = True + else: + invalid = True + + ToRead = [] + if not self.LoadedStdLib and kwargs.get('load_stdlib', True): + stdlib_dir = get_stdlib() + for filename in self.stdlib_files: + # self.ProcessFile(os.path.join(stdlib_dir, filename)) + ToRead += [os.path.join(stdlib_dir, filename)] + with open(dmefile, 'r') as dmeh: + for line in dmeh: + if line.startswith('#include'): + inString = False + # escaped=False + filename = '' + for c in line: + """ + if c == '\\' and not escaped: + escaped = True + continue + if escaped: + if + escaped = False + continue + """ + if c == '"': + inString = not inString + if not inString: + filepath = os.path.join(rootdir, filename) + if filepath.endswith(ext): + ToRead += [filepath] + filename = '' + continue + else: + if inString: + filename += c + + for filepath in ToRead: + md5 = md5sum(filepath) + if invalid or not cache.CheckFileHash(filepath, md5): + changed_files += 1 + cache.SetFileMD5(filepath, md5) + if invalid or self.skip_otr or changed_files > 0: + if invalid: + print('--- Rebuilding object tree - Parsing DM files...'.format(changed_files)) + else: + print('--- {0} changed files. Parsing DM files...'.format(changed_files)) + for f in ToRead: + self.ProcessFile(f) + print('--- Saving atoms...') + cache.StopReading() + cache.Save(self.Atoms) + self.MakeTree() + else: + print('--- No changes detected, using pickled atoms...') + self.Atoms = cache.ReadAtoms() + cache.StopReading() + self.MakeTree() + + def DetermineContext(self, filename, ln, line, numtabs, atom_prefix=[]): + ''' + Spit out the full path of the atom we're currently in. + + Does NOT update internal positioning. Think peek. + ''' + if numtabs == 0: + return None # Global context + + elif numtabs > self.pindent: + return '/'.join(self.cpath + atom_prefix) + + elif numtabs < self.pindent: + cpath_copy = list(self.cpath) + for _ in range(self.pindent - numtabs + 1): + popsToDo = self.popLevels.pop() + for _ in range(popsToDo): + cpath_copy.pop() + cpath_copy += atom_prefix + return '/'.join(cpath_copy) + + elif numtabs == self.pindent: + cpath_copy = list(self.cpath) + levelsToPop = self.popLevels.pop() + for _ in range(levelsToPop): + cpath_copy.pop() + cpath_copy += atom_prefix + return '/'.join(cpath_copy) + + + def ProcessAtom(self, filename, ln, line, atom, atom_path, numtabs, procArgs=None): + # Reserved words that show up on their own + if atom in ObjectTree.reserved_words: + return + + # Other things to ignore (false positives, comments) + if atom.startswith('var/') or atom.startswith('//'): + return + + # Things part of a string or list. + if numtabs > 0 and atom.strip().startswith('/'): + return + + if self.debugOn: print('{} > {}'.format(numtabs, line.rstrip())) + + if numtabs == 0: + self.cpath = atom_path + if len(self.cpath) == 0: + self.cpath += [''] + elif self.cpath[0] != '': + self.cpath.insert(0, '') + self.popLevels = [len(self.cpath)] + if self.debugOn: debug(filename, ln, self.cpath, '0 - ' + repr(atom_path)) + + elif numtabs > self.pindent: + self.cpath += atom_path + self.popLevels += [len(atom_path)] + if self.debugOn: debug(filename, ln, self.cpath, '>') + + elif numtabs < self.pindent: + if self.debugOn: print('({} - {})={}: {}'.format(self.pindent, numtabs, self.pindent - numtabs, repr(self.cpath))) + for _ in range(self.pindent - numtabs + 1): + popsToDo = self.popLevels.pop() + if self.debugOn: print(' pop {} {}'.format(popsToDo, self.popLevels)) + for i in range(popsToDo): + self.cpath.pop() + if self.debugOn: print(' pop {}/{}: {}'.format(i + 1, popsToDo, repr(self.cpath))) + self.cpath += atom_path + self.popLevels += [len(atom_path)] + if self.debugOn: debug(filename, ln, self.cpath, '<') + + elif numtabs == self.pindent: + levelsToPop = self.popLevels.pop() + for i in range(levelsToPop): + self.cpath.pop() + self.cpath += atom_path + self.popLevels += [len(atom_path)] + if self.debugOn: print('popLevels: ' + repr(self.popLevels)) + if self.debugOn: debug(filename, ln, self.cpath, '==') + + origpath = '/'.join(self.cpath) + # print(npath) + + # definition? + defs = [] + + # Trim off /proc or /var, if needed. + prep_path = list(self.cpath) + + for special in ['proc']: + if special in prep_path: + defs += [special] + prep_path.remove(special) + + npath = '/'.join(prep_path) + + if npath not in self.Atoms: + if procArgs is not None: + assert npath.endswith(')') + # if origpath != npath: + # print(origpath,proc_def) + proc = Proc(npath, procArgs, filename, ln) + proc.origpath = origpath + proc.definition = 'proc' in defs + self.Atoms[npath] = proc + else: + self.Atoms[npath] = Atom(npath, filename, ln) + # if self.debugOn: print('Added ' + npath) + self.pindent = numtabs + return self.Atoms[npath] + + def AddCodeToProc(self, startIndent, code): + if '\n' in code: + for line in code.split('\n'): + self.AddCodeToProc(startIndent, line) + else: + m = REGEX_TABS.match(code) + if m is not None: + numtabs = len(m.group('tabs')) + i = max(1, numtabs - startIndent) + # self.loadingProc.AddCode(i, '/* {0} */ {1}'.format(i,code.strip())) + self.loadingProc.AddCode(i, code.rstrip()) + + def finishComment(self, line, **args): + self.comments += [self.comment] + self.fileLayout += [('COMMENT', len(self.comments) - 1)] + if self.ignoreDebugOn: print('finishComment({}): {}'.format(line, self.comment)) + if self.loadingProc is not None and (args.get('cleansed_line', '') == '' and not self.comment.strip().startswith('//')): + self.AddCodeToProc(self.ignoreStartIndent, self.comment) + self.comment = '' + + def handleOBToken(self, name, context, params): + if context is not None: + context = self.Atoms[context] + name = 'ob_{0}'.format(name.lower()) + getattr(self, name)(context, *params) + + def ProcessFile(self, filename): + self.cpath = [] + self.popLevels = [] + self.pindent = 0 # Previous Indent + self.ignoreLevel = [] + self.debugOn = False + self.ignoreDebugOn = False + self.ignoreStartIndent = -1 + self.loadingProc = None + self.comment = '' + self.fileLayout = [] + self.lineBeforePreprocessing = '' + self.current_filename = filename + with open(filename, 'r') as f: + ln = 0 + ignoreLevel = [] + + for line in f: + ln += 1 + + skipNextChar = False + nl = '' + + line = line.rstrip() + self.lineBeforePreprocessing = line + line_len = len(line) + for i in xrange(line_len): + c = line[i] + nc = '' + if line_len > i + 1: + nc = line[i + 1] + tok = c + nc + # print(tok) + if skipNextChar: + if self.ignoreDebugOn: print('Skipping {}.'.format(repr(tok))) + skipNextChar = False + # self.comment += c + if self.ignoreDebugOn: print('self.comment = {}.'.format(repr(self.comment))) + continue + if tok == '//': + # if self.ignoreDebugOn: debug(filename,ln,self.cpath,'{} ({})'.format(tok,len(ignoreLevel))) + if len(ignoreLevel) == 0: + self.comment = line[i:] + # if self.ignoreDebugOn: print('self.comment = {}.'.format(repr(self.comment))) + # print('Found '+self.comment) + self.finishComment('243', cleaned_line=nl) + break + if tok in self.ignoreTokens: + pc = '' + if i > 0: + pc = line[i - 1] + if tok == '{"' and pc == '"': + self.comment += c + continue + # if self.ignoreDebugOn: print(repr(self.ignoreTokens[tok])) + stop = self.ignoreTokens[tok] + if stop == None: # End comment + if len(ignoreLevel) > 0: + if ignoreLevel[-1] == tok: + skipNextChar = True + self.comment += tok + ignoreLevel.pop() + if len(ignoreLevel) == 0: + self.finishComment('261') + continue + else: + self.comment += c + continue + else: # Start comment + skipNextChar = True + ignoreLevel += [stop] + self.comment = tok + continue + if self.ignoreDebugOn: debug(filename, ln, self.cpath, '{} ({})'.format(tok, len(ignoreLevel))) + if len(ignoreLevel) == 0: + nl += c + else: + self.comment += c + if line != nl: + if self.ignoreDebugOn: print('IN : ' + line) + line = nl + if self.ignoreDebugOn: print('OUT: ' + line) + if self.ignoreDebugOn: print('self.comment = {}.'.format(repr(self.comment))) + + if len(ignoreLevel) > 0: + self.comment += "\n" + continue + + line = REGEX_LINE_COMMENT.sub('', line) + + if line.strip() == '': + if self.loadingProc is not None: + self.loadingProc.AddBlankLine() + continue + + # Preprocessing defines. + if line.strip().startswith("#"): + if line.endswith('\\'): continue + tokenChunks = line.split('#') + tokenChunks = tokenChunks[1].split() + directive = tokenChunks[0] + if directive == 'define': + # #define SOMETHING Value + defineChunks = line.split(None, 3) + if len(defineChunks) == 2: + defineChunks += [1] + elif len(defineChunks) == 3: + defineChunks[2] = self.PreprocessLine(defineChunks[2]) + # print(repr(defineChunks)) + try: + if '.' in defineChunks[2]: + self.defines[defineChunks[1]] = BYONDValue(float(defineChunks[2]), filename, ln) + else: + self.defines[defineChunks[1]] = BYONDValue(int(defineChunks[2]), filename, ln) + except: + self.defines[defineChunks[1]] = BYONDString(defineChunks[2], filename, ln) + self.fileLayout += [('DEFINE', defineChunks[1], defineChunks[2])] + elif directive == 'undef': + undefChunks = line.split(' ', 2) + if undefChunks[1] in self.defines: + del self.defines[undefChunks[1]] + self.fileLayout += [('UNDEF', undefChunks[1])] + + # OpenBYOND tokens. + elif directive.startswith('__OB_'): + numtabs = 0 + m = REGEX_TABS.match(line) + if m is not None: + numtabs = len(m.group('tabs')) + atom = self.DetermineContext(filename, ln, line, numtabs) + # if atom is None: continue + # print('OBTOK {0}'.format(repr(tokenChunks))) + self.handleOBToken(tokenChunks[0].replace('__OB_', ''), atom, tokenChunks[1:]) + # self.fileLayout += [('OBTOK', atom.path)] + continue + else: + chunks = line.split(' ') + self.fileLayout += [('PP_TOKEN', line)] + print('BUG: Unhandled preprocessor directive #{} in {}:{}'.format(directive, filename, ln)) + continue + + # Preprocessing + line = self.PreprocessLine(line) + + m = REGEX_TABS.match(self.lineBeforePreprocessing) + if m is not None: + numtabs = len(m.group('tabs')) + if self.ignoreStartIndent > -1 and self.ignoreStartIndent < numtabs: + if self.loadingProc is not None: + # self.loadingProc.AddCode(numtabs - self.ignoreStartIndent, self.lineBeforePreprocessing.strip()) + self.AddCodeToProc(self.ignoreStartIndent, self.lineBeforePreprocessing) + if self.debugOn: print('TABS: {} ? {} - {}: {}'.format(numtabs, self.ignoreStartIndent, self.loadingProc, line)) + continue + else: + if self.debugOn and self.ignoreStartIndent > -1: print('BREAK ({} -> {}): {}'.format(self.ignoreStartIndent, numtabs, line)) + self.ignoreStartIndent = -1 + self.loadingProc = None + else: + if self.debugOn and self.ignoreStartIndent > -1: print('BREAK ' + line) + self.ignoreStartIndent = -1 + self.loadingProc = None + + if not line.strip().startswith('var/'): + m = REGEX_ATOMDEF.match(line) + if m is not None: + numtabs = len(m.group('tabs')) + atom = m.group('atom') + atom_path = self.SplitPath(atom) + atom = self.ProcessAtom(filename, ln, line, atom, atom_path, numtabs) + if atom is None: continue + self.fileLayout += [('ATOMDEF', atom.path)] + continue + + m = REGEX_ABSOLUTE_PROCDEF.match(line) + if m is not None: + numtabs = len(m.group('tabs')) + atom = '{0}/{1}({2})'.format(m.group('atom'), m.group("proc"), m.group('args')) + atom_path = self.SplitPath(atom) + # print('PROCESSING ABS PROC AT INDENT > ' + str(numtabs) + " " + atom+" -> "+repr(atom_path)) + proc = self.ProcessAtom(filename, ln, line, atom, atom_path, numtabs, m.group('args').split(',')) + if proc is None: continue + self.ignoreStartIndent = numtabs + self.loadingProc = proc + self.fileLayout += [('PROCDEF', proc.path)] + continue + + m = REGEX_RELATIVE_PROCDEF.match(line) + if m is not None: + numtabs = len(m.group('tabs')) + atom = '{}({})'.format(m.group("proc"), m.group('args')) + atom_path = self.SplitPath(atom) + # print('IGNORING RELATIVE PROC AT INDENT > ' + str(numtabs) + " " + line) + proc = self.ProcessAtom(filename, ln, line, atom, atom_path, numtabs, m.group('args').split(',')) + if proc is None: continue + self.ignoreStartIndent = numtabs + self.loadingProc = proc + self.fileLayout += [('PROCDEF', proc.path)] + continue + + path = '/'.join(self.cpath) + # if len(self.cpath) > 0 and 'proc' in self.cpath: + # continue + # if 'proc' in self.cpath: + # continue + if '=' in line or line.strip().startswith('var/'): + if path not in self.Atoms: + self.Atoms[path] = Atom(path) + name, prop = self.consumeVariable(line, filename, ln) + self.Atoms[path].properties[name] = prop + self.fileLayout += [('VAR', path, name)] + self.fileLayouts[filename] = self.fileLayout + + def consumeVariable(self, line, filename, ln): + declaration = False + value = None + size = None + + decl = '' + if self.LeavePreprocessorDirectives: + line = decl = self.lineBeforePreprocessing.strip() + else: + decl = line.strip() + if '[' in line: + line_split, arr_decl = line.split('[', 1) + str_size = arr_decl[:arr_decl.index(']')] + size = -1 + if str_size != '': + try: + size = int(str_size) + except ValueError: + pass + # print(repr({'size':size,'line':line_split})) + line = line_split + + if '=' in line: + decl, value = line.split('=', 1) + decl = decl.strip() + value = value.strip() + else: + decl = line.strip() + value = None + # print(repr({'decl':decl,'value':value})) + + # (var)(/global|const|tmp)(/type/fragment)name + if decl.startswith('var/'): + declaration = True + decl = decl[4:] + pathchunks = decl.split('/') + name = pathchunks[-1] + special = None + typepath = '/' + if declaration: + if pathchunks[0] in ('tmp', 'global', 'const'): + special = pathchunks[0] + pathchunks = pathchunks[1:] + if 'list' not in pathchunks and size is not None: + pathchunks = ['list'] + pathchunks + typepath = '/' + '/'.join(pathchunks[:-1]) + + kwargs = { + 'declaration':declaration, + 'special':special, + 'size':size + } + if typepath != '/': + return (name, BYONDValue(value, filename, ln, typepath, **kwargs)) + elif value and value[0] == '"': + return (name, BYONDString(value[1:-1], filename, ln, **kwargs)) + elif value and value[0] == "'": + return (name, BYONDFileRef(value[1:-1], filename, ln, **kwargs)) + elif value and '.' in value: + try: + return (name, BYONDValue(float(value), filename, ln, typepath, **kwargs)) + except ValueError: + pass + return (name, BYONDValue(value, filename, ln, typepath, **kwargs)) + + def MakeTree(self): + print('Generating Tree...') + self.Tree = Atom('/') + with open('objtree.txt', 'w') as f: + for key in sorted(self.Atoms): + f.write("{0}\n".format(key)) + atom = self.Atoms[key] + cpath = [] + cNode = self.Tree + fullpath = self.SplitPath(atom.path) + truncatedPath = fullpath[1:] + for path_item in truncatedPath: + cpath += [path_item] + cpath_str = '/'.join([''] + cpath) + # if path_item == 'var': + # if path_item not in cNode.properties: + # cNode.properties[fullpath[-1]]='???' + if path_item not in cNode.children: + if cpath_str in self.Atoms: + cNode.children[path_item] = self.Atoms[cpath_str] + else: + if '(' in path_item: + cNode.children[path_item] = Proc('/'.join([''] + cpath), []) + else: + cNode.children[path_item] = Atom('/'.join([''] + cpath),atom.filename,atom.line) + cNode.children[path_item].parent = cNode + parent_type = cNode.children[path_item].getProperty('parent_type') + if parent_type is not None: + print(' - Parent of {0} forced to be {1}'.format(cNode.children[path_item].path, repr(parent_type))) + cNode.children[path_item].parent = self.Atoms[parent_type] + cNode = cNode.children[path_item] + self.Tree.InheritProperties() + print('Processed {0} atoms.'.format(len(self.Atoms))) + # self.Atoms = {} + + def GetAtom(self, path): + if path in self.Atoms: + return self.Atoms[path] + + cpath = [] + cNode = self.Tree + fullpath = path.split('/') + truncatedPath = fullpath[1:] + for path_item in truncatedPath: + cpath += [path_item] + if path_item not in cNode.children: + print('Unable to find {0} (lost at {1})'.format(path, cNode.path)) + print(repr(cNode.children.keys())) + return None + cNode = cNode.children[path_item] + # print('Found {0}!'.format(path)) + self.Atoms[path] = cNode + return cNode + + + def PreprocessLine(self, line): + for key, define in self.defines.items(): + if key in line: + if key not in self.defineMatchers: + self.defineMatchers[key] = re.compile(r'\b' + key + r'\b') + newline = self.defineMatchers[key].sub(str(define.value), line) + if newline != line: + ''' + if filename.endswith('pipes.dm'): + print('OLD: {}'.format(line)) + print('PPD: {}'.format(newline)) + ''' + line = newline + return line diff --git a/tools/BYONDTools/byond/utils.py b/tools/BYONDTools/byond/utils.py new file mode 100644 index 00000000000..8f65a20e970 --- /dev/null +++ b/tools/BYONDTools/byond/utils.py @@ -0,0 +1,48 @@ +import hashlib, ast, os +import operator as op + +def md5sum(filename): + with open(filename, mode='rb') as f: + d = hashlib.md5() + while True: + buf = f.read(4096) # 128 is smaller than the typical filesystem block + if not buf: + break + d.update(buf) + return d.hexdigest().upper() + +# supported operators +operators = {ast.Add: op.add, ast.Sub: op.sub, ast.Mult: op.mul, + ast.Div: op.truediv, ast.Pow: op.pow, ast.BitXor: op.xor} + +def eval_expr(expr): + """ + >>> eval_expr('2^6') + 4 + >>> eval_expr('2**6') + 64 + >>> eval_expr('1 + 2*3**(4^5) / (6 + -7)') + -5.0 + """ + return eval_(ast.parse(expr).body[0].value) # Module(body=[Expr(value=...)]) + +def eval_(node): + if isinstance(node, ast.Num): # + return node.n + elif isinstance(node, ast.operator): # + return operators[type(node)] + elif isinstance(node, ast.BinOp): # + return eval_(node.op)(eval_(node.left), eval_(node.right)) + else: + raise TypeError(node) + + +_ROOT = os.path.abspath(os.path.dirname(__file__)) + +def get_data(path): + return os.path.join(_ROOT, 'data', path) + +def get_stdlib(path=''): + if path != '': + return os.path.join(get_data('stdlib'), path) + return get_data('stdlib') diff --git a/tools/BYONDTools/doc/Makefile b/tools/BYONDTools/doc/Makefile new file mode 100644 index 00000000000..affb8157b99 --- /dev/null +++ b/tools/BYONDTools/doc/Makefile @@ -0,0 +1,177 @@ +# Makefile for Sphinx documentation +# + +# You can set these variables from the command line. +SPHINXOPTS = +SPHINXBUILD = sphinx-build +PAPER = +BUILDDIR = _build + +# User-friendly check for sphinx-build +ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1) +$(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/) +endif + +# Internal variables. +PAPEROPT_a4 = -D latex_paper_size=a4 +PAPEROPT_letter = -D latex_paper_size=letter +ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . +# the i18n builder cannot share the environment and doctrees with the others +I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . + +.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext + +help: + @echo "Please use \`make ' where is one of" + @echo " html to make standalone HTML files" + @echo " dirhtml to make HTML files named index.html in directories" + @echo " singlehtml to make a single large HTML file" + @echo " pickle to make pickle files" + @echo " json to make JSON files" + @echo " htmlhelp to make HTML files and a HTML help project" + @echo " qthelp to make HTML files and a qthelp project" + @echo " devhelp to make HTML files and a Devhelp project" + @echo " epub to make an epub" + @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" + @echo " latexpdf to make LaTeX files and run them through pdflatex" + @echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx" + @echo " text to make text files" + @echo " man to make manual pages" + @echo " texinfo to make Texinfo files" + @echo " info to make Texinfo files and run them through makeinfo" + @echo " gettext to make PO message catalogs" + @echo " changes to make an overview of all changed/added/deprecated items" + @echo " xml to make Docutils-native XML files" + @echo " pseudoxml to make pseudoxml-XML files for display purposes" + @echo " linkcheck to check all external links for integrity" + @echo " doctest to run all doctests embedded in the documentation (if enabled)" + +clean: + rm -rf $(BUILDDIR)/* + +html: + $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html + @echo + @echo "Build finished. The HTML pages are in $(BUILDDIR)/html." + +dirhtml: + $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml + @echo + @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml." + +singlehtml: + $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml + @echo + @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml." + +pickle: + $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle + @echo + @echo "Build finished; now you can process the pickle files." + +json: + $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json + @echo + @echo "Build finished; now you can process the JSON files." + +htmlhelp: + $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp + @echo + @echo "Build finished; now you can run HTML Help Workshop with the" \ + ".hhp project file in $(BUILDDIR)/htmlhelp." + +qthelp: + $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp + @echo + @echo "Build finished; now you can run "qcollectiongenerator" with the" \ + ".qhcp project file in $(BUILDDIR)/qthelp, like this:" + @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/OpenBYOND.qhcp" + @echo "To view the help file:" + @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/OpenBYOND.qhc" + +devhelp: + $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp + @echo + @echo "Build finished." + @echo "To view the help file:" + @echo "# mkdir -p $$HOME/.local/share/devhelp/OpenBYOND" + @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/OpenBYOND" + @echo "# devhelp" + +epub: + $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub + @echo + @echo "Build finished. The epub file is in $(BUILDDIR)/epub." + +latex: + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex + @echo + @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex." + @echo "Run \`make' in that directory to run these through (pdf)latex" \ + "(use \`make latexpdf' here to do that automatically)." + +latexpdf: + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex + @echo "Running LaTeX files through pdflatex..." + $(MAKE) -C $(BUILDDIR)/latex all-pdf + @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." + +latexpdfja: + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex + @echo "Running LaTeX files through platex and dvipdfmx..." + $(MAKE) -C $(BUILDDIR)/latex all-pdf-ja + @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." + +text: + $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text + @echo + @echo "Build finished. The text files are in $(BUILDDIR)/text." + +man: + $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man + @echo + @echo "Build finished. The manual pages are in $(BUILDDIR)/man." + +texinfo: + $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo + @echo + @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo." + @echo "Run \`make' in that directory to run these through makeinfo" \ + "(use \`make info' here to do that automatically)." + +info: + $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo + @echo "Running Texinfo files through makeinfo..." + make -C $(BUILDDIR)/texinfo info + @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo." + +gettext: + $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale + @echo + @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale." + +changes: + $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes + @echo + @echo "The overview file is in $(BUILDDIR)/changes." + +linkcheck: + $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck + @echo + @echo "Link check complete; look for any errors in the above output " \ + "or in $(BUILDDIR)/linkcheck/output.txt." + +doctest: + $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest + @echo "Testing of doctests in the sources finished, look at the " \ + "results in $(BUILDDIR)/doctest/output.txt." + +xml: + $(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml + @echo + @echo "Build finished. The XML files are in $(BUILDDIR)/xml." + +pseudoxml: + $(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml + @echo + @echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml." diff --git a/tools/BYONDTools/doc/build_html_docs.bat b/tools/BYONDTools/doc/build_html_docs.bat new file mode 100644 index 00000000000..e963e472f4b --- /dev/null +++ b/tools/BYONDTools/doc/build_html_docs.bat @@ -0,0 +1,3 @@ +rm -rf _build +call make html +pause \ No newline at end of file diff --git a/tools/BYONDTools/doc/byond/basetypes.rst b/tools/BYONDTools/doc/byond/basetypes.rst new file mode 100644 index 00000000000..cca681f2149 --- /dev/null +++ b/tools/BYONDTools/doc/byond/basetypes.rst @@ -0,0 +1,28 @@ +.. module:: com.byond.basetypes + +:mod:`com.byond.basetypes` -- Basic BYOND Types +=============================================== + +Basic Types +----------- + +.. autoclass:: BYONDValue + :members: + +.. autoclass:: BYONDFileRef + :members: + +.. autoclass:: BYONDString + :members: + +Atoms and Procs +--------------- + +.. autoclass:: PropertyFlags + :members: + +.. autoclass:: Atom + :members: + +.. autoclass:: Proc + :members: \ No newline at end of file diff --git a/tools/BYONDTools/doc/conf.py b/tools/BYONDTools/doc/conf.py new file mode 100644 index 00000000000..5852651384b --- /dev/null +++ b/tools/BYONDTools/doc/conf.py @@ -0,0 +1,266 @@ +# -*- coding: utf-8 -*- +# +# OpenBYOND documentation build configuration file, created by +# sphinx-quickstart on Fri Feb 07 20:03:28 2014. +# +# This file is execfile()d with the current directory set to its +# containing dir. +# +# Note that not all possible configuration values are present in this +# autogenerated file. +# +# All configuration values have a default; values that are commented out +# serve to show the default. + +import sys +import os + +# If extensions (or modules to document with autodoc) are in another directory, +# add these directories to sys.path here. If the directory is relative to the +# documentation root, use os.path.abspath to make it absolute, like shown here. +sys.path.insert(0, os.path.abspath('../src')) + +# -- General configuration ------------------------------------------------ + +# If your documentation needs a minimal Sphinx version, state it here. +#needs_sphinx = '1.0' + +# Add any Sphinx extension module names here, as strings. They can be +# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom +# ones. +extensions = [ + 'sphinx.ext.autodoc', + 'sphinx.ext.todo', + 'sphinx.ext.coverage', + 'sphinx.ext.pngmath', + 'sphinx.ext.viewcode', +] + +# Add any paths that contain templates here, relative to this directory. +templates_path = ['_templates'] + +# The suffix of source filenames. +source_suffix = '.rst' + +# The encoding of source files. +#source_encoding = 'utf-8-sig' + +# The master toctree document. +master_doc = 'index' + +# General information about the project. +project = u'BYONDTools' +copyright = u'2013-2014 BYONDTools Team' + +# The version info for the project you're documenting, acts as replacement for +# |version| and |release|, also used in various other places throughout the +# built documents. +# +# The short X.Y version. +version = '0.1' +# The full version, including alpha/beta/rc tags. +release = '0.1.0' + +# The language for content autogenerated by Sphinx. Refer to documentation +# for a list of supported languages. +#language = None + +# There are two options for replacing |today|: either, you set today to some +# non-false value, then it is used: +#today = '' +# Else, today_fmt is used as the format for a strftime call. +#today_fmt = '%B %d, %Y' + +# List of patterns, relative to source directory, that match files and +# directories to ignore when looking for source files. +exclude_patterns = ['_build'] + +# The reST default role (used for this markup: `text`) to use for all +# documents. +#default_role = None + +# If true, '()' will be appended to :func: etc. cross-reference text. +#add_function_parentheses = True + +# If true, the current module name will be prepended to all description +# unit titles (such as .. function::). +#add_module_names = True + +# If true, sectionauthor and moduleauthor directives will be shown in the +# output. They are ignored by default. +#show_authors = False + +# The name of the Pygments (syntax highlighting) style to use. +pygments_style = 'sphinx' + +# A list of ignored prefixes for module index sorting. +#modindex_common_prefix = [] + +# If true, keep warnings as "system message" paragraphs in the built documents. +#keep_warnings = False + + +# -- Options for HTML output ---------------------------------------------- + +# The theme to use for HTML and HTML Help pages. See the documentation for +# a list of builtin themes. +html_theme = 'default' + +# Theme options are theme-specific and customize the look and feel of a theme +# further. For a list of options available for each theme, see the +# documentation. +#html_theme_options = {} + +# Add any paths that contain custom themes here, relative to this directory. +#html_theme_path = [] + +# The name for this set of Sphinx documents. If None, it defaults to +# " v documentation". +#html_title = None + +# A shorter title for the navigation bar. Default is the same as html_title. +#html_short_title = None + +# The name of an image file (relative to this directory) to place at the top +# of the sidebar. +#html_logo = None + +# The name of an image file (within the static path) to use as favicon of the +# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 +# pixels large. +#html_favicon = None + +# Add any paths that contain custom static files (such as style sheets) here, +# relative to this directory. They are copied after the builtin static files, +# so a file named "default.css" will overwrite the builtin "default.css". +html_static_path = ['_static'] + +# Add any extra paths that contain custom files (such as robots.txt or +# .htaccess) here, relative to this directory. These files are copied +# directly to the root of the documentation. +#html_extra_path = [] + +# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, +# using the given strftime format. +#html_last_updated_fmt = '%b %d, %Y' + +# If true, SmartyPants will be used to convert quotes and dashes to +# typographically correct entities. +#html_use_smartypants = True + +# Custom sidebar templates, maps document names to template names. +#html_sidebars = {} + +# Additional templates that should be rendered to pages, maps page names to +# template names. +#html_additional_pages = {} + +# If false, no module index is generated. +#html_domain_indices = True + +# If false, no index is generated. +#html_use_index = True + +# If true, the index is split into individual pages for each letter. +#html_split_index = False + +# If true, links to the reST sources are added to the pages. +#html_show_sourcelink = True + +# If true, "Created using Sphinx" is shown in the HTML footer. Default is True. +#html_show_sphinx = True + +# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. +#html_show_copyright = True + +# If true, an OpenSearch description file will be output, and all pages will +# contain a tag referring to it. The value of this option must be the +# base URL from which the finished HTML is served. +#html_use_opensearch = '' + +# This is the file name suffix for HTML files (e.g. ".xhtml"). +#html_file_suffix = None + +# Output file base name for HTML help builder. +htmlhelp_basename = 'OpenBYONDdoc' + + +# -- Options for LaTeX output --------------------------------------------- + +latex_elements = { +# The paper size ('letterpaper' or 'a4paper'). +#'papersize': 'letterpaper', + +# The font size ('10pt', '11pt' or '12pt'). +#'pointsize': '10pt', + +# Additional stuff for the LaTeX preamble. +#'preamble': '', +} + +# Grouping the document tree into LaTeX files. List of tuples +# (source start file, target name, title, +# author, documentclass [howto, manual, or own class]). +latex_documents = [ + ('index', 'OpenBYOND.tex', u'OpenBYOND Documentation', + u'OpenBYOND Team', 'manual'), +] + +# The name of an image file (relative to this directory) to place at the top of +# the title page. +#latex_logo = None + +# For "manual" documents, if this is true, then toplevel headings are parts, +# not chapters. +#latex_use_parts = False + +# If true, show page references after internal links. +#latex_show_pagerefs = False + +# If true, show URL addresses after external links. +#latex_show_urls = False + +# Documents to append as an appendix to all manuals. +#latex_appendices = [] + +# If false, no module index is generated. +#latex_domain_indices = True + + +# -- Options for manual page output --------------------------------------- + +# One entry per manual page. List of tuples +# (source start file, name, description, authors, manual section). +man_pages = [ + ('index', 'openbyond', u'OpenBYOND Documentation', + [u'OpenBYOND Team'], 1) +] + +# If true, show URL addresses after external links. +#man_show_urls = False + + +# -- Options for Texinfo output ------------------------------------------- + +# Grouping the document tree into Texinfo files. List of tuples +# (source start file, target name, title, author, +# dir menu entry, description, category) +texinfo_documents = [ + ('index', 'OpenBYOND', u'OpenBYOND Documentation', + u'OpenBYOND Team', 'OpenBYOND', 'One line description of project.', + 'Miscellaneous'), +] + +# Documents to append as an appendix to all manuals. +#texinfo_appendices = [] + +# If false, no module index is generated. +#texinfo_domain_indices = True + +# How to display URL addresses: 'footnote', 'no', or 'inline'. +#texinfo_show_urls = 'footnote' + +# If true, do not generate a @detailmenu in the "Top" node's menu. +#texinfo_no_detailmenu = False + +primary_domain = 'py' \ No newline at end of file diff --git a/tools/BYONDTools/doc/index.rst b/tools/BYONDTools/doc/index.rst new file mode 100644 index 00000000000..9504c105da5 --- /dev/null +++ b/tools/BYONDTools/doc/index.rst @@ -0,0 +1,18 @@ +OpenBYOND +========= + +Contents: + +.. toctree:: + :maxdepth: 2 + + byond/basetypes + + +Indices and tables +================== + +* :ref:`genindex` +* :ref:`modindex` +* :ref:`search` + diff --git a/tools/BYONDTools/doc/make.bat b/tools/BYONDTools/doc/make.bat new file mode 100644 index 00000000000..133faa3594c --- /dev/null +++ b/tools/BYONDTools/doc/make.bat @@ -0,0 +1,242 @@ +@ECHO OFF + +REM Command file for Sphinx documentation + +if "%SPHINXBUILD%" == "" ( + set SPHINXBUILD=sphinx-build +) +set BUILDDIR=_build +set ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% . +set I18NSPHINXOPTS=%SPHINXOPTS% . +if NOT "%PAPER%" == "" ( + set ALLSPHINXOPTS=-D latex_paper_size=%PAPER% %ALLSPHINXOPTS% + set I18NSPHINXOPTS=-D latex_paper_size=%PAPER% %I18NSPHINXOPTS% +) + +if "%1" == "" goto help + +if "%1" == "help" ( + :help + echo.Please use `make ^` where ^ is one of + echo. html to make standalone HTML files + echo. dirhtml to make HTML files named index.html in directories + echo. singlehtml to make a single large HTML file + echo. pickle to make pickle files + echo. json to make JSON files + echo. htmlhelp to make HTML files and a HTML help project + echo. qthelp to make HTML files and a qthelp project + echo. devhelp to make HTML files and a Devhelp project + echo. epub to make an epub + echo. latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter + echo. text to make text files + echo. man to make manual pages + echo. texinfo to make Texinfo files + echo. gettext to make PO message catalogs + echo. changes to make an overview over all changed/added/deprecated items + echo. xml to make Docutils-native XML files + echo. pseudoxml to make pseudoxml-XML files for display purposes + echo. linkcheck to check all external links for integrity + echo. doctest to run all doctests embedded in the documentation if enabled + goto end +) + +if "%1" == "clean" ( + for /d %%i in (%BUILDDIR%\*) do rmdir /q /s %%i + del /q /s %BUILDDIR%\* + goto end +) + + +%SPHINXBUILD% 2> nul +if errorlevel 9009 ( + echo. + echo.The 'sphinx-build' command was not found. Make sure you have Sphinx + echo.installed, then set the SPHINXBUILD environment variable to point + echo.to the full path of the 'sphinx-build' executable. Alternatively you + echo.may add the Sphinx directory to PATH. + echo. + echo.If you don't have Sphinx installed, grab it from + echo.http://sphinx-doc.org/ + exit /b 1 +) + +if "%1" == "html" ( + %SPHINXBUILD% -b html %ALLSPHINXOPTS% %BUILDDIR%/html + if errorlevel 1 exit /b 1 + echo. + echo.Build finished. The HTML pages are in %BUILDDIR%/html. + goto end +) + +if "%1" == "dirhtml" ( + %SPHINXBUILD% -b dirhtml %ALLSPHINXOPTS% %BUILDDIR%/dirhtml + if errorlevel 1 exit /b 1 + echo. + echo.Build finished. The HTML pages are in %BUILDDIR%/dirhtml. + goto end +) + +if "%1" == "singlehtml" ( + %SPHINXBUILD% -b singlehtml %ALLSPHINXOPTS% %BUILDDIR%/singlehtml + if errorlevel 1 exit /b 1 + echo. + echo.Build finished. The HTML pages are in %BUILDDIR%/singlehtml. + goto end +) + +if "%1" == "pickle" ( + %SPHINXBUILD% -b pickle %ALLSPHINXOPTS% %BUILDDIR%/pickle + if errorlevel 1 exit /b 1 + echo. + echo.Build finished; now you can process the pickle files. + goto end +) + +if "%1" == "json" ( + %SPHINXBUILD% -b json %ALLSPHINXOPTS% %BUILDDIR%/json + if errorlevel 1 exit /b 1 + echo. + echo.Build finished; now you can process the JSON files. + goto end +) + +if "%1" == "htmlhelp" ( + %SPHINXBUILD% -b htmlhelp %ALLSPHINXOPTS% %BUILDDIR%/htmlhelp + if errorlevel 1 exit /b 1 + echo. + echo.Build finished; now you can run HTML Help Workshop with the ^ +.hhp project file in %BUILDDIR%/htmlhelp. + goto end +) + +if "%1" == "qthelp" ( + %SPHINXBUILD% -b qthelp %ALLSPHINXOPTS% %BUILDDIR%/qthelp + if errorlevel 1 exit /b 1 + echo. + echo.Build finished; now you can run "qcollectiongenerator" with the ^ +.qhcp project file in %BUILDDIR%/qthelp, like this: + echo.^> qcollectiongenerator %BUILDDIR%\qthelp\OpenBYOND.qhcp + echo.To view the help file: + echo.^> assistant -collectionFile %BUILDDIR%\qthelp\OpenBYOND.ghc + goto end +) + +if "%1" == "devhelp" ( + %SPHINXBUILD% -b devhelp %ALLSPHINXOPTS% %BUILDDIR%/devhelp + if errorlevel 1 exit /b 1 + echo. + echo.Build finished. + goto end +) + +if "%1" == "epub" ( + %SPHINXBUILD% -b epub %ALLSPHINXOPTS% %BUILDDIR%/epub + if errorlevel 1 exit /b 1 + echo. + echo.Build finished. The epub file is in %BUILDDIR%/epub. + goto end +) + +if "%1" == "latex" ( + %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex + if errorlevel 1 exit /b 1 + echo. + echo.Build finished; the LaTeX files are in %BUILDDIR%/latex. + goto end +) + +if "%1" == "latexpdf" ( + %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex + cd %BUILDDIR%/latex + make all-pdf + cd %BUILDDIR%/.. + echo. + echo.Build finished; the PDF files are in %BUILDDIR%/latex. + goto end +) + +if "%1" == "latexpdfja" ( + %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex + cd %BUILDDIR%/latex + make all-pdf-ja + cd %BUILDDIR%/.. + echo. + echo.Build finished; the PDF files are in %BUILDDIR%/latex. + goto end +) + +if "%1" == "text" ( + %SPHINXBUILD% -b text %ALLSPHINXOPTS% %BUILDDIR%/text + if errorlevel 1 exit /b 1 + echo. + echo.Build finished. The text files are in %BUILDDIR%/text. + goto end +) + +if "%1" == "man" ( + %SPHINXBUILD% -b man %ALLSPHINXOPTS% %BUILDDIR%/man + if errorlevel 1 exit /b 1 + echo. + echo.Build finished. The manual pages are in %BUILDDIR%/man. + goto end +) + +if "%1" == "texinfo" ( + %SPHINXBUILD% -b texinfo %ALLSPHINXOPTS% %BUILDDIR%/texinfo + if errorlevel 1 exit /b 1 + echo. + echo.Build finished. The Texinfo files are in %BUILDDIR%/texinfo. + goto end +) + +if "%1" == "gettext" ( + %SPHINXBUILD% -b gettext %I18NSPHINXOPTS% %BUILDDIR%/locale + if errorlevel 1 exit /b 1 + echo. + echo.Build finished. The message catalogs are in %BUILDDIR%/locale. + goto end +) + +if "%1" == "changes" ( + %SPHINXBUILD% -b changes %ALLSPHINXOPTS% %BUILDDIR%/changes + if errorlevel 1 exit /b 1 + echo. + echo.The overview file is in %BUILDDIR%/changes. + goto end +) + +if "%1" == "linkcheck" ( + %SPHINXBUILD% -b linkcheck %ALLSPHINXOPTS% %BUILDDIR%/linkcheck + if errorlevel 1 exit /b 1 + echo. + echo.Link check complete; look for any errors in the above output ^ +or in %BUILDDIR%/linkcheck/output.txt. + goto end +) + +if "%1" == "doctest" ( + %SPHINXBUILD% -b doctest %ALLSPHINXOPTS% %BUILDDIR%/doctest + if errorlevel 1 exit /b 1 + echo. + echo.Testing of doctests in the sources finished, look at the ^ +results in %BUILDDIR%/doctest/output.txt. + goto end +) + +if "%1" == "xml" ( + %SPHINXBUILD% -b xml %ALLSPHINXOPTS% %BUILDDIR%/xml + if errorlevel 1 exit /b 1 + echo. + echo.Build finished. The XML files are in %BUILDDIR%/xml. + goto end +) + +if "%1" == "pseudoxml" ( + %SPHINXBUILD% -b pseudoxml %ALLSPHINXOPTS% %BUILDDIR%/pseudoxml + if errorlevel 1 exit /b 1 + echo. + echo.Build finished. The pseudo-XML files are in %BUILDDIR%/pseudoxml. + goto end +) + +:end diff --git a/tools/BYONDTools/scripts/byondtools-postinstall.py b/tools/BYONDTools/scripts/byondtools-postinstall.py new file mode 100644 index 00000000000..ea57bbc2990 --- /dev/null +++ b/tools/BYONDTools/scripts/byondtools-postinstall.py @@ -0,0 +1,50 @@ +#------------------------------------------------------------------------------ +# Originally cxfreeze-postinstall +# Script run after installation on Windows to fix up the Python location in +# the script as well as create batch files. +#------------------------------------------------------------------------------ + +import distutils.sysconfig +import glob +import os + +vars = distutils.sysconfig.get_config_vars() +prefix = vars["prefix"] +python = os.path.join(prefix, "python.exe") +scriptDir = os.path.join(prefix, "Scripts") + +# Keep in-sync with setup.py. +scripts = [ + 'dmm', + 'dmi', + 'dmindent', + 'dmmrender', + 'dmmfix', + + 'ss13_makeinhands' +] +for fileName in glob.glob(os.path.join(scriptDir, "*.py")): + # skip already created batch files if they exist + name, ext = os.path.splitext(os.path.basename(fileName)) + if name not in scripts: + continue + + print('Running post-install for {}.'.format(name)) + # copy the file with the first line replaced with the correct python + fullName = os.path.join(scriptDir, fileName) + strippedName = os.path.join(scriptDir, name) + lines = open(fullName).readlines() + startidx=1 + if not lines[0].strip().startswith('#!'): + print('WARNING: {} does not have a shebang.'.format(lines[0])) + startidx=0 + outFile = open(fullName, "w") + outFile.write("#!%s\n" % python) + outFile.writelines(lines[startidx:]) + outFile.close() + + # create the batch file + batchFileName = strippedName + ".bat" + command = "%s %s %%*" % (python, fullName) + open(batchFileName, "w").write("@echo off\n\n%s" % command) + diff --git a/tools/BYONDTools/scripts/calculateMaxTechLevels.py b/tools/BYONDTools/scripts/calculateMaxTechLevels.py new file mode 100644 index 00000000000..597925d22af --- /dev/null +++ b/tools/BYONDTools/scripts/calculateMaxTechLevels.py @@ -0,0 +1,107 @@ +#!/usr/bin/env python +""" +Usage: + $ python calculateMaxTechLevels.py path/to/your.dme .dm + +calculateMaxTechLevels.py - Get techlevels of all objects and generate reports. + +Copyright 2013 Rob "N3X15" Nelson + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +""" +import os, sys, re +from byond.objtree import ObjectTree +from byond.basetypes import Atom, Proc + +# Calculated Max Tech Levels. +CMTLs = {} + +# All known atoms with tech origins. +AtomTechOrigins = {} + +def ProcessTechLevels(atom, path=''): + global CMTLs, AtomTechOrigins + if path.endswith(')'): + # print('ignoring '+path) + return + for key, val in atom.properties.iteritems(): + # if 'obj' in path: print('{}: {}'.format(path,key)) + if key == 'origin_tech': + tech_origin = {} + # materials=9;bluespace=10;magnets=3 + text_origin_tech = atom.getProperty('origin_tech', 'null') + if text_origin_tech == 'null' or text_origin_tech == '': + continue + techchunks = text_origin_tech.split(';') + for techchunk in techchunks: + parts = techchunk.split('=') + if len(parts) != 2: + print('Improperly formed origin_tech in {0}: {1}'.format(atom.path, val.value)) + continue + tech = parts[0] + level = int(parts[1]) + tech_origin[tech] = level + if tech not in CMTLs: + CMTLs[tech] = level + if CMTLs[tech] < level: + CMTLs[tech] = level + AtomTechOrigins[path] = tech_origin + break + for key, child in atom.children.iteritems(): + ProcessTechLevels(child, path + '/' + key) + +def prettify(tree, indent=0): + prefix = ' ' * indent + for key in tree.iterkeys(): + atom = tree[key] + print('{}{}/'.format(prefix, key)) + prettify(atom.children, indent + len(key)) + for propkey, value in atom.properties.iteritems(): + print('{}var/{} = {}'.format(' ' * (indent + len(key)), propkey, repr(value))) + +if os.path.isfile(sys.argv[1]): + tree = ObjectTree() + tree.ProcessFilesFromDME(sys.argv[1]) + ProcessTechLevels(tree.Tree) + with open(os.path.join(os.path.dirname(sys.argv[1]), 'tech_origin_list.csv'), 'w') as w: + with open(os.path.join(os.path.dirname(sys.argv[1]), 'max_tech_origins.txt'), 'w') as mto: + tech_columns = [] + mto.write('Calculated Max Tech Levels:\n These tech levels have been determined by parsing ALL origin_tech variables in code included by {0}.\n'.format(sys.argv[1])) + for tech in sorted(CMTLs.keys()): + tech_columns.append(tech) + mto.write('{:>15}: {}\n'.format(tech, CMTLs[tech])) + w.write(','.join(['Atom', 'Name'] + tech_columns) + "\n") + for path in sorted(AtomTechOrigins.keys()): + row = [] + row.append(path) + atom = tree.GetAtom(path) + name = atom.properties.get('name', None) + if name is None: + name = '' + else: + name = name.value + row.append('"' + name.replace('"', '""') + '"') + for tech in tech_columns: + if tech in AtomTechOrigins[path]: + row.append(str(AtomTechOrigins[path][tech])) + else: + row.append('') + w.write(','.join(row) + "\n") + # prettify(tree.Tree.children) diff --git a/tools/BYONDTools/scripts/checkForStringIdiocy.py b/tools/BYONDTools/scripts/checkForStringIdiocy.py new file mode 100644 index 00000000000..6f023fcb589 --- /dev/null +++ b/tools/BYONDTools/scripts/checkForStringIdiocy.py @@ -0,0 +1,163 @@ +#!/usr/bin/env python +import os, sys, re +""" +Usage: + $ python fix_string_idiocy.py path/to/your.dme .dm + +NOTE: NOT PERFECT, CREATES code-fixed DIRECTORY. +*** MERGE THIS MANUALLY OR YOU WILL BREAK SHIT. *** + +fix_string_idiocy.py - Combines multiple string append operations in DreamMaker code + +Copyright 2013 Rob "N3X15" Nelson + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +""" +REGEX_TO_COMBINE_AS_BLOCK = re.compile('^(?P\t+)(?Pvar/)?(?P[A-Za-z\.]+)\s*(?P\+?)=\s*"(?P.+)"\s*$') +def ProcessFile(filename): + fuckups = [] + with open(filename, 'r') as f: + lastID = '' + declaring = False + lastLevel = 0 + lastWasAlert = False + buffa = '' + tempbuffa = '' + tempfuckup = '' + tempBackup = '' + origIndentLevel = 0 + ln = 0 + for line in f: + ln += 1 + m = REGEX_TO_COMBINE_AS_BLOCK.match(line) + if m is not None: + level = m.group('tabs').count('\t') + ID = m.group('identifier') + content = m.group('content').strip() + indent = '\t' * level + # indentMore = '\t' * (level + 1) + if ID == lastID and level == lastLevel: + if not lastWasAlert: + buffa += '\n' + indent + '// AUTOFIXED BY fix_string_idiocy.py' + buffa += '\n' + indent + '// ' + tempfuckup + buffa += '\n' + tempbuffa + print(tempfuckup) + fuckups.append(tempfuckup) + msg = '{0}:{1}: {2}'.format(filename, ln, line.strip()) + print(msg) + fuckups.append(msg) + buffa += '\n' + # buffa += indentMore + buffa += content + lastWasAlert = True + else: + if lastWasAlert: + buffa += '"}' + buffa += '\n' + ('\t' * origIndentLevel) + '// END AUTOFIX' + buffa += '\n' + lastWasAlert = False + if tempBackup != '': + buffa += tempBackup + tempBackup = line + tempbuffa = indent + origIndentLevel = level + if m.group('declaration') is None: + tempbuffa += '{0} {2}= {{"{1}'.format(ID, content, m.group('operator')) + else: + tempbuffa += 'var/{0} {2}= {{"{1}'.format(ID, content, m.group('operator')) + tempfuckup = '{0}:{1}: {2}'.format(filename, ln, line.strip()) + lastID = ID + lastLevel = level + else: + if line.strip() == '': + tempBackup += line + continue + if lastWasAlert: + buffa += '"}' + buffa += '\n' + indent + '// END AUTOFIX' + buffa += '\n' + lastWasAlert = False + tempBackup = '' + if tempBackup != '': + buffa += tempBackup + tempBackup = '' + lastID = '' + lastLevel = '' + buffa += line + fixpaths = ['code', 'interface', 'RandomZLevels', '_maps'] + fixpath=filename + for fp in fixpaths: + fixpath = fixpath.replace(fp + os.sep, fp + '-fixed' + os.sep) + if len(fuckups) > 0: + if not os.path.isdir(os.path.dirname(fixpath)): + os.makedirs(os.path.dirname(fixpath)) + with open(fixpath, 'w') as fixes: + fixes.write(buffa) + else: + if os.path.isfile(fixpath): + print('RM {0} ({1})'.format(fixpath,os.sep)) + os.remove(fixpath) + # print(' Processed - {0} lines.'.format(ln)) + return fuckups + +def ProcessFilesFromDME(dmefile='baystation12.dme', ext='.dm'): + numFilesTotal = 0 + fileFuckups = {} + rootdir = os.path.dirname(dmefile) + with open(os.path.join(rootdir, 'stringcounts.csv'), 'w') as csv: + with open(dmefile, 'r') as dmeh: + for line in dmeh: + if line.startswith('#include'): + inString = False + # escaped=False + filename = '' + for c in line: + """ + if c == '\\' and not escaped: + escaped = True + continue + if escaped: + if + escaped = False + continue + """ + if c == '"': + inString = not inString + if not inString: + filepath = os.path.join(rootdir, filename) + if filepath.endswith(ext): + # print('Processing {0}...'.format(filepath)) + fileFuckups[filepath] = ProcessFile(filepath) + numFilesTotal += 1 + filename = '' + continue + else: + if inString: + filename += c + +if os.path.isdir(sys.argv[1]): + for root, _, files in os.walk(sys.argv[1]): + for filename in files: + filepath = os.path.join(root, filename) + if filepath.endswith('.dme'): + ProcessFilesFromDME(filepath, sys.argv[2]) + sys.exit(0) +if os.path.isfile(sys.argv[1]): + ProcessFilesFromDME(sys.argv[1], sys.argv[2]) diff --git a/tools/BYONDTools/scripts/dmi.py b/tools/BYONDTools/scripts/dmi.py new file mode 100644 index 00000000000..db8db2abe82 --- /dev/null +++ b/tools/BYONDTools/scripts/dmi.py @@ -0,0 +1,278 @@ +#!/usr/bin/env python +""" +DMI SPLITTER-UPPER THING + +Makes merging sprites a hell of a lot easier. +by N3X15 + +Requires PIL +Written for Python 2.7. +""" + +import sys, os, traceback, fnmatch, argparse + +from byond.DMI import DMI + +args = () + +def main(): + opt = argparse.ArgumentParser() # version='0.1') + opt.add_argument('-p', '--suppress-post-processing', dest='suppress_post_process', default=False, action='store_true') + command = opt.add_subparsers(help='The command you wish to execute', dest='MODE') + + _disassemble = command.add_parser('disassemble', help='Disassemble a single DMI file to a destination directory') + _disassemble.add_argument('file', type=str, help='The DMI file to disassemble.', metavar='file.dmi') + _disassemble.add_argument('destination', type=str, help='The directory in which to dump the resulting images.', metavar='dest/') + + _disassemble_all = command.add_parser('disassemble-all', help='Disassemble a directory of DMI files to a destination directory') + _disassemble_all.add_argument('source', type=str, help='The DMI files to disassemble.', metavar='source/') + _disassemble_all.add_argument('destination', type=str, help='The directory in which to dump the resulting images.', metavar='dest/') + + _compile = command.add_parser('compile', help='Compile a .dmi.mak file') + _compile.add_argument('makefile', type=str, help='The .dmi.mak file to compile.', metavar='file.dmi.mak') + _compile.add_argument('destination', type=str, help='The location of the resulting .dmi file.', metavar='file.dmi') + + _compare = command.add_parser('compare', help='Compare two DMI files and note the differences') + _compare.add_argument('theirs', type=str, help='One side of the difference', metavar='theirs.dmi') + _compare.add_argument('mine', type=str, help='The other side.', metavar='mine.dmi') + + _compare_all = command.add_parser('compare-all', help='Compare two DMI file directories and note the differences') + _compare_all.add_argument('theirs', type=str, help='One side of the difference', metavar='theirs/') + _compare_all.add_argument('mine', type=str, help='The other side.', metavar='mine/') + _compare_all.add_argument('report', type=str, help='The file the report is saved to', metavar='report.txt') + + _get_dmi_data = command.add_parser('get-dmi-data', help='Extract DMI header') + _get_dmi_data.add_argument('file', type=str, help='DMI file', metavar='file.dmi') + _get_dmi_data.add_argument('dest', type=str, help='The file where the DMI header will be saved', metavar='dest.txt') + + _set_dmi_data = command.add_parser('set-dmi-data', help='Set DMI header') + _set_dmi_data.add_argument('file', type=str, help='One side of the difference', metavar='file.dmi') + _set_dmi_data.add_argument('metadata', type=str, help='DMI header file', metavar='metadata.txt') + + _set_dmi_data = command.add_parser('clean', help='Clean up temporary files and *.new.dmi files.') + _set_dmi_data.add_argument('basedir', type=str, help='Starting directory', metavar='vgstation/') + + args = opt.parse_args() + #print(args) + if args.MODE == 'compile': + make_dmi(args.makefile, args.destination, args) + if args.MODE == 'compare': + compare(args.theirs, args.mine, args, sys.stdout) + if args.MODE == 'compare-all': + compare_all(args.theirs, args.mine, args.report, args) + elif args.MODE == 'disassemble': + disassemble(args.file, args.destination, args) + elif args.MODE == 'disassemble-all': + disassemble_all(args.source, args.destination, args) + elif args.MODE == 'get-dmi-data': + get_dmi_data(args.file, args.dest, args) + elif args.MODE == 'set-dmi-data': + set_dmi_data(args.file, args.metadata, args) + elif args.MODE == 'cleanup': + cleanup(args.basedir, args) + else: + print('!!! Error, unknown MODE=%r' % args.MODE) + + + +class ModeAction(argparse.Action): + def __call__(self, parser, namespace, values, option_string=None): + # print('%s %s %s' % (namespace, values, option_string)) + namespace.MODE = self.dest + namespace.args = values + +def get_dmi_data(path, dest, parser): + if(os.path.isfile(path)): + dmi = DMI(path) + with open(dest, 'w') as f: + f.write(dmi.getHeader()) + +def set_dmi_data(path, headerFile, parser): + if(os.path.isfile(path)): + dmi = DMI(path) + with open(headerFile, 'r') as f: + dmi.setHeader(f.read(), path) + +def make_dmi(path, dest, parser): + if(os.path.isfile(path)): + dmi = None + try: + dmi = DMI(dest) + dmi.make(path) + dmi.save(dest) + except SystemError as e: + print("!!! Received SystemError in %s, halting: %s" % (dmi.filename, traceback.format_exc(e))) + print('# of cells: %d' % len(dmi.states)) + print('Image h/w: %s' % repr(dmi.size)) + sys.exit(1) + except Exception as e: + print("Received error, continuing: %s" % traceback.format_exc()) + +def disassemble(path, to, parser): + print('\tD %s -> %s' % (path, to)) + if(os.path.isfile(path)): + dmi = None + try: + dmi = DMI(path) + dmi.extractTo(to, parser.suppress_post_process) + except SystemError as e: + print("!!! Received SystemError in %s, halting: %s" % (dmi.filename, traceback.format_exc(e))) + print('# of cells: %d' % len(dmi.states)) + print('Image h/w: %s' % repr(dmi.size)) + sys.exit(1) + except Exception as e: + print("Received error, continuing: %s" % traceback.format_exc()) + +def compare(theirsfile, minefile, parser, reportstream, **kwargs): + # print('\tD %s -> %s' % (theirsfile, minefile)) + theirs = [] + theirsDMI = None + mine = [] + mineDMI = None + states = [] + + new2mineFilename = minefile.replace('.dmi', '.new.dmi') + new2theirsFilename = theirsfile.replace('.dmi', '.new.dmi') + + new2mine=None + if os.path.isfile(new2mineFilename): + os.remove(new2mineFilename) + if kwargs.get('newfile_mine',True): + new2mine = DMI(new2mineFilename) + + new2theirs=None + if os.path.isfile(new2theirsFilename): + os.remove(new2theirsFilename) + if kwargs.get('newfile_theirs',False): + new2theirs = DMI(new2theirsFilename) + + + o = '' + if(os.path.isfile(theirsfile)): + try: + theirsDMI = DMI(theirsfile) + theirsDMI.loadAll() + theirs = theirsDMI.states + except SystemError as e: + print("!!! Received SystemError in %s, halting: %s" % (theirs.filename, traceback.format_exc(e))) + print('# of cells: %d' % len(theirs.states)) + print('Image h/w: %s' % repr(theirs.size)) + sys.exit(1) + except Exception as e: + print("Received error, continuing: %s" % traceback.format_exc()) + o += "\n {0}: Received error, continuing: {1}".format(theirsfile, traceback.format_exc()) + for stateName in theirs: + if stateName not in states: + states.append(stateName) + if(os.path.isfile(minefile)): + try: + mineDMI = DMI(minefile) + mineDMI.loadAll() + mine = mineDMI.states + except SystemError as e: + print("!!! Received SystemError in %s, halting: %s" % (mine.filename, traceback.format_exc(e))) + print('# of cells: %d' % len(mine.states)) + print('Image h/w: %s' % repr(mine.size)) + sys.exit(1) + except Exception as e: + print("Received error, continuing: %s" % traceback.format_exc()) + o += "\n {0}: Received error, continuing: {1}".format(minefile, traceback.format_exc()) + for stateName in mine: + if stateName not in states: + states.append(stateName) + for state in sorted(states): + inTheirs = state in theirs + inMine = state in mine + if inTheirs and not inMine: + o += '\n + {1}'.format(minefile, state) + if new2mine is not None: + new2mine.states[state] = theirsDMI.states[state] + elif not inTheirs and inMine: + o += '\n - {1}'.format(theirsfile, state) + if new2theirs is not None: + new2theirs.states[state] = mineDMI.states[state] + elif inTheirs and inMine: + if theirs[state].ToString() != mine[state].ToString(): + o += '\n - {0}: {1}'.format(mine[state].displayName(), mine[state].ToString()) + o += '\n + {0}: {1}'.format(theirs[state].displayName(), theirs[state].ToString()) + elif kwargs.get('check_changed',True): + diff_count=0 + for i in xrange(len(theirs[state].icons)): + theirF = theirs[state].icons[i] + myF = theirs[state].icons[i] + + theirData = list(theirF.getdata()) + myData = list(myF.getdata()) + #diff = [] + + for i in xrange(len(theirData)): + dr = theirData[i][0] - myData[i][0] + dg = theirData[i][1] - myData[i][1] + db = theirData[i][2] - myData[i][2] + #diff[idx] = (abs(dr), abs(dg), abs(db)) + if((dr != 0) or (dg != 0) or (db != 0)): + diff_count += 1 + break + if diff_count > 0: + o += '\n ! {0}: {1} frames differ'.format(theirs[state].displayName(), diff_count) + if new2mine is not None: + new2mine.states[state] = theirsDMI.states[state] + if new2theirs is not None: + new2theirs.states[state] = mineDMI.states[state] + if o != '': + reportstream.write('\n--- {0}'.format(theirsfile)) + reportstream.write('\n+++ {0}'.format(minefile)) + reportstream.write(o) + + if new2mine is not None: + if len(new2mine.states) > 0: + new2mine.save(new2mineFilename) + else: + if os.path.isfile(new2mineFilename): + os.remove(new2mineFilename) + #print('RM {0}'.format(new2mineFilename)) + if new2theirs is not None: + if len(new2theirs.states) > 0: + new2theirs.save(new2theirsFilename) + else: + if os.path.isfile(new2theirsFilename): + os.remove(new2theirsFilename) + #print('RM {0}'.format(new2theirsFilename)) + +def cleanup(subject): + print('Cleaning...') + for root, _, filenames in os.walk(subject): + for filename in fnmatch.filter(filenames, '*.new.dmi'): + path = os.path.join(root, filename) + print('RM {0}'.format(path)) + os.remove(path) + +def disassemble_all(in_dir, out_dir, parser): + print('D_A %s -> %s' % (in_dir, out_dir)) + for root, dirnames, filenames in os.walk(out_dir): + for filename in fnmatch.filter(filenames, '*.new.dmi'): + path = os.path.join(root, filename) + print('RM {0}'.format(path)) + os.remove(path) + for root, dirnames, filenames in os.walk(in_dir): + for filename in fnmatch.filter(filenames, '*.dmi'): + path = os.path.join(root, filename) + to = os.path.join(out_dir, path.replace(in_dir, '').replace(os.path.basename(path), '')) + disassemble(path, to, parser) + + +def compare_all(in_dir, out_dir, report, parser, **kwargs): + with open(report, 'w') as report: + report.write('# DMITool Difference Report: {0} {1}'.format(os.path.abspath(in_dir), os.path.abspath(out_dir))) + for root, dirnames, filenames in os.walk(in_dir): + for filename in fnmatch.filter(filenames, '*.dmi'): + path = os.path.join(root, filename) + to = os.path.join(out_dir, path.replace(in_dir, '').replace(os.path.basename(path), '')) + to = os.path.join(to, filename) + path = os.path.abspath(path) + to = os.path.abspath(to) + compare(path, to, parser, report, **kwargs) + + +if __name__ == '__main__': + main() diff --git a/tools/BYONDTools/scripts/dmindent.py b/tools/BYONDTools/scripts/dmindent.py new file mode 100644 index 00000000000..e4f8979ff0c --- /dev/null +++ b/tools/BYONDTools/scripts/dmindent.py @@ -0,0 +1,77 @@ +#!/usr/bin/env python +''' +Created on Jan 5, 2014 + +@author: Rob +''' +import os, sys, argparse +from byond.basetypes import Atom, Proc +from byond import objtree, GetFilesFromDME + +def processFile(tree, origin, destination, args): + atomsWritten=[] + origin = os.path.relpath(origin) + with open(destination, 'w') as f: + print('>>> {0}'.format(destination)) + if args.reorganize: + for ak in sorted(tree.Atoms.keys()): + atom = tree.Atoms[ak] + for a in atomsWritten: + if atom.path.startswith(a): continue + #if atom.filename.replace(os.sep,'/') == sys.argv[2]: + if atom.filename == origin: + f.write(atom.DumpCode()) + atomsWritten+=[atom.path] + else: + for thing in tree.fileLayouts[origin]: + ttype = thing[0] + if ttype == 'ATOMDEF': + f.write(thing[1] + '\n') + elif ttype == 'PROCDEF': + proc = tree.GetAtom(thing[1]) + f.write(proc.DumpCode() + '\n') + elif ttype == 'VAR': + atom = tree.GetAtom(thing[1]) + var = atom.properties[thing[2]] + f.write('\t{}\n'.format(var.DumpCode(thing[2]))) + elif ttype == 'DEFINE': + name = thing[1] + value = thing[2] + f.write('#define {} {}\n'.format(name, value)) + elif ttype == 'UNDEF': + name = thing[1] + f.write('#undef {}\n'.format(name)) + elif ttype == 'COMMENT': + continue + else: + print('wot is ' + ttype + '?') +if __name__ == '__main__': + + opt = argparse.ArgumentParser() + opt.add_argument('project', metavar="project.dme") + opt.add_argument('file', metavar="file.dm", default=None, nargs='?') + opt.add_argument('--reorganize', dest='reorganize', default=False, action='store_true', help="Reorganize the file's contents, instead of keeping current structure.") + opt.add_argument('--output','-o', dest='output', default='', help="Where to put the output (default: .fixed)") + + args = opt.parse_args() + + tree = objtree.ObjectTree(preprocessor_directives=True) + tree.ProcessFilesFromDME(args.project) + + atomsWritten = [] + + if args.file is not None and os.path.isfile(args.file): + output=args.output + if output=='': + output=args.file+'.fixed' + processFile(tree, args.file, output, args) + else: + for filename in GetFilesFromDME(args.project): + fixpath = filename.replace('code' + os.sep, 'code-indented' + os.sep) + fixpath = fixpath.replace('interface' + os.sep, 'interface-indented' + os.sep) + fixpath = fixpath.replace('RandomZLevels' + os.sep, 'RandomZLevels-indented' + os.sep) + fixdir = os.path.dirname(fixpath) + if not os.path.isdir(fixdir): + os.makedirs(fixdir) + fixpath = fixpath.replace('/', os.sep) + processFile(tree, filename, fixpath,args) diff --git a/tools/BYONDTools/scripts/dmm.py b/tools/BYONDTools/scripts/dmm.py new file mode 100644 index 00000000000..62eeec1c9c9 --- /dev/null +++ b/tools/BYONDTools/scripts/dmm.py @@ -0,0 +1,229 @@ +#!/usr/bin/env python +""" +dmm.py - Collection of map tools. + +Copyright 2013 Rob "N3X15" Nelson + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +""" +import sys, argparse, os +from byond import ObjectTree, Map, MapRenderFlags + +def main(): + opt = argparse.ArgumentParser() # version='0.1') + opt.add_argument('--project', default='baystation12.dme', type=str, help='Project file.', metavar='environment.dme') + + command = opt.add_subparsers(help='The command you wish to execute', dest='MODE') + + _compare = command.add_parser('diff', help='Compare two map files and generate a map patch.') + _compare.add_argument('theirs', type=str, help='One side of the difference', metavar='theirs.dmm') + _compare.add_argument('mine', type=str, help='The other side.', metavar='mine.dmm') + _compare.add_argument('-O', '--output', dest='output', type=str, help='The other side.', metavar='mine.dmm') + + #_compare = command.add_parser('patch', help='Apply a map patch.') + #_compare.add_argument('theirs', type=str, help='One side of the difference', metavar='theirs.dmm') + #_compare.add_argument('mine', type=str, help='The other side.', metavar='mine.dmm') + + _compare = command.add_parser('analyze', help='Generate a report of each atom on a map. WARNING: huge') + _compare.add_argument('map', type=str, help='Map to analyze.', metavar='map.dmm') + + opt.add_argument('map', type=str, help='Map to fix.', metavar='map.dmm') + + args = opt.parse_args() + if args.MODE == 'compare': + compare_dmm(args) + elif args.MODE == 'analyze': + analyze_dmm(args) + #elif args.MODE == 'patch': + # patch_dmm(args) + else: + print('!!! Error, unknown MODE=%r' % args.MODE) + +def compare_dmm(args): + if not os.path.isfile(args.theirs): + print('File {0} does not exist.'.format(args.theirs)) + sys.exit(1) + if not os.path.isfile(args.mine): + print('File {0} does not exist.'.format(args.mine)) + sys.exit(1) + if not os.path.isfile(args.project): + print('DM Environment File {0} does not exist.'.format(args.project)) + sys.exit(1) + + theirs_dmm = Map(forgiving_atom_lookups=True) + theirs_dmm.readMap(args.theirs) + + mine_dmm = Map(forgiving_atom_lookups=True) + mine_dmm.readMap(args.mine) + + if theirs_dmm.width != mine_dmm.width: + print('Width is not equal: {} != {}.'.format(theirs_dmm.width, mine_dmm.width)) + sys.exit(1) + if theirs_dmm.height != mine_dmm.height: + print('Height is not equal: {} != {}.'.format(theirs_dmm.height, mine_dmm.height)) + sys.exit(1) + + ttitle, _ = os.path.splitext(os.path.basename(args.theirs)) + mtitle, _ = os.path.splitext(os.path.basename(args.mine)) + + output = '{} - {}.dmmpatch'.format(ttitle, mtitle) + if args.output: + output = args.output + with open(output, 'w') as f: + stats = { + 'diffs':0, + 'tilediffs':0 + } + print('Comparing maps...') + for z in range(len(theirs_dmm.zLevels)): + for y in range(theirs_dmm.height): + for x in range(theirs_dmm.width): + CHANGES = {} + + tTile = theirs_dmm.GetTileAt(x, y, z) + mTile = mine_dmm.GetTileAt(x, y, z) + + theirs = tTile.GetAtoms() + mine = mTile.GetAtoms() + + for atom in theirs + mine: + key = atom.MapSerialize() + change = None + if atom not in mine: + change = '-' + if atom not in theirs: + change = '+' + if change is not None: + CHANGES[key] = change + + if len(CHANGES) > 0: + f.write('<{},{},{}>\n'.format(x, y, z)) + stats['tilediffs'] += 1 + for key, change in CHANGES.items(): + f.write(' {} {}\n'.format(change, key)) + stats['diffs'] += 1 + print('Compared maps: {} differences in {} tiles.'.format(stats['diffs'],stats['tilediffs'])) + + +def analyze_dmm(args): + tmpl_head = ''' + + + BYONDTools Map Analysis :: {TITLE} + + +

{TITLE}

+
''' + tmpl_footer = ''' + + + ''' + + presentable_attributes=[ + 'path', + 'id', + 'filename', + 'line' + ] + + def MakePage(**kwargs): + rewt = '.' + depth = kwargs.get('depth', 0) + if depth > 0: + rewt = '/'.join(['..'] * depth) + title = kwargs.get('title', 'LOL NO TITLE') + body = kwargs.get('body', '') + return (tmpl_head + body + tmpl_footer).replace('{TITLE}', title).replace('{ROOT}', rewt) + + if not os.path.isfile(args.project): + print('DM Environment file {0} does not exist.'.format(args.theirs)) + sys.exit(1) + + if not os.path.isfile(args.map): + print('Map {0} does not exist.'.format(args.theirs)) + sys.exit(1) + + tree = ObjectTree() + tree.ProcessFilesFromDME(args.project) + dmm = Map(tree) + dmm.readMap(args.map) + + basedir = os.path.join(os.path.dirname(args.project), 'analysis', os.path.basename(args.map)) + + if not os.path.isdir(basedir): + os.makedirs(os.path.join(basedir,'instances')) + os.makedirs(os.path.join(basedir,'tiles')) + + # Dump instances + instance_info = {} + for atom in dmm.instances: + if atom.path not in instance_info: + instance_info[atom.path] = [] + instance_info[atom.path] += [atom.id] + + with open(os.path.join(basedir, 'instances', str(atom.id) + '.html'), 'w') as f: + body = '

Atom Data:

' + for attr in presentable_attributes: + body += ''.format(attr, getattr(atom, attr, None)) + body += '
NameValue
{0}{1}
' + + body += '

Map-Specified Properties:

' + for attr_name in atom.mapSpecified: + body += ''.format(attr_name, atom.getProperty(attr_name, None)) + body += '
NameValue
{0}{1}
' + + body += '

All Properties:

' + for attr_name in sorted(atom.properties.keys()): + attr = atom.properties[attr_name] + body += ''.format(attr_name, attr.value, attr.filename, attr.line) + body += '
NameValueFile/Line
{0}{1}{2}:{3}
' + f.write(MakePage(title='Instance #{0}'.format(atom.id), depth=1, body=body)) + with open(os.path.join(basedir, 'instances', 'index.html'), 'w') as idx: + body = '
    ' + for atype, instances in instance_info.items(): + body += '
  • {0}
      '.format(atype) + for iid in instances: + body += '
    • #{0}
    • '.format(iid) + body += '
  • ' + body += "
" + idx.write(MakePage(title='Instance Index'.format(atom.id), depth=1, body=body)) + + # Tiles + with open(os.path.join(basedir, 'index.html'), 'w') as f: + body = '' + for tile in dmm.tileTypes: + body += '' + img = tile.RenderToMapTile(0, os.path.dirname(sys.argv[1]), MapRenderFlags.RENDER_STARS) + if img is None: continue + pass_2 = tile.RenderToMapTile(1, os.path.dirname(sys.argv[1]), 0) + if pass_2 is not None: + img.paste(pass_2,(0,0,96,96),pass_2) + img.save(os.path.join(basedir, 'tiles', '{0}.png'.format(tile.ID)), 'PNG') + body += '
IconIDInstances
{0}
    '.format(tile.ID) + for atom in tile.SortAtoms(): + body += '
  • #{0} - {1}
  • '.format(atom.id,atom.path) + body += '
' + f.write(MakePage(title='Tile Index'.format(atom.id), depth=0, body=body)) + +if __name__ == '__main__': + main() diff --git a/tools/BYONDTools/scripts/dmmfix.py b/tools/BYONDTools/scripts/dmmfix.py new file mode 100644 index 00000000000..5d2dfe5fd17 --- /dev/null +++ b/tools/BYONDTools/scripts/dmmfix.py @@ -0,0 +1,120 @@ +#!/usr/bin/env python +""" +fixMap.py - Apply various fixes to a map. + +Copyright 2013 Rob "N3X15" Nelson + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +""" +import sys, argparse +from byond.map import Map +from byond.objtree import ObjectTree +#from byond.basetypes import BYONDString, BYONDValue, Atom, PropertyFlags +#from byond.directions import * + +from byond import mapfixes + + +opt = argparse.ArgumentParser() # version='0.1') +opt.add_argument('-n', '--namespace', dest='namespaces', type=str, nargs='*', default=[], help='MapFix namespace to load (ss13, vgstation).') +opt.add_argument('-N', '--no-deps', dest='no_dependencies', action='store_true', help='Stop loading of namespace dependencies.') +opt.add_argument('-f', '--fix-script', dest='fixscripts', type=str, nargs='*', help='A script that specifies property and type replacements.') + +opt.add_argument('dme', nargs='?', default='baystation12.dme', type=str,help='Project file.', metavar='environment.dme') +opt.add_argument('map', type=str,help='Map to fix.', metavar='map.dmm') + +args = opt.parse_args() + +actions = [] + +mapfixes.Load() +actions += mapfixes.GetFixesForNS(args.namespaces, not args.no_dependencies) + +tree = ObjectTree() +tree.ProcessFilesFromDME(args.dme) + +for fixscript in args.fixscripts: + with open(fixscript, 'r') as repl: + ln = 0 + errors = 0 + for line in repl: + ln += 1 + if line.startswith('#'): + continue + if line.strip() == '': + continue + # PROPERTY: step_x > pixel_x + # TYPE: /obj/item/key > /obj/item/weapon/key/janicart + subject, action = line.split(':') + subject = subject.lower() + if subject == 'property': + old, new = action.split('>') + actions += [mapfixes.base.RenameProperty(old.strip(), new.strip())] + if subject == 'type' or subject == 'type!': + force = subject == 'type!' + old, new = action.split('>') + newtype = new.strip() + if tree.GetAtom(newtype) is None: + print('{0}:{1}: {2}'.format(sys.argv[2], ln, line.strip('\r\n'))) + print(' ERROR: Unable to find replacement type "{0}".'.format(newtype)) + errors += 1 + actions += [mapfixes.base.ChangeType(old.strip(), newtype, force)] + if errors > 0: + print('!!! {0} errors, please fix them.'.format(errors)) + sys.exit(1) +print('Changes to make:') +for action in actions: + print(' * ' + str(action)) +dmm = Map(tree, forgiving_atom_lookups=1) +dmm.readMap(args.map) +dmm.writeMap2(args.map.replace('.dmm', '.dmm2')) +for iid in xrange(len(dmm.instances)): + atom = dmm.getInstance(iid) + changes = [] + for action in actions: + action.SetTree(tree) + if action.Matches(atom): + atom = action.Fix(atom) + changes += [str(action)] + atom.id = iid + + ''' + compiled_atom = tree.GetAtom(atom.path) + if compiled_atom is not None: + for propname in list(atom.properties.keys()): + if propname not in compiled_atom.properties and propname not in ('req_access_txt','req_one_access_txt'): + del atom.properties[propname] + if propname in atom.mapSpecified: + atom.mapSpecified.remove(propname) + changes += ['Dropped property {0} (not found in compiled atom)'.format(propname)] + ''' + dmm.setInstance(iid, atom) + if len(changes) > 0: + print('{0} (#{1}):'.format(atom.path, atom.id)) + for change in changes: + print(' * ' + change) +#for atom, _ in atomsToFix.items(): +# print('Atom {0} needs id_tag.'.format(atom)) +with open(args.map + '.missing', 'w') as f: + for atom in sorted(dmm.missing_atoms): + f.write(atom + "\n") +print('--- Saving...') +dmm.writeMap(args.map + '.fixed', Map.WRITE_OLD_IDS) +dmm.writeMap2(args.map.replace('.dmm', '.dmm2') + '.fixed') diff --git a/tools/BYONDTools/scripts/dmmrender.py b/tools/BYONDTools/scripts/dmmrender.py new file mode 100644 index 00000000000..46d5f07a0de --- /dev/null +++ b/tools/BYONDTools/scripts/dmmrender.py @@ -0,0 +1,89 @@ +#!/usr/bin/env python +import os, argparse, logging +from byond.objtree import ObjectTree +from byond.basetypes import Atom +from byond.map import Map, MapRenderFlags +""" +Usage: + $ python dmmrender.py path/to/your/project.dme path/to/your/map.dmm + +generateMap.py - Creates an image of a DMM map. + +Copyright 2013 Rob "N3X15" Nelson + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +""" + +def renderMap(args): + outfile = args.map + '.{z}.png' + if args.area: + kwargs['area'] = args.area + outfile = args.area[0].replace('/', '_') + '.png' + if args.render_types: + print(repr(args.render_types)) + kwargs['render_types'] = args.render_types + if args.outfile: + outfile = args.outfile + if os.path.isdir(outfile): + title, _ = os.path.splitext(os.path.basename(args.map)) + outfile = os.path.join(outfile, '{}.{{z}}.png'.format(title)) + dmm.generateImage(outfile, os.path.dirname(args.project), renderflags, **kwargs) + +logging.basicConfig( + format='%(asctime)s [%(levelname)-8s]: %(message)s', + datefmt='%m/%d/%Y %I:%M:%S %p', + level=logging.INFO # , + # filename='logs/main.log', + # filemode='w' + ) +opt = argparse.ArgumentParser() +opt.add_argument('project', metavar="project.dme") +opt.add_argument('map', metavar="map.dmm") +opt.add_argument('--render-stars', dest='render_stars', default=False, action='store_true', help="Render space. Normally off to prevent ballooning the image size.") +opt.add_argument('--render-areas', dest='render_areas', default=False, action='store_true', help="Render area overlays.") +opt.add_argument('--render-only', dest='render_types', action='append', help="Render ONLY these types. Can be used multiple times to specify more types.") +opt.add_argument('--area', dest='area', type=list, nargs='*', default=None, help="Specify an area to restrict rendering to.") +opt.add_argument('-O', '--out', dest='outfile', type=str, default=None, help="What to name the file ({z} will be replaced with z-level)") +opt.add_argument('--area-list', dest='areas', type=str, default=None, help="A file with area_file.png = /area/path on each line") +args = opt.parse_args() +if os.path.isfile(args.project): + tree = ObjectTree() + tree.ProcessFilesFromDME(args.project) + dmm = Map(tree) + dmm.readMap(args.map) + renderflags = 0 + if args.render_stars: + renderflags |= MapRenderFlags.RENDER_STARS + if args.render_areas: + renderflags |= MapRenderFlags.RENDER_AREAS + kwargs = {} + if args.areas: + with open(args.areas) as f: + for line in f: + if line.startswith("#"): + continue + if '=' not in line: + continue + outfile, area = line.split('=') + args.area = area.strip().split(',') + args.outfile = outfile.strip() + renderMap(args) + else: + renderMap(args) diff --git a/tools/BYONDTools/scripts/genTileQuads.py b/tools/BYONDTools/scripts/genTileQuads.py new file mode 100644 index 00000000000..69c16e00730 --- /dev/null +++ b/tools/BYONDTools/scripts/genTileQuads.py @@ -0,0 +1,210 @@ +#!/usr/bin/env python +from byond.DMI import DMI,State +from byond import directions +import os, sys, shutil +import ImageChops +import math, operator +from PIL import Image + +def rmsdiff(im1, im2): + "Calculate the root-mean-square difference between two images" + diff = ImageChops.difference(im1, im2) + h = diff.histogram() + sq = (value * (idx ** 2) for idx, value in enumerate(h)) + sum_of_squares = sum(sq) + rms = math.sqrt(sum_of_squares / float(im1.size[0] * im1.size[1])) + return rms + +def equal(im1, im2): + return ImageChops.difference(im1, im2).getbbox() is None + +quadDefs = [ + # x1,y1,x2,y2 + [0, 0, 15, 15], + [16, 0, 31, 15], + [0, 16, 15, 31], + [16, 16, 31, 31] +] + +extract = [ + 'floor', + # 'redcorner', + 'white', + 'dark', + 'bar', + 'cafeteria', + 'redfull', + 'whiteredfull', + 'bluefull', + 'whitebluefull', + 'greenfull', + 'whitegreenfull', + 'yellowfull', + 'whiteyellowfull', + 'neutralfull', + 'orangefull', + 'purplefull', + 'whitepurplefull', + 'floorgrime', + 'brown', + 'vaultfull' +] + +colors = [ + 'red', + 'whitered', + 'blue', + 'whiteblue', + 'green', + 'whitegreen', + 'yellow', + 'whiteyellow', + 'neutral', + 'orange', + 'purple', + 'whitepurple', + 'grime', + 'brown', + 'vault' +] + +arrangements={ + 'stripe': [ + [False,False,True,True], # S + [True,True,False,False], # N + [False,True,False,True], # E + [True,False,True,False], # W + [False,True,True,True], # SE + [True,False,True,True], # SW + [True,True,False,True], # NE + [True,True,True,False], # NW + ], + 'corner': [ + [False,False,False,True], # S + [True,False,False,False], # N + [False,True,False,False], # E + [False,False,True,False], # W + ], + 'full': [ + [True,True,True,True] + ] +} + +tileDefs={ + 'white':{ + 'base':'white', + 'arrangements':['stripe','corner','full'], + 'colors':['whitered','whiteblue','whitegreen','whitegreen','whiteyellow','whitepurple'] + }, + 'grey':{ + 'base':'floor', + 'arrangements':['stripe','corner','full'], + 'colors':[ + 'red', + 'blue', + 'green', + 'yellow', + 'neutral', + 'orange', + 'purple', + 'brown', + 'white' + ] + }, + 'dark':{ + 'base':'dark', + 'arrangements':['stripe','corner','full'], + 'colors':[ + 'floor', + 'red', + 'blue', + 'green', + 'yellow', + 'neutral', + 'orange', + 'purple', + 'brown', + 'vault' + ] + } +} +knownQuads = [ + {}, {}, {}, {} +] +def isKnownQuad(i, im, icon_state): + for name, kq in knownQuads[i].items(): + if equal(kq, im): + return True + return False +floors = DMI(sys.argv[1]) +floors.loadAll() +basedir = 'floor_quads' +if os.path.isdir('floor_quads'): + shutil.rmtree(basedir) +os.makedirs('floor_quads') +for icon_state in extract: + if icon_state not in floors.states: + print('Can\'t find state {0}!'.format(icon_state)) + continue + for d in range(floors.states[icon_state].dirs): + dirf = 0 + dirn = 'SOUTH' + if floors.states[icon_state].dirs > 1: + dirf = directions.IMAGE_INDICES[d] + dirn = directions.getNameFromDir(dirf) + print('{0} {1} {2}'.format(icon_state, dirn, floors.states[icon_state].dirs)) + img = floors.getFrame(icon_state, dirf, 0) + for i in range(len(quadDefs)): + quad = img.crop(quadDefs[i]) + if isKnownQuad(i, quad, icon_state): + print(' Skipping quad #{}'.format(i + 1)) + continue + color = icon_state + if color.endswith('full'): + color = color[:-4] + qpath = os.path.join(basedir, str(i)) + qfile = os.path.join(qpath, '{0}.png'.format(color)) + if not os.path.isdir(qpath): + os.makedirs(qpath) + quad.save(qfile, 'PNG') + knownQuads[i][color] = quad + +nfloors = DMI('nfloors.dmi') +for tileName,tileDef in tileDefs.items(): + base = floors.getFrame(tileDef['base'],directions.SOUTH,0) + for color in tileDef['colors']: + for arrangement in tileDef['arrangements']: + arrname='' + arrange=[False,False,False,False] + if isinstance(arrangement,str): + arrange=arrangements[arrangement] + arrname=arrangement + elif isinstance(arrangement,list): + arrange=arrangement[1:] + arrname=arrangement[0] + state='{base} {color} {arrangement}'.format(base=tileDef['base'],color=color,arrangement=arrname) + nstate=State(state) + nstate.dirs=len(arrange) + nstate.frames=1 + nstate.icons=[None for _ in range(nstate.dirs)] + #statedebug = DMI(state+'.dmi') + nfloors.states[state]=nstate + for d in range(len(arrange)): + cmap = arrange[d] + dirf = 0 + dirn = 'SOUTH' + if len(arrange) > 1: + dirf = directions.IMAGE_INDICES[d] + dirn = directions.getNameFromDir(dirf) + print(' Generating state {0} ({1})...'.format(repr(state),dirn)) + #print(repr(arrange)) + img=Image.new('RGBA',(32,32)) + img.paste(base) + for i in range(len(cmap)): + bbox=quadDefs[i] + if cmap[i]: + img.paste(knownQuads[i][color],bbox) + nfloors.setFrame(state, dirf, 0, img) + #statedebug.states[state]=nfloors.states[state] + #statedebug.save(state+'.dmi') +nfloors.save('nfloors.dmi') \ No newline at end of file diff --git a/tools/BYONDTools/scripts/makeBigDMI.py b/tools/BYONDTools/scripts/makeBigDMI.py new file mode 100644 index 00000000000..aed318518e3 --- /dev/null +++ b/tools/BYONDTools/scripts/makeBigDMI.py @@ -0,0 +1,33 @@ +#!/usr/bin/env python +''' +Created on Feb 28, 2014 to test a bug in DreamMaker. + +Requires arial font. +''' +from byond.DMI import DMI, State +from PIL import Image, ImageDraw, ImageFont + +def makeDMI(): + dmi = DMI('state_limit.dmi') + # + for i in range(513): + # Make a new tile + img = Image.new('RGBA', (32, 32)) + # Set up PIL's drawing stuff + draw = ImageDraw.Draw(img) + # Define a font. + font = ImageFont.truetype('arial.ttf', 10) + # Draw the tile number + draw.text((10, 0), str(i + 1), (0, 0, 0), font=font) + # Make state + state_name='state {0}'.format(i+1) + state=State(state_name) + state.dirs=1 + state.frames=1 + state.icons=[img] + # Add state to DMI + dmi.states[state_name]=state + #save + dmi.save('state_limit.dmi', sort=False) +if __name__ == '__main__': + makeDMI() diff --git a/tools/BYONDTools/scripts/queryObjectTree.py b/tools/BYONDTools/scripts/queryObjectTree.py new file mode 100644 index 00000000000..c00c889f454 --- /dev/null +++ b/tools/BYONDTools/scripts/queryObjectTree.py @@ -0,0 +1,28 @@ +#!/usr/bin/env python +''' +Created on Apr 29, 2014 + +@author: Rob +''' +import argparse,os + +from byond.objtree import ObjectTree +from byond.basetypes import Proc + +def dumpSubTypes(atom): + print('{}:{}: {}'.format(atom.filename,atom.line,atom.path)) + for rpath,catom in atom.children.items(): + if not isinstance(catom,Proc): + dumpSubTypes(catom) + +if __name__ == '__main__': + opt = argparse.ArgumentParser() + opt.add_argument('project', metavar="project.dme") + opt.add_argument('--subtypes',type=str,help="List all subtypes of the given type") + args = opt.parse_args() + if os.path.isfile(args.project): + tree = ObjectTree() + tree.ProcessFilesFromDME(args.project) + if args.subtypes: + atom = tree.GetAtom(args.subtypes) + dumpSubTypes(atom) \ No newline at end of file diff --git a/tools/BYONDTools/scripts/scanCode.py b/tools/BYONDTools/scripts/scanCode.py new file mode 100644 index 00000000000..bfa62bd569c --- /dev/null +++ b/tools/BYONDTools/scripts/scanCode.py @@ -0,0 +1,121 @@ +#!/usr/bin/env python +import sys, re +from byond.basetypes import Proc +from byond.objtree import ObjectTree + +class CodeScan: + def __init__(self, id): + self.id = id + self.atom = None + self.proc = None + + def SetContext(self, atom, proc): + self.atom = atom + self.proc = proc + + def MatchAtom(self, atom): + return True + + def MatchProc(self, atom, proc): + return True + + def ScanLine(self, line): + return [] + +class RegexScanner(CodeScan): + def __init__(self, id, regex, warning, in_procnames=()): + CodeScan.__init__(self, id) + self.regex = regex + self.warning = warning + self.in_procnames = in_procnames + + def MatchProc(self, atom, proc): + # print(proc.path) + return self.in_procnames == () or proc.name in self.in_procnames + + def ScanLine(self, line): + m = self.regex.search(line) + if m is not None: + return [self.warning] + return [] + +rules = [ + RegexScanner( + id='sleep-in-process', + warning='sleep() should not be used in process().', + regex=re.compile(r'\bsleep\(([0-9]+)\)\b'), + in_procnames=('process') + ), + RegexScanner( + id='spawn-in-process', + warning='spawn() should not be used in process().', + regex=re.compile(r'\bspawn(\(([0-9]*)\))?\b'), + in_procnames=('process') + ), + RegexScanner( + id='del-in-ex_act', + warning='del() should not be used in ex_act(). Consider replacing with qdel.', + regex=re.compile(r'\bdel(\(.*\))?\b'), + in_procnames=('ex_act') + ), +] + +otr = ObjectTree() +otr.ProcessFilesFromDME(sys.argv[1], '.dm') +procs = 0 +alerts = 0 +for path in otr.Atoms: + atom = otr.GetAtom(path) + if isinstance(atom,Proc): continue + proceed = False + skipping = [] + for rule in rules: + if rule.MatchAtom(atom): + proceed = True + else: + skipping += [rule] + if not proceed: continue + for childName in atom.children: + warnings = {} + child = atom.children[childName] + if isinstance(child, Proc): + proceed = False + for rule in rules: + if rule not in skipping and rule.MatchProc(atom, child): + proceed = True + else: + skipping += [rule] + if not proceed: continue + + ''' + if 'process' in path + ' - ' + childName: + print(path + ' - ' + childName) + ''' + # print(path + ' - ' + childName) + procs += 1 + min_indent = child.getMinimumIndent() + # Should be 1, so find the difference. + indent_delta = 1 - min_indent + for i in range(len(child.code)): + line_warnings = [] + indent, code = child.code[i] + indent = max(1, indent + indent_delta) + if code.strip() == '': + o = '\n' + else: + o = (indent * '\t') + code.strip() + '\n' + code = o.strip('\n\r') + for rule in rules: + if rule in skipping: continue + rule.SetContext(atom, child) + line_warnings += rule.ScanLine(code) + if len(line_warnings): + warnings['{0}:{1}: {2}'.format(child.filename, child.line + i, code)] = line_warnings + alerts += len(line_warnings) + if len(warnings) > 0: + print('IN {0}/{1}:'.format(path, childName)) + for context in warnings: + print(' {0}'.format(context)) + for warning in warnings[context]: + print(' WARNING: {0}'.format(warning)) +print('{0} processed procs, {1} alerts raised'.format(procs, alerts)) diff --git a/tools/BYONDTools/scripts/ss13_makeinhands.py b/tools/BYONDTools/scripts/ss13_makeinhands.py new file mode 100644 index 00000000000..84d62088588 --- /dev/null +++ b/tools/BYONDTools/scripts/ss13_makeinhands.py @@ -0,0 +1,83 @@ +#!/usr/bin/env python +''' +Run within icons/mob/in-hand. + +Usage: + $ cd icons/mob/in-hands + $ python ss13_makeinhands.py + +ss13_makeinhands.py - Generates a large DMI from several smaller DMIs. + Specifically used for making icons/mob/items_(left|right)hand.dmi + +Copyright 2013 Rob "N3X15" Nelson + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +''' +import os, sys, logging + +ToBuild = { +# ' file to build': 'directory to pull from/', + '../items_lefthand.dmi': 'left/', + '../items_righthand.dmi': 'right/' +} + +# Tell Python where to find BYONDTools. +# Assuming we're in icons/mob/in-hand +sys.path.append('../../../tools/BYONDTools') # For byond +sys.path.append('../../../tools/BYONDTools/scripts') # For dmi + +from byond.DMI import DMI +from dmi import compare_all + +def buildDMI(directory, output): + dmi = DMI(output) + logging.info('Creating {0}...'.format(output)) + for root, _, files in os.walk(directory): + for filename in files: + if filename.endswith('.dmi') and not filename.endswith('.new.dmi'): + filepath = os.path.join(root, filename) + logging.info('Adding {0}...'.format(filename, output)) + subdmi = DMI(filepath) + subdmi.loadAll() + if subdmi.icon_height != 32 or subdmi.icon_width != 32: + logging.warn('Skipping {0} - Invalid icon size.'.format(filepath)) + changes = 0 + for state_name in subdmi.states: + if state_name in dmi.states: + logging.warn('Skipping state {0}:{1} - State exists.'.format(filepath, subdmi.states[state_name].displayName())) + continue + dmi.states[state_name] = subdmi.states[state_name] + changes += 1 + logging.info('Added {0} states.'.format(changes)) + # save + logging.info('Saving {0} states to {1}...'.format(len(dmi.states), output)) + dmi.save(output) + +if __name__ == '__main__': + logging.basicConfig( + format='%(asctime)s [%(levelname)-8s]: %(message)s', + datefmt='%m/%d/%Y %I:%M:%S %p', + level=logging.INFO # , + # filename='logs/main.log', + # filemode='w' + ) + # Cheating, but useful for checking for unsync'd stuff + compare_all('left/', 'right/', 'in-hand_sync_report.txt', None, newfile_theirs=False, newfile_mine=False, check_changed=False) + for output, input_dir in ToBuild.items(): + buildDMI(input_dir, output) diff --git a/tools/BYONDTools/scripts/stringcounter.py b/tools/BYONDTools/scripts/stringcounter.py new file mode 100644 index 00000000000..d23502d58d0 --- /dev/null +++ b/tools/BYONDTools/scripts/stringcounter.py @@ -0,0 +1,209 @@ +#!/usr/bin/env python +import os, sys +""" +Usage: + $ python countstrings.py path/to/your.dme .dm + +CountStrings.py - Counts strings in DreamMaker code + +Copyright 2013 Rob "N3X15" Nelson + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +""" +def CountStringsIn(filename): + with open(filename, 'r') as f: + with open(filename + '.str', 'w') as debug: + numStrings = 0 + inString = False + inMegaString = False + blockCommentLevel = 0 + embeddedLevel = 0 + lastChar = '' + escaped = False + buffer = '' + while(True): + c = f.read(1) + if not c: + if inString: + print('{0}: UNTERMINATED STRING!'.format(filename)) + return numStrings + if not inString: + if c == '/': + if lastChar == '/' and blockCommentLevel == 0: + # debug.write("[LINECOMMENT:{0}]".format(f.tell())) + # Seek to EOL. + while(c not in '\r\n'): + c = f.read(1) + # debug.write("[ENDCOMMENT:{0}]".format(f.tell())) + lastChar = '' + continue + if c == '*': + if lastChar == '/': + # debug.write("[BLOCKCOMMENT:{0}]".format(f.tell())) + blockCommentLevel += 1 + while(blockCommentLevel > 0): + c = f.read(1) + if not c: + return numStrings + if c == '*': + if lastChar == '/': + blockCommentLevel += 1 + elif c == '/': + if lastChar == '*': + blockCommentLevel -= 1 + lastChar = c + # debug.write("[ENDCOMMENT:{0}]".format(f.tell())) + lastChar = '' + continue + elif c == '"': + if lastChar == '{': + # debug.write("[MEGASTRING:{0}]".format(f.tell())) + inString = True + inMegaString = True + continue + else: + inString = True + # debug.write("[NEWSTRING:{0}]".format(f.tell())) + inMegaString = False + continue + elif c == '{': + lastChar = c + continue + else: + lastChar = c + else: + if c == '\\' and not escaped: + escaped = True + continue + if escaped: + escaped = False + # debug.write("[ESCAPE:{0}]".format(repr(c))) + if inString: + buffer += '\\' + c + lastChar = c + continue + if c in ('[', ']'): + if c == '[': + embeddedLevel += 1 + else: + embeddedLevel -= 1 + buffer += c # +"<{0}>".format(str(embeddedLevel)) + lastChar = c + continue + if embeddedLevel > 0: + buffer += c + lastChar = c + continue + if inMegaString: + if c == '}' and lastChar == '"': + # debug.write("[ENDMEGASTRING]") + inString = False + inMegaString = False + escaped = False + numStrings += 1 + debug.write("\n[{0}]={1}".format(numStrings, repr(buffer))) + buffer = '' + continue + else: + if c == '"': + inString = False + # debug.write("[ENDSTRING:{0}]".format(f.tell())) + numStrings += 1 + escaped = False + debug.write("\n[{0}]={1}".format(numStrings, repr(buffer))) + buffer = '' + continue + buffer += c + lastChar = c + return numStrings + +def ProcessFiles(top='.', ext='.dm'): + numStringsTotal = 0 + numStrings = 0 + numFilesTotal = 0 + maxStringsInFile = [0, ''] + for root, _, files in os.walk(top): + for filename in files: + filepath = os.path.join(root, filename) + if filepath.endswith(ext): + numStrings = CountStringsIn(filepath) + numStringsTotal += numStrings + if numStrings > maxStringsInFile[0]: + maxStringsInFile = [numStrings, filepath] + numFilesTotal += 1 + print(','.join([filepath, str(numStrings)])) + print('>>> Total Strings: {0}'.format(numStringsTotal)) + print('>>> Total Files: {0}'.format(numFilesTotal)) + print('>>> Max Strings: {0} in {1}'.format(maxStringsInFile[0], maxStringsInFile[1])) + +def ProcessFilesFromDME(dmefile='baystation12.dme', ext='.dm'): + numStringsTotal = 0 + numStrings = 0 + numFilesTotal = 0 + maxStringsInFile = [0, ''] + rootdir = os.path.dirname(dmefile) + with open(os.path.join(rootdir, 'stringcounts.csv'), 'w') as csv: + with open(dmefile, 'r') as dmeh: + for line in dmeh: + if line.startswith('#include'): + inString = False + # escaped=False + filename = '' + for c in line: + """ + if c == '\\' and not escaped: + escaped = True + continue + if escaped: + if + escaped = False + continue + """ + if c == '"': + inString = not inString + if not inString: + filepath = os.path.join(rootdir, filename) + if filepath.endswith(ext): + numStrings = CountStringsIn(filepath) + numStringsTotal += numStrings + if numStrings > maxStringsInFile[0]: + maxStringsInFile = [numStrings, filepath] + numFilesTotal += 1 + csv.write(','.join([filepath, str(numStrings)]) + "\n") + filename = '' + continue + else: + if inString: + filename += c + print('>>> Total Strings: {0}'.format(numStringsTotal)) + print('>>> Total Files: {0}'.format(numFilesTotal)) + print('>>> Max Strings: {0} in {1}'.format(maxStringsInFile[0], maxStringsInFile[1])) + +if os.path.isdir(sys.argv[1]): + for root, _, files in os.walk(sys.argv[1]): + for filename in files: + filepath = os.path.join(root, filename) + if filepath.endswith('.dme'): + ProcessFilesFromDME(filepath, sys.argv[2]) + sys.exit(0) +if os.path.isfile(sys.argv[1]): + ProcessFilesFromDME(sys.argv[1], sys.argv[2]) +# ProcessFiles(sys.argv[1], sys.argv[2]) + diff --git a/tools/BYONDTools/setup.py b/tools/BYONDTools/setup.py new file mode 100644 index 00000000000..0d2684c388b --- /dev/null +++ b/tools/BYONDTools/setup.py @@ -0,0 +1,48 @@ + +import glob, os, sys +from setuptools import setup +from setuptools.command.install import install as _install + +scripts = [ + 'dmm', + 'dmi', + 'dmindent', + 'dmmrender', + 'dmmfix', + + 'ss13_makeinhands' +] + +def _post_install(dir): + from subprocess import call + print('dir={}'.format(dir)) + call([sys.executable, 'byondtools-postinstall.py'], cwd=dir) + + +class install(_install): + def run(self): + _install.run(self) + # install_lib + self.execute(_post_install, (self.install_scripts,), msg="Running post install task") + +options = {} +if sys.platform == "win32": + scripts.append("byondtools-postinstall") +scripts = ['scripts/{}.py'.format(x) for x in scripts] + +setup(name='BYONDTools', + version='0.1.0', + description='Tools and interfaces for interacting with the BYOND game engine.', + url='http://github.com/N3X15/BYONDTools', + author='N3X15', + author_email='nexisentertainment@gmail.com', + license='MIT', + packages=['byond'], + install_requires=[ + 'Pillow' + ], + tests_require=['unittest-xml-reporting'], + test_suite='tests', + scripts=scripts, + zip_safe=False, + cmdclass={'install': install}) \ No newline at end of file diff --git a/tools/BYONDTools/tests/Atom.py b/tools/BYONDTools/tests/Atom.py new file mode 100644 index 00000000000..a0aced43e68 --- /dev/null +++ b/tools/BYONDTools/tests/Atom.py @@ -0,0 +1,27 @@ +''' +Created on Jan 1, 2014 + +@author: Rob +''' +import unittest + +class AtomTest(unittest.TestCase): + def test_copy_consistency(self): + from byond.basetypes import Atom, BYONDString, BYONDValue + atom = Atom('/datum/test',__file__,0) + atom.properties={ + 'dir': BYONDValue(2), + 'name': BYONDString('test datum') + } + atom.mapSpecified=['dir','name'] + + atom2=atom.copy() + + atom_serialized=atom.MapSerialize() + atom2_serialized=atom2.MapSerialize() + + self.assertEqual(atom_serialized, atom2_serialized) + +if __name__ == "__main__": + #import sys;sys.argv = ['', 'Test.testName'] + unittest.main() \ No newline at end of file diff --git a/tools/BYONDTools/tests/MapParser.py b/tools/BYONDTools/tests/MapParser.py new file mode 100644 index 00000000000..72c6e69bb89 --- /dev/null +++ b/tools/BYONDTools/tests/MapParser.py @@ -0,0 +1,70 @@ +''' +Created on Jan 1, 2014 + +@author: Rob +''' +import unittest + +class MapParserTest(unittest.TestCase): + def setUp(self): + from byond.map import Map, Tile + self.dmm = Map() + + def test_basic_SplitAtoms_operation(self): + testStr = '/obj/effect/landmark{name = "carpspawn"},/obj/structure/lattice,/turf/space,/area' + expectedOutput = ['/obj/effect/landmark{name = "carpspawn"}', '/obj/structure/lattice', '/turf/space', '/area'] + + out = self.dmm.SplitAtoms(testStr) + self.assertListEqual(out, expectedOutput) + + def test_basic_SplitProperties_operation(self): + testStr = 'd1 = 1; d2 = 2; icon_state = "1-2"; tag = ""' + expectedOutput = ['d1 = 1', ' d2 = 2', ' icon_state = "1-2"', ' tag = ""'] + + out = self.dmm.SplitProperties(testStr) + self.assertListEqual(out, expectedOutput) + + def test_basic_consumeTile_operation(self): + from byond.map import Map, Tile + ''' + "aaK" = ( + /obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + tag = "" + }, + /obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, + /turf/simulated/floor{ + icon_state = "floorgrime" + }, + /area/security/prison + ) + ''' + testStr = '"aaK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison)' + out = self.dmm.consumeTile(testStr, 0) + print('IIDs: {0}'.format(repr(out.instances))) + + self.assertEquals(out.origID, 'aaK', 'origID') + self.assertEquals(len(out.instances), 4, 'instances size') + self.assertEquals(len(out.GetAtom(0).properties), 4, 'instances[0] properties') + self.assertIn('d1', out.GetAtom(0).properties, 'd1 not present in properties') + self.assertListEqual(out.GetAtom(0).mapSpecified,['d1','d2','icon_state','tag']) + + self.assertEquals(len(out.GetAtom(2).properties), 1, 'Failure to parse /turf/simulated/floor{icon_state = "floorgrime"}') + self.assertIn('icon_state', out.GetAtom(2).properties, 'Failure to parse /turf/simulated/floor{icon_state = "floorgrime"}') + + self.assertEqual(out.MapSerialize(Tile.FLAG_USE_OLD_ID), testStr) + + def test_consumeTile_landmark(self): + from byond.map import Map, Tile + testStr='"aah" = (/obj/effect/landmark{name = "carpspawn"},/obj/structure/lattice,/turf/space,/area)' + out = self.dmm.consumeTile(testStr, 0) + self.assertEqual(out.MapSerialize(Tile.FLAG_USE_OLD_ID), testStr) + + +if __name__ == "__main__": + # import sys;sys.argv = ['', 'Test.testName'] + unittest.main() diff --git a/tools/BYONDTools/tests/MapRendering.py b/tools/BYONDTools/tests/MapRendering.py new file mode 100644 index 00000000000..585843d5cdd --- /dev/null +++ b/tools/BYONDTools/tests/MapRendering.py @@ -0,0 +1,35 @@ +''' +Created on Feb 26, 2014 + +@author: Rob +''' +import unittest +#from byond.map import Map +''' +class MapRenderingTest(unittest.TestCase): + def setUp(self): + self.dmm = Map() + + def test_basic_bbox(self): + correct_bbox=( + 3584,4382, + 3616,4414 + ) + # 1126, 440 + # 1126, 470 + + #3584, 4288 + tile_x,tile_y=(112,134) + + pixel_x=0 + pixel_y=-30 + + icon_height=32 + icon_width=32 + + bbox = self.dmm.tilePosToBBox(tile_x, tile_y, pixel_x,pixel_y, icon_height,icon_width) + self.assertTupleEqual(correct_bbox, bbox) + +if __name__ == "__main__": + #import sys;sys.argv = ['', 'Test.testName'] + unittest.main()''' \ No newline at end of file diff --git a/tools/BYONDTools/tests/ObjectTree.py b/tools/BYONDTools/tests/ObjectTree.py new file mode 100644 index 00000000000..e05fdb15b94 --- /dev/null +++ b/tools/BYONDTools/tests/ObjectTree.py @@ -0,0 +1,74 @@ +''' +Created on Jan 5, 2014 + +@author: Rob +''' +import unittest + +class ObjectTreeTests(unittest.TestCase): + def setUp(self): + from byond.objtree import ObjectTree + self.tree = ObjectTree() + + def test_consumeVariable_basics(self): + test_string = 'var/obj/item/weapon/chainsaw = new' + name, data = self.tree.consumeVariable(test_string, '', 0) + + self.assertEqual(name, 'chainsaw') + self.assertEqual(data.type, '/obj/item/weapon') + self.assertEqual(data.value, 'new') + self.assertEqual(data.declaration, True) + self.assertEqual(data.inherited, False) + self.assertEqual(data.special, None) + + def test_consumeVariable_alternate_array_declaration_01(self): + test_string = 'var/appearance_keylist[0]' + name, data = self.tree.consumeVariable(test_string, '', 0) + + self.assertEqual(name, 'appearance_keylist') + self.assertEqual(data.type, '/list') + self.assertEqual(data.value, None) + self.assertEqual(data.size, 0) + self.assertEqual(data.declaration, True) + self.assertEqual(data.inherited, False) + self.assertEqual(data.special, None) + + def test_consumeVariable_alternate_array_declaration_02(self): + test_string = 'var/medical[] = list()' + name, data = self.tree.consumeVariable(test_string, '', 0) + + self.assertEqual(name, 'medical') + self.assertEqual(data.type, '/list') + self.assertEqual(data.value, None) + self.assertEqual(data.size, -1) + self.assertEqual(data.declaration, True) + self.assertEqual(data.inherited, False) + self.assertEqual(data.special, None) + + def test_consumeVariable_complex_types(self): + test_string = 'var/datum/gas_mixture/air_temporary' + name, data = self.tree.consumeVariable(test_string, '', 0) + + self.assertEqual(name, 'air_temporary') + self.assertEqual(data.type, '/datum/gas_mixture') + self.assertEqual(data.value, None) + self.assertEqual(data.size, None) + self.assertEqual(data.declaration, True) + self.assertEqual(data.inherited, False) + self.assertEqual(data.special, None) + + def test_consumeVariable_file_ref(self): + test_string = 'icon = \'butts.dmi\'' + name, data = self.tree.consumeVariable(test_string, '', 0) + + self.assertEqual(name, 'icon') + self.assertEqual(data.type, '/icon') + self.assertEqual(str(data.value), 'butts.dmi') + self.assertEqual(data.size, None) + self.assertEqual(data.declaration, False) + self.assertEqual(data.inherited, False) + self.assertEqual(data.special, None) + +if __name__ == "__main__": + #import sys;sys.argv = ['', 'Test.testName'] + unittest.main() \ No newline at end of file diff --git a/tools/BYONDTools/tests/runtests.py b/tools/BYONDTools/tests/runtests.py new file mode 100644 index 00000000000..9fe0c6cc32f --- /dev/null +++ b/tools/BYONDTools/tests/runtests.py @@ -0,0 +1,9 @@ +import unittest + +from Atom import * +from MapParser import * +from MapRendering import * +from ObjectTree import * + +if __name__ == "__main__": + unittest.main() \ No newline at end of file diff --git a/tools/BYONDTools/tox.ini b/tools/BYONDTools/tox.ini new file mode 100644 index 00000000000..fba49901767 --- /dev/null +++ b/tools/BYONDTools/tox.ini @@ -0,0 +1,13 @@ +# Tox (http://tox.testrun.org/) is a tool for running tests +# in multiple virtualenvs. This configuration file will run the +# test suite on all supported python versions. To use it, "pip install tox" +# and then run "tox" from this directory. + +[tox] +envlist = py27 + +[testenv:py27] +deps = + pytest + Pillow +commands = py.test tests/runtests.py --junit-xml=pyunit-py27.xml

okT`Nk43+C?^CUs&jt{L)k@$qznpFwz5$&j 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 hbtILpitr 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

Q?O=g=9&r)mp~kQ>g2 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%0DZ1x#+x}%JbYZ6jq!aYJ5mGp4 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
>YnUkw;u8 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

fMN$a{MAdg=!!pL?#*)((=EK^h6 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 + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +''' +import os, sys, logging + +ToBuild = { +# ' file to build': 'directory to pull from/', + '../items_lefthand.dmi': 'left/', + '../items_righthand.dmi': 'right/' +} + +# Tell Python where to find BYONDTools. +# Assuming we're in icons/mob/in-hand +sys.path.append('../../../tools/BYONDTools') # For byond +sys.path.append('../../../tools/BYONDTools/scripts') # For dmi + +from byond.DMI import DMI +from dmi import compare_all + +def buildDMI(directory, output): + dmi = DMI(output) + logging.info('Creating {0}...'.format(output)) + for root, _, files in os.walk(directory): + for filename in files: + if filename.endswith('.dmi') and not filename.endswith('.new.dmi'): + filepath = os.path.join(root, filename) + logging.info('Adding {0}...'.format(filename, output)) + subdmi = DMI(filepath) + subdmi.loadAll() + if subdmi.icon_height != 32 or subdmi.icon_width != 32: + logging.warn('Skipping {0} - Invalid icon size.'.format(filepath)) + changes = 0 + for state_name in subdmi.states: + if state_name in dmi.states: + logging.warn('Skipping state {0}:{1} - State exists.'.format(filepath, subdmi.states[state_name].displayName())) + continue + dmi.states[state_name] = subdmi.states[state_name] + changes += 1 + logging.info('Added {0} states.'.format(changes)) + # save + logging.info('Saving {0} states to {1}...'.format(len(dmi.states), output)) + dmi.save(output) + +if __name__ == '__main__': + logging.basicConfig( + format='%(asctime)s [%(levelname)-8s]: %(message)s', + datefmt='%m/%d/%Y %I:%M:%S %p', + level=logging.INFO # , + # filename='logs/main.log', + # filemode='w' + ) + # Cheating, but useful for checking for unsync'd stuff + compare_all('left/', 'right/', 'in-hand_sync_report.txt', None, newfile_theirs=False, newfile_mine=False, check_changed=False) + for output, input_dir in ToBuild.items(): + buildDMI(input_dir, output) diff --git a/icons/mob/items_lefthand.dmi b/icons/mob/items_lefthand.dmi index fd773f32b7732c73bebb2f8300ec65f0683809b1..dbf957b8c2d4eaa5ddb7e93307bae8cd5df748ba 100644 GIT binary patch literal 167268 zcmd43bx>SO)CY)!kc0riB@hxccyJ4rV1p)jaCZqV14BX-cef#mf zRwc<-{l;n*_!fxu@z*RVoV+kvyM95VO}_B-saU4wv^XiUjI*503{CWm>v(eaI}S+w)%7?Tu$( zZDf&1;nn_$j-}=KG3tUNHRB{A0Gbdaq`o`Yi#|lIJTP_6_*8$W@_pk_xgN=B{Aa-0 z+HyU3Df!`hQ|on+JK8R{c8pIg8J_FPS9>eqinC0@T!{M?ziHS07ShSLh*MCRdjHJI zNCPi%$*jM2%d7L#iC5no$ttx+#m&-Y_|n*?M%k%d7B3(BKZ@BEPON5pB5J9rYEO0eYS}jq=voehNts z#aewjf1KYOa0jR@ zUM-}ded_o3p}bEn3?7EORMDP6kc=>nl9j%5O!)5HRlx@h7GU~{r7QT`+k`X9McM`z zzSU=u-XV4@C~$^slO~&KvZ=uJ%i*j0d-~4jkwE3VZ}VLrn2*SxrKSN(wKCQx4O%o^ zc=(5j(NOGSqspv-Pv}4_&fIFalwTfkx!7kUXZrVr_q~U=gfS9w%a+Rjc=xEBiW+ZcKDtl-ah4D& z9?weHnw6}uLXF<{>?}initO)n#SQsWsq3SwSFKfYiW%<&LfH%A62^TmTD-CNBI_(# zt)e?5-y#qnPcsLSw!)W++Ue&XhNA3b>wasXph*yq`VDdw5W9 z@y*t~WaO>VrsJ3Jp9-9v$%Ep`6R9ai28ZN)Aof|M2j3}{o=+y*{r>C{?vR1)nDwEt znAvETg^!>@_fqxy7vs2SkrH2cbguqWN>TDhL{+&z^jaF0?nuY3`L4)3E1+Rs)FGCO zs&sHRCVTM^Hv}u~ZDWoD+3zc{N)_8NP({NY17+sRV`3FzOS;7vP{M-i&IM|((50Y!&Fg!XTd7Fi$bC~%k zE=S9Z|9+`;45|y8LBGy7#Uy;%m+*llTa81nOo+|z?EA8~( z(D6>8)*tUBUX59^G{#}kDQ}m!5sn|K;;^;oIzMi2g$bt)ytLX`7|)BmgBN!XToqhp z^9dJ}soLkY)%VddVU*cNGM01NDFMa|6A!twd*Bk=>5XK$LdmBmvdq;)Btu(XC41)25^e66y35);qP8g3%%y9x z3Vvtc2wU@iHJzh8pQueOsk~LfcvReNA1-&uu_NQ&%Dzd}>=ci0-IU1HPP$nEgZDeD z;C+d9lYz^|BDN!wt!%a9o^HDL8eR=Ns25+mh|XK*Y4Y{nv4cjie8s!jdnoPZU4Htl zWiet4hsLKcu;}^`_x658)nD6e4mF3cx+KBH$iQiQQUd~$(3TQ-=K%OtIN1K}l^Ol3 zyVb2fGPc1M%IE<@?H7$AQvHwR$RIXzcUna%(tWY?v{XoY>pz~gUXJ+@ySJtk|Df&J z7-shgTz^G9&}MwkNn3$OQEo1vj@}M^BPk!K4lI`8um_t~lotjz^-g zVmpxOs*$ujww+CqQ|uM<7Z7aa@?r-YeNw65V40tPBENT$biETjzchDVAuIyT%Nt;Him?AbOQOz*gME6`Gh zYP-^^NGuT)Cm6m_5C#3v?D%NIspM+J`gP3E_4ee8TbMGlBKE0W1wk2cJJqpyypkYC za3qh4(xVTnd%eAi7I-F-2GJY-O!j$a%Eci;KQDEc{!aYZh=>nMTy93!Gsq5B5I0sc zXP>5c)t$wZ_6gtz@6gEQcGIv}cc(D30H1X^-rq9JhC`WKY^<|CY3x2tVBg78_R;qn z2I+=8=j5bWCsI}W_+yor_%e};SwPW1&!!4T3>|aF#pMGnLp*mQmG6&it+OWz@t+1+ zKgmD3pN4;VROW~~pR>=L&WwYjk zAKTQ|#=h1hDN(=AW)k{zAGgeJWvt^xjFoY+Ocj^v({~gbl7YJ4X}nLl$^3<~ZiI`d z`+v6RmyY|@>L>U!9*pDA;&Cxe_&8Q$;sM8NI$)8KGT{LU{1+3}yU*u!NZ-YSeE1k{O* znM!h=eXE+EYxPZ)+nZK$`&!0$<9@Pi<)9mxp1tMw?-sWCZ1iR>#cnP8i|WU}I0T{! zY3P!=gaLiM$*(Uyvdq7;_q4IIp)%Gtie`*+4`zZ28in0iWXv)%EFWuJvohvWsEUf; z{Cz=ATdP&jo`mDCk(*#I6pVwgPSQ>|g=)X)m;L;%j5wPYXrZLyeDYKtT4=~+%kCouGslQrm&tZI}7@U_TL?%_<7D{{MlH!O1yeg9}@Z6 zgJo)U&SivK)?P2_S6vhP7?5&)%I6BvSg>9!*3QG-MvK zOmDX+X=xHgA?drBy7%WdQL1KmOdGbEfqzk5?ESw%2Ls5N&d z`~CCcc^ZS&p^|Frjt^z5LwAJ4UA zVDaR!rIaC!Mkk2)GZElXpKm72;{VmAbA#08I@cN+guo5flPM@jdAto5l7CR>2i6IT zk`B3ab~-?Ebi`uU$LlAJ@6lh>Q1+iay8ObZm60^tn>+M#q)yfDg?My17YF}qLH3Ao zE^Ro-DdtdJQ)SAB)F7w5dWw-Ev%7%Q$1}+j|EMdYs^GXTE;&lIfqrKJP6PX~puVW7 zXOQzoY#pmiG!*LPXv;u#r=Ki>(dyY-nWskQO(b_%JqxU;rr-P){%IT^f?GsG+_UQX zEAw5RhW}FsjmNPJyDvU8ICNyPp0+^^oJE5s=TAmWZ_bRMqt`)h;;3}$7BDXsHWn60 zPFCAD{V&`nU3>ca7KJvR$5Gxl#x|FwTq*ky8ayk*$Lvj}@~fY;Qcf*AWaBXin%I?C zK!QgWR4E^^p7uNxTi%I$js@rEa}Ko}bk#jBB)a#nv5oCQya#eg;>iDS7Qb3c3b{C% zkph>@I$zwOrl5WXR^vc{?;dEyAjm#s(J4kEJODofbMfn3r@Bzvh87!%^s^s(@`p40 zK!p{}th1`ABMi7#FJD57Xrv2&;IR!rKx9$t)RRgEWL{V{z{PNOaOw_i}w4S zg<@~`uZ4MH++W<{oiQc09<<+;gSa5IbXZS$-s?}OYTJPS+IV?5h~ujsLie#8i7QyN&HV)a`oH$0I~m7a{Zs- z3PBf-tSW)76k#{3s&4bm3jg-R6hl@2E3RvET|~u!z_5F(ml9I{4*8*|gu*PRQy!~L z{mJN=RFtX7or9e~}L2c@f{^*r3mmxn_cdb#bKq&1pR9F8-zckuQdN-OZvG8|PO=MKqG>pI$-* zl~`JnVsaB+E+iQGX-A&LmU)D|fR3)h-V?=mW*B}(UDLN2$ZNWN%vm{HQTeE??|#Pl zhBd$N-m3N6qN~d8xPdS+d2u7(5a`3Rf{Kc<#h}}3a`TDrMi|Ov8uWKRfY2cb8fmlD z{PV8;aE1z0pcG1C6)Xy=&Xv&#DrN#BefU#c2S{=aR`)}C zgj}yNFjk8icD>z!kv}xrbRqbrfl+Jy6ckqs*=%XL3B$? zxA%I_em`krt;ECA(x(;^PfXZ+wgwP6o4k^Yqhb!S3g6_bF8lLEMlAo9G;k7i*Es0) z+RlPy&q2WP8~q0+5N!MVbk28QM_hCt~a;_r$ujid52E_!)(kxcfIE2$?9ozQ1HSGI#n8N%*4 zkz13By~kUtTl(Za!KMe|`z=R9e#i`4FLjfyA#&M4H4~FeTMrb!w>};>Tj1p>;Zy)W z{rO$2rvW8Tf=k5vJuidyvMO4T7r6g*i(|5+q++Ide9(RZGbwfrJWOP(+~3s9`ofx9|0ki~XhdRE z6@29;DYeU4?8cCFnvf@X(-5p}cMqrhFr%cU<)z2p%3goU=GT{}nO#Jjyhj<~(7?;o z1xQdo9#0;TI8e?oOi-sIreyPyB8U{&E@=g|fEu_^R7{N=c-O`bb2 zdd=@=v_4ri`&?NqlZ!&Gc2ZS02TNCx#0Ha;aS2GhMPs;1IgqTrm2}D z!#|?=b|BCR1Y*uJ98EDIr4cA#4Zk-=MwJP69w4`!s;Vz;<(?j)s6Pw-4$D(@d*XMt z9J&%lg;%b9-QW}0da+%syK%BzTrMuXH+)kbF&vOz)biXc!Z2WKtTKDXb=FM4Q=uYb zUwe)x@_2UvMi;n%YlD_f+Q!f%37N&?W=JyeFJx=G^rH|N3XUZc=by;;%^T`Q(3FC2 zMGdGR-;uG|HI{wY&jo~9VftOyvlR3nqm>>=bPp`na$ z>eO`O4C+j(+|Y1#4)@+7x}ZZ*5X-v9z3BT)R;)ucQ`;<|Vj+i|rmNBjWX)))Y2hDt z#iR?H**I6$z|7bRO4Al8qtqlk-p4mylitPqpt@CS+P0(B%x^hOM=?3>k)-u!{7X4#oM$l&m zhr>m?%t>wCM;zq65O^trZls1>yw3|RRE)<$v9@$$;tpZ4hJuxv@f`d%6FGg|p|4XD zZW+2-6sgQKxqD{A6ACSkR(t>;H6Zl(ls=xB5PYacKbapTb$P5Md3eydw>+?NxXWib zbRx3&gScGWaMxpJFoLElk{EVuKRNVGFQe341DbMh%Gx72(nv}xIgIj(zNm0eX!4ls$#4LItVoJu2bEUxezdGdB4Fs(+6AlC+l$OFt8L*BXl`>S$S&eR?VzK zZpv)Gnly+DJ6YbY;yMJIb>=f@cj{#wSY=MHU*=0UDGw%cd&CacbHkgw1SX?)3(yF7 z9zznu#yOyTW&U()?zL*u26cQoV2&EmQQ0h@qmAL2B*%KaD>XliKA){>6f`(@!%%^5 zo{Dcs-v|j+TuQ(fyH7BB-_~GX^x&(CqL0hZ?4~+csLJQ0vK3fr5YgML0uwWs#JonEeEXc>j7LLmCyjC+;4` zyG7f~YC?hg9I8FK-@;|wH02hC?L1$n^DUCzYx_IN#uN#YY8oITU^#rcOQ>8Rz{JZt z`jA#o3HR{G>%eTSw#|N$74Q1xi+&eZ#+E)Gj)BqFzu>n<9H6F+;W-BcwACK?G+rGJ zdUg36YF7kA&eywUjRim^eyJv1ttW=A4Cb>i;5VHy%0G|?Dk!gWxhRlNyL$kJ*M{w{>t^rgYnu+0&;HRD-*H4TrHF9L7O_ z$a<33#Q80nUoP$u5fxIfmn>fPjyHL)S-^pB@g@&~)?@T8MRyWG8|>H0Y0?d}_1Dul z7raiUOVmPsrrF|tTm%ycA$4+RRf_jbN~sas4wCAWuXAQ-tU^eDBa}--Ftt3(bhh{E zTJJSSDDPh2%9c$bw~ZRQzFvMSK^r?yxU&1BClvt(Fj$7-Zt+lJuvsrT{)91?SwK+l zsKVBBpEyWIPWxpg-K5kbkuKc`P<1{eirNWHR&*ShtlsoNXjfHEJxE*IWZ!b zDmpY*B}sfo#OY1%p-Tc0y@al3nbUj?2w;<%s12};Y5_qMA05Ynpa1aMnPI7I4JqJ8 zY*9F z*)FJyT^dd9Z7!wqTZbYofkmlJ@3$7i5xDx&d8y@{29ZPQy^C13-{gA(8%y?iTW{MRqarTs7=dTD(-wz zF>tv4#Jw812PMIUvoyc)w}v0cZbBJ&bk?llSOB#b3z|8u7S zqr}e;khA3h5A{j&_A9!_?;E=*>)&g(LAH^u?v?@7yt7%5Bt{P}3Ga!YO#%5HS9XM^ zfv@U~E44A32{M8v+pq^-{5wA@7ypT`3}EQgM3>?;q~496Pvo0b0BD09WYhVT@MEB< z2l8SqPQza+aW`Or|G19#I5MYLYR+PJOuyO32?h(3P!u=QUHHC9$Xh3=wA$@XOt#@| zHFUZ3_mDB1Bb2X~At<A>Kb?44Goo#W z3py{ggnAlL`2k}}%91eQ#W6c*jX889DF|`gQJou=S=P|H^~Kf^xn0f-lAb+Col;7T zvls%vhThPRqFUS@Nk6b!*zKP4xH09lv3ecBCjcIbuUj<(5EpP1pS~+sOIcwyyypv`BV^1s1|l84-=kvR_)PogRFZhS zq|VpkawJR~j)tLu4l^x{)5&%8FMVH>c1O(yO&(_@|Xap1pmkjrJKpT$LsKNDZtrz;S9A3M=-QG}V{TAO! z04eX=p;o#hhl6FZ*wCW3>W)9Bi}mnNk*RtMPvTKUTE>b!;~7l!G~@IyLOiXydORh} z=IdN^*P$+ztdIXOR2jT`dJ8kd0TO?ccfQ#2&in#>XvV9;Y#U8+%a85^t5AgApZytW%&2$SBn%mq!r2h(u zYAMI;&h*4X<4t#8pI{(3P|vs(h}iJzx8`*ib!$F;A1JSzv_m}g!L7R~2N9DhP#(3t z-FNo>cm7Dl$3RtMw`l(|=Z4!{jSLKgP4(K*9N%Ir99ZrEe*PjB()4%|P%~7uB96)uA)Pb|?y06f)Hj`1cib_q8z}5V?smXoxcI)9C#r^>55W=H=oq z86ns?DVs6CMH4r%jH8DJnb4L?+mXy#xl=yz z+tT8Ok)ZIQ$@!oCB@J;zA&2RKh#p!((}45DsoKP}WcTSwu_t(b#j5J*dLMUDy5|H) zA#_*CKHJ}e%E5r{OVXL8P2?2ugdzT8W9o2*6%@B8aD?%_7u^V~%&lM`F0)jvgLTjS zH%nrc2cbcx69v}9yFR4^Qx8I|$mqtF&A#su=VLH$B%KY$QJAk0*G#J)Nn{>Q6ETDt z!F1B8g}9bQxpz)y(#%Fy|s8 zbWCk>7OO<7Oi?WsS>Rr@Hq}8KI}pbiT~*AGV4lXividL5!%(8)g)N=J2*9ZSVojC* zOebaHj=)f8dA$TDbjf5D4GAT`8!2eOS(p{eb8i;2k;F5hADLITB}!dvG9h!~)cJ+z zg}LUE3x{9$(q#wBWKI#;^A~pQ)3j^ILo~1;?sSmCf8tYJ`vvOUsyR%SNxA{8@WM05 zf=j7>nh}awIB!=Bx59RF7^Xc%y7BTXne4JP;-B|DZ?}?o@M10kM^!f)>%ZXBzX78E zckU_OC@>E2Dq+H*QIWlMJOZko>t^+;C<4;*x@W45=C_I!w{y3$Q3OC6D_qD&AUlG_ z(hLGUw_1KhI54V*E;HsV3)+nkak$DrE+EsjDjOOchG`q4h!9LQIy9Ii`10yZ3>UX8LI~u!utVCjD2M!UQ~S;1jpozBu|jdA zh2;Zfq9E|W_#anGHPWS1adK))=B)<%$1ETQgu8;B2ZkSKA*PwwSTYJ{r((!t9mg5% zfS_G3n2u5AVR;a!$SC}M7=dL^WN8B;JLtxvdwtKiIZwMqDPOK$GSgSH!JRDa(-KTh zcSez6XLH+jTZdh)0q<*@iAi4JZNyYcqO|TC)Y(%PV0idx(`P=BN-_NdtDJjpnG17r zQeVmWp>lu7q#8k{+l%k&F4A>5mw-AJOz`W^R>WQA6#@eWX($li*hPS8en7Zi{S((B zES@PDe@!gS#a<;dTVy>Ly3i9&U(9FOt4mG^4IB~cX&sryRFA}bdjioPCrFh|>Z^mX zlr)Bn{0{y}Ab6p#XpA172@12_%4;DO^p}yO7Z9nc2pBT5R3I+MPdk(v1D+M`K<8)! zOSHztNT+~FF=7O<0SMxx-1rA0h$DtINr@$toQXAoijtMaGL%uo(H*q*>h1Yz&L0f1 zbEi#H$1iCD5T2mrK|)~qe?+7j?*Ostui!GAdj0p^#E>^`3zI>Yh6zN;vkNRbTs&WQ zUr2;FfsH#-AB$k*J%;z`)baR(KSllZPjksY;kEZv?R*{)jb1_Tx_7mx61LVgXdV8f zD^bb4sjp=HKYL;(7#pm#{9EVE(+CeDq**Lq9`p8rWgH7dyd2SMRy?1_j~QR}y(^wcAZz#K7G1#{EnDxijzi{+_%kHO%U3`W`bzPesA&hW;N%vC(HHa;rV ztDdRj!W+vC+SR4}rrvLA|8gg9f-WrLZ6%+OSCA@y%z}>7t6D%Ytrm9N0oFbU=aXj@ zaQ{c)a-j$^V5kFSV`GMtfG3}{>$%C?wP1c4Qjb?evvM8z?GyXNOpD@38rh}y`x|Io z)N?qQJ-261n;Ph~SiImQ|I8Fi#=GL={_YFNgoLpNk-N+6ZHj<8KjuyZJdbAoS6%*X ziZwvkdQR&x0b#ottrW@zb%Foq@j})R(Ii{zq$KR= z#@Fkt#?|gmm^)y5+8I`RqeS9Z)rt5;GiY+kQO z?)I6HxhB#~smu#rc5u`aZYSI@staV%-i@tvl(K_KP~0#3sZ z2@M5aWBhK=|Mu#_nG*>6lfYRRFE5FnM8c)&r~(s|d8Sw=!N2HRDLf1vOCpMrX}o!s zU6i>QK(D_MO;?zAGK1K%0;=W!uRJD4ks)vjMptUo zsF|Pc9vbtPTzygBM5zGl$Q%}90QgS{WoftP-t@5IF96PLoj4)TXnMuqO`mdjhm2yu zZZ>29Cf{=O76?`&>Jw@gduW)sapfxEZ^|J8n$jZooODhc^!*(jf4wPIaGHqtkq z8HwKdEa1L2#Czn$V@eM*vSg(KA1*!?Xq*l3GV8FXLn`omH5y3 zBW6|uVH%kp>7?vtji~MPJLaOWkER|EHG$wa5z7T?+>OL-{ST9>SJHLY&8Q}zR3oUOskZ_bB-xROSO&bW zGJx8@h3zmV?PPh1BJ~38v~P3zPK?V{z%fMy1xl8^kqH)3p6|4^<2_rbZT`+yf_eu9 zM4LXRlITSb=*UjImO9`0`T4-;XuYPW+iGKyR;F3_ z=Lat^8pz<}Te@aUY zj=M>1UeuMngAN)AxFvxE)mf_(cH-yu`o4!CpV$m?L(j&SNuEbtO^tseR>^{Bx=n{t za59578vJ8+qyt3V+XOE>dsJeHsO~t?vz9DHtEhUSy6N$k))z_huQ=z#8VR3#eE0eEz7I+o^qtW$#pnuc(mVkN6*GUM-Pa% zBkH9x=9fQEW7BajB~wq@5?u7t8{qg*-<~z5dSl?XV)A5p(9k|RD0az|MdS4Lve;>q zTz8h|URRF?vBV6@@UXi5ktn`&=#}X$GhD8=1qePeRWJHOg* zj{Q^?G|5X5b^GP9TMKiTDS0=&B;`26Wenb}O%-*sm=B_QAI8!OM(ge`wI*a`l_zlO z<&l@ao6OsWH`hOS@L(!ik=W70i$(iG3ZUr2w*g>z+riAFrIJmESeYKduHTj#C`O$I z4c$7OF7X?9?C-XgMig^<_|>GO+-CR)dVf~=++=;R$|{s3<-I3&dFYFe z!^8EXV!bV=J&!Yoc56kJ-UlCp_VrC%z{bI`k58p9v#zrsvV+4InKU}QF(1IgHgw~E zH|FknzMdo@Sq@R)6izS*skhK7#E6Hd?dnj*$#iT;Uq>U~^j6>OP{8s_I$E!P`z9zz zhq)}_!@<|xU>TVQ4?hZ=_$xZz7;U|G-NS#+B41{Dgaiy)pSR-I$NSf41PrhhR#Inw zKFN6c-uY-~6vFM&fVeacaBGxLwi4G{Tv3V2lsp;WEZ5I)thoqTJikej@>(4EmQmbR z)NlhtWjNsF@9KFj-Y^LvfA>x_F<}s~LYBC8cSKgq$n&AvYB_*>GaGfq!4(is%)Y29T={yo%oM7&n>B`8Keq-)Tux=s`@#&pJ)OBz;@ z#rboS#9MNbYYPDb8_+*oDVM<~4JvzL(mQA`AWqe29kSP^I)^ZEQp{Vsixq8th)=KAb7Jz^wVycO%7i=ssKe58F&X zg;xKQ2dZw*p8q=XxTyb>lyztk5~J*8ZEgw5WsSiJUATUQV!4xNvTx^kexU(Vipf!y zmAMURduk?O!kX&enmryxP48>!@P1%<2fm_B>!Agmb!FbVMBG9W7Ho%8bKh0lbQ_ab z(DRZJGDs~R|DDs)%-NhM)XEQCQ5nsY6bd+df3yVN&y|!WpyJU6w43t*D>5qxO37oC ztT~h+;WM9X5J7sQf18fa;E@OSZPs#ivFcn@r>bAT#GzBYS9jH$!gymncPWsd*as^6 zad}CmVy#z~1q+jyosR>v^Wn@clQ5q^jjhzV{N9e<__RPS7hOHa<*BynN3Rty6_^J= z1M*~z*EoGdCP6rhMoo%@aFk`VEYN1vTbLJ%HD;49CeXZIHL$=Z+`=(9?I>H6pN zQ^2V(W!FF4RxdYc6$GFD&3PgXK6MJ^t-a?DSyWHX4~^UT>{pb$qGH!TaD%^89uQcC zhmF3eg!8yuIq^WJdd@tE%ogZrWd9!AOJ&RSeT9bmWM%qqvzHpwDr-od#P2olOG%=- z$e_dQ($c2oEr+3t9_J>3#Twh(%6<8yhcOPa?fJp4 z#-=5peGlhQEqCc_wRh)Ri%FPxG@Db}rh6hDpY%s+2%^szwS-;W=S^M%LJ6Kb)TRj|Oib)&sfIR~>I@(O(dV%Qx8WVZc{*8+IU z4)=GQP2y*+9s-K*G+QCdq!?LJ)n+r4{PT2ofpZ)ueAqXoz!d=%@^0k;;&Z!=Td?vh z0EAiPdbBG|9Ig)vS@t~Sepki(Q|x31HcAI?ZT8-q%RU;FHU;7yJR+-;j?CMG-jC*PwCMcr5od<(fviYotY^8btb=Yhd|A%PI1EOt#eRJDI}q(5J; znO?~F-|{H&f0KNQN2bt6uEJWEd~j$#tXgTs8vaIshaXl0M-9YZB@-}-edlKVn;y{Q zcV1)DV?@2TTMSZLpf6YbUvF?B`IX1`%DDbpLh0@UFl3QYPEG!ElM6AY;X*>;`F}Y> zSUFFZR%B zN}8}Tk`E$~eSJ18 z*#reHgGB9*EH7Q!Y*N*S*9g~9@wKj?jjo?C^m$9OJ2}qm&6dNG_LT;A_JL8=kQ;=x z-n|fbkhw-+t#j6mlx>{wo;rdK%c^|)0kj2;HCOBiE3+9+6#}*4=Un)<9e1&OC@>PMp7*A z64U&O%i`4CvhKy-INuY&BzgeoDfNk@zo?gS(%Z6zl~5UNs7vEIrKR?pb= zo&iT|o2!Dh^Q|!=o70H%jUbJECzGoszKw`qFU8HVeE(tjG{V7gsWC6>{J3s)2;hHO z7J1!zEB?Fwa%5n1lbLhiD`}^!V-0k`r&Na1Ae%_NxJ!nH+v@2Z5xtZ_xX;x-vcE?q zQ1?dv;#`k)ZdYB-OH3IyJ8ggU_oaZ_2%Sb|6d7`eFCr_0>O0c^jc>}nRf$n!)qqh^ zGmk-}&m<@cpne+z*{D)p3!w)EUhrhU|p8ZcCuJYZZE{CH2bx z!keonz)r2DV6vq>xv4~^^4_w+KhIvjq7eDpkx5lNI;N#A)}2#*&wYSBKl$n^U>%9n zBR9vAh65@*!s|j~FX^IBRJcBU`px`mQh~>#&dJfq->X?)LRfAIUyr+uwGhpMc9Re` zGRM>!)(HvcM;K9VUb{LjteOkJDps=@&>}%EOVj3{=nr>mT~q7a@M~R*cEQA(ij?Z{;CAmh@iTy?#8qlxBcI*?bDPJkE+l9*kZ3?mP9iXEru6608f+;ZAfCful}$L zL^jnpmBdBb=h>WWZ=viRYwdPj9OXBw!LU#%gLSsokq*&f7Co=^US-{!ZP5)~)+7FlzurSQ>K9=DV_=rByyL3X3}ES|ILU~}A= zDa~sd6sk1%&_6l~8%W@E{#p_Pr1Ahxj6ZrWW2UlL3*O;c6t-c~bsUQDI00X6Z&+A5 zrBzOJ?~7fEL3R>zM}B|hE%dw0&+xGomg~uX9(xT=wC@KQ zES~>KM~mwnqIFhCnXF=;$)@u9yaW~2J>$WKQ39rF&jp9Kr&avQ zOsb3nROKEunYF%T>rNGNq@!GRr2KqUaeKY02f5f-SDQ0!(l`+|VR3FS`F6@RHiE}J z)N^i|0&hld|M8Q|x%f6EUBA22-?h-XsZ{MDOHl2jAstoE?1g_SJhLQu9Y5sF_N$K0 zPtx1Cg(LP&K%vQ_qrV4@f@dZ^*>Y5-MnF=9@VGqI z0>Oc>rGNK+)IyZ`{2UfrJc{ZW%yxhD(9p6o_|iF%VM#@$&S5m)W*g7 zJISeyzON1w?U(sqVDyj1QJ=OkHuFmKDi)CiIc>satZOIJhA=>e%e&DVgdXnh?%|20 z3%P9pH6#8c;=+(Oc!27@{e04d_1N$aK~W8aUHD0UUyOK2;*0$cYq`ZB?klDGMDtJgm zhDUoMz^OtYRUuXz732(L`kMHyQ-CHqz7RNnDM^qR;Vf^7J*{+H?atr7-g~a}8KbfR z3m*46PMHS)g@t32<^6l?*MFbjV4}C!$9_0bGht7nAPPEPdL22wGw9cFyfn z2OdwmV4evXDxaXXjW0TDg#2y$DMyiiPH>F$DgU%Sm+BfE)sP0mu}KX7+~+7KZqt1% zE%75&@I8i$7;Xx-D0C=4eB=0h(7%P+`vA?)Nr8)$R(*^EXZ(&mdK+l+8kD zd9Cwn%iX0Jx!h*=T2~FrUD5ZUMD*f6{KaAqCG1d8HDn$wZ=WW7Pi}TZ%uEHy(^&V0 z=G5Y{{^x%j9vwM<2?w`$Mj1cml?vSVQIuu;2Us*aQT=i1R;Fr0{zael5plIEmdsXa z;9E~+tCgh+jf}?&lA9W7CGNim3U8x?8^xbzQ%IcJPtUa4vt#+SVo@dH`SOMmqYjTI zM@@WWKChD&%~u>9{>C2&Rj^0GRxBB> z_JZ-E11Y&U11fW~AZ7k9&|41YxuHLBV`8Lc(akH;S?YO^*S#`RO-htU_%|u1lB!o5Y;FRez*@Q?7MYZs#)g<2bbx)_I zH-K^Y+2NwNy~^uje~~2NIsbMTXz6gtB@Df3ogeAqz8qBCiH}>gLttyY4X~S>nlDeP zjgk!dv@H=SHD^?0EpfUv_ALAB34QI$Uq6vq5N|4_-i#^GKKD{lRNGSaZ3(<^vRPy@ zKTW09w6IiGk;<2{Y|h?(=CrX}F>OB(E;@nUJ;7!UYiJyiBkcw!wWl?U(IG-2hkfP@VGi+ z3#>jV{K0USrrYYCZ!TU^%~y-Mt@Oy~Q;`;>lfmsm&ry@>qtYOV8~RhwrZtmEO;y$L zwNr#*cHW8B{J)wRXBaS7V;=`ZEwy(7CC>@`fFwAR&k>wZm}PHgSoiG<3i5yPE=Cn? zMarrEbW~wU1IuKm`m^bkK+Kqzhq!X z2S{o*%l*^lg7q0OdULSF7ZfPu)8!>CiiS(#Cl#7>@(OMhwq;&yRcYAHhf-Pb4iCje z?5cm>O~)+^mBb$!$*8>@cG*pe+bL@vQJM&+5nu+XByyqtQe{D|FK9rt7*BC$l1~^5 zE7sE>%4XwpcAEXd-t~OYm^N2?P-CMue#F}}fKvu{zDL}4U8!9;5kz}{MMUyX97~Um z7Jx>>?%Fy`Ta=q~#4Z}@o4(N8 zIM;&w0Vr;y%cOoIVY+hIes$Yop^xs~L#q+~5YtQ3(3kkMwD~=ZB`_pT7$orGXzyfmJi7;hUFy}IQ+-Av^tEu=9}DZ{`U#s^_Nvb{BI^8{@&#Zi=do6V*0ru?&;5Ny;nAWu`yx;Z|2P>Mn zTpAnfvcK`sB;ZRu{UaIuhjw#)R+jkWj90U_nrp;!eA6xX)wh5T^@#b({Q;KD1N{&9 z(YuT2-=0u(<=GQD$lsvxKbQ`Qao?hIn)QsQzeV~^2=7)16n)c1-kd^;yh9oFYm)Ska`wt9_ zIa5*@^fxF~w9QH=&9u#)3w9ka!mvKPe}RXW*YH8312a?#kF+!*-D~EZ4g@_qI*Q!? z$n^*~fpn^TN*4Oi#O1ZYVYU1Ez!~mC z=kl7mPgBbjH|}-bXyjcoX^Bg=h?|B{o%e&hH19o8WKoY^wI+4{^i#=ZWUS^M26j>8I^_b%xqVvaN|@9+q6W zmt~79Jymm$AZHRdKUD()tC&NAw%hCdgv=L{rV+vm#5#K41;o`xUMUG@lS6cQe`vDczsz50)1@OsQgX?ZBxi8kW z3D2(WxG$!sLQndaJH1{zM}EU5XG=TcQn48OL%Mpe;kpLVms9DULgVNmH1 zftV~NL9E>^71@haJVtE$oN5`RoQlrm1 zjH$2YMu9|WX?b2&^>opgYf~41T{a!AkZim#N*$wmw`+faWuG=C4W+bAi}rSG+~d=5 zngkaHQL_)=@vfs5&oJJ%QN=uofOHx3T2w715LnTnfa5rst3nlcGOefMvNMqz#+>p6 zlagYx)??W4-aK~)R%)1}-J%+smF4>NAq^vFd!{rET)Q<}Y1xflug~XJ{Cj(Rf90k; zk;yhjlaq++Vp?0Vtx7P=k z7Wi_DZX9oul1ff+ZJKuTpwH>7Isx)X1zi^PfrQIiaklc6ug1}bn&q;q*TV*MQ}UKn z#eQM@^zPeu;x4nmS0PYpJ%jCS3=ED4zt)hj&qa8|68TtORZVZkONXc=^_sVx54#Ql zDm2_pW$IMtH1~_!&}VyhOAGhtXpH+F;2`Q@cy|#`M6=eDevpRPY(`v{0f}IHmzPG5 z02g8;VE2g_EJ|?XglRZfK1^^~qz!dKcHogmzo*-LLRIKhCNC`|&chfSn+2p8md^)= zEM&ZeJJ-7HGc3TDm%M>2d={ZmRdWf1a0E5qFN-XCuc^1}l5E)w4D?havO|ClO3dBJ zK>&rMfWM6a7%lGox8O%W2g0>juRM|b-Dm0R<4I0R1bk;Q;yTMjcHx#HT(Rw&KLw0c z8kxK{`+qR^)=^Ql(c3VnSV$u{tsprlARq`x=O9wj(j9_`bV-+VgVfLrf^>Hb zFw)&IFaykYkI(bGzxS{A`{P^RTJKqF&YW{5&bjxUd+%#s+rhEP9le&54c7Ei6{gBO zd&6DHCK<0oh6JtbLx)5hpOyqNk?ZB(RFa>Tzf}^5pOuwmyKpUSp~V`yBJ|Ga8f~Rz zgLeDMn{QB?>UCpo_C14$XV!C8?59ttIRm8ltR3kh>}w5y6eAB= zqkX5A=3;SOu@5KOuCA^MkM~!z*8FoYaHnWU#T( zP~0CbH&O7oI9<`I{*=any+ApjJ0j36^cU|votL5`Gfh(5U!)lKuCco=JF4%fnW5nQnU`=A3uGnqOYHZTW}ROqRoI2 zeRy83g+2FFv(ha3buhKQ2ew43vTIvH-)~D{vAspr@Vxkj_gq=qUB2Dv&?t?AbBoE z!c>J}nmM?I!{tqX5Chg|k$@dXS4H=LT|s1k*}xAuwy}yapDfD?GfQpS2{_vT7&n_P zbhRpBMU+o1Gbqfp3SOS`z;jeO5yLrx+OX{r5b^}P##D*85d?X*%wI`K=sUYKS4E}g zK4?1d<1-j~)UtfUPRHX*W|Y@RH9J2di<7hN8nc+JxeC~+cWKtn?&L{FUVJJ^!n$c| zVf~Vwt!y5~GsyE@f8{wH8ZM4?Td?OksJ+ch1B&V&$f@l=`PBalVw?b zcFI?3x)~p(cwM-x9P+-tcHA(aSqq)2Q80^P8*ZANyR_yhU@`wYKpspwy%p9{wYsiH z>skE}tWIRbr@2?ietc!I ze)F=sxRK%qWRCumKQZkaOxz~+&#nQMaoWuNHh_u@Ju@GZ8=9McU7%KU36l<5WP!~} zjopeoSZ}r*)TqT~*oP3|6&uvryOg+e$LNMA>t$QOiRoVaeE-WN)q_75h;Szk-+IML zjWY)-F0lLqMn6?~(Ji1yeB=f#m4_Hqm?E-JDK5+Lfh(rz1aXFRvFy!}sjGI?|NLfG!PB!57rx?pxcaV?vJzBC zCRO*0ou@spzcI`Lvs)!V9Te)h?+m2*noj&o3l-XaQE5Id4?I*OK+mYKS$N%>3em%$ zcE-_18^Z~V$6n|wHdw}_b>VBbXt{pT(cp<<)(hr9aNfXgqB9e#!CV%1e#?D2u%>>9WSsM`Wk&>2PCqtqMh4_?1cD z{oZ(9DW%2fN8r*xo40*XIkti9>v`Cp0syYfK1h`4w*wP}DGfiL)Y^R-JnsZ1MC&V* zY_;<{((B?8_)Yq_o4%8xjozL>{q{lTSe^8{yvDhv z!`V}f9(98DtMBieN;Gac$7j1EdJorzM}Z6WIhcaMM3ErsQ43sqvB%rjj=fyZ9X(8D z(kgKmJuAx`T8~hh!JAlQ@lK)5%{GCDw=Dqh8mO)02|hl0xM2;qQZ@X#+?!}V*X)O$ z58`B!!J@pdIbe~N5476P-*C_8{p06(fV=3NUfmCh2NT#eUU}xe%p(HTP|`U{gSI>- z#eSkIR0`y{|H8w2a0U0cwsv-G4u+f4HN0z~w-9@Ol4YK7IoWFzOixdD(cTq-NjMn( z)&m}T60sxa+yCkSVoh(AMni9@^R(VU?EUj+|1bN@ZGVC-GvN|x;i}7GES>-0c5%OH zwr*Y(wV_a-Z=lEfLJPvi|JfeLbJd1TRyZWqR+(!W#CDSqPQ`C;X_*a=SpvhnA;Hc6 zG#I5Zn5r!MxvO>&N)vs=S7|xQ^OpAweWJhG0+*%O@{j*;#}7=cP~G_<5%aQ9=uu>U zgXd_Q<=s(&g;qzyH&)&jQuzPs9b#SJj(IFcS-qHixW_@G^zCf7x}G)ffRzFBfIr|b zjnn?;FB4&}iP>PL8+;zHncTNlM=0|sHgKp?>&5a7_x+BMmJ0mIZPYPew|Z`5fOCC7+$(A<(54CCXBGanWQ1+o1BOoO?Z*}Y{j``~GY zz{Ycop8xe`ijjKgqO%&OXipE0qUU`_9pTl}2>6ucp~G6NXJAb1@cS~nRbfF2ZS4mQLeD(R3sKAFRtD4zQ?TOecdhMVNB7ytR;8z z_taX-ALd$yeOL0HHr6$#q#8o8@y!L}5Zt{^j5hzE+t?!~p2SGBXW-dsP}{zH#!z`l zZt&YK<@>)ST3c2zehz5@S_}xfFs`MX>`N+d z4~ieF>p$VC0a$P6F9MJ~$}kJ^e4jSsxu;|YzCHWsTL#cn{Xz(&ArPS9y%$4hb&xm= z>BQ5R>eA_Iz7NKiI0JS0vWCv*Z`x7ybh4&eTqU}tol( z&Yp(s_I4Wn=u$9%+~NLLap!*WQ_GwC373&Sv7$H7-%Go*RciHg^tXKk;6EEj#luFQ zz1AR9!4r;Lcj0WV@A$ZoMDGA*Hj6DR*PE3Kl6*rUzGlzr=bZ?vXt@p&p0K(Jy$2Wq zYJOwtz#H2-2G}sv-lzynOtr+0bDYmJZXa~<=63d`+$Ig&4%~AN+>?@KhO?N9@~#DW z>iq5HOB8q{lAL0%ImyS4ZaAY#^`VAx_K1bsurn2Ycr6U#NYkQdm@CioSMaRS^0Wy5 zZCU=3y6?>?^oA^)l;;_QL@+`jXh57FBOM5VA4o+V~fz)?3_t@koGR;Gi< z`vP z>sO{r$zgnUDw8J83JdB8T65`I*v?d3^dI*cYrOEkb@zjVJV2>LK3HlC64&$F`=nJ$ z`-tx**PbI>B8(o^teRcD+e}!_Gmd+b!g{AbO_v?=0s?9TH!r@+OHz+IH|>M1ZAS&+ zEy*6aPs5Wr35k88qtX%gYhuqATOXGCxW=(VYFatqE1&ZpHBKBH82DB-zKdm(a=bB< zgpYTZWpZ9zk)$B@I%n0xj?=q5hTm)mF9V3+(TT;KOr2IbpB~3+avC?ep40L?9c))0 ze@9Nke_T2`1JQLUDBcaX;BGc9w66n?2pp0m{JrCfC|QL9@Y=C8p~F3Bcl{u#5{#&v@kbpiI@f`eI@^&D}Gn0MD*_O%+LY z-Z$w-rSqO?t>T8GC+gEewGHpv(4%iq4+bIc)WhQDeu1mZkWK6+jgVH4FmAZ&{F1j{ z{lh}f@+q)yHHW7@6#p6r)_#Iuz2Gpu2-(q&v9c$Skf8Mv-C;i~FB?dYBq*$n@fFgWh>H{h#AtHj&`p#0v-ZRhqvlMO8{gw+8Y&rJ) zcGDSv+3{!9oaoA3k5aL-4AOoS&(+eGj;&#&T{*hjR?Xe=V026Vcn?aYxo!)JBfV3f zhWWY_$9fH#k>-1C<7?`L%K85OozSDOSm;nYKeDjiyyUq$yR%#}@-&(w=1|X}3Stu! zY8G8k%33vqeTwpYns^HPRq#q|;O4EDV)CRC=Lpz$rUqEoEW>vy?v}nS&wwqTH6$!6 zBGWApan$L35^6<^xuL_8Q-eb|# zYRP=$#fJAzNtCqypTzGA!uv?tQ1Z3I>YXiXcVw}1{865@oAA{3jPBNv)$G}R-xYy` zpY6iO4gK~QFKgL+XWKafs<^sFr>f#p40nX{-7c$Z!Q(+*_*y!J4A%h)kQlV2l*^b@ zfn4+lv3dd@6}rR_pYNPic<&2N?$Gkj6<;qx9FARM|=lFczGwPbKKd5vI@}-0<~}SA4qeza0s$u zrW}g*RmZYeYr1d>10AchU!G7K9~YGTArutXV$za)kt6Pb{f{eI(xVpEA_aTLMg2t> zdHns51e1{$oz5mcNeJt@x1El~^@sc2eOpyCF@vpCosNJu>A^#Kp#%go+$%oFBEf zYTa}2IA58Pjl8HrDV>J_?C??!g*M8C5@FnkkMMlf-ACUGo6iK@`q=JF+~}H7a6~Wj z3(gN;XFi`}zDFs0ye8g6N)?AY0=K)5()-*{JuqPZaQKCnN5}V6nM8=P_d?)39-by= zwD>oItRJM5_lt=<^Yi|EIwJF12e!3WrN9QXN_l&puH8BjW|3FzzKfwbT#OOjFT?x5 zi^O{`t~vQKI(kxsDH1fUZAHy^;?0r^MSlOTt|4I>u>|1*?*-M{^I+}Mw-`@OxqfGn zfx^3M)f*pABlgX0W@(^ZixvNg#f7meEHA~=luVJ<%=>nDfqM<6>D6bfsaJ&6QNQzq z4DYNFO;yZw1#XadLhfKXSsU0bn9QfEZ6XK>l+Ks7n758BK+C_1r%fCk-AP@SdU=n* zcw%d^M!Ze>`4IuX%#OWx;j#%zHhdZHfhRdAv)bgN>%jC)BJhe-;wDLCg{lztR3QYj z0%3k0Q=tsdv3!vgj$2drQggOFaB-{xNYg@rKz1`}C?%hg&01FMdhgfexI}P!|poz6Dp}9XCJHK?{;GnH(_%Vp(~a4z5Es~FIE4!_mk_28o4wA zK1dvZ`1zSmt()}XE^A5SSsB!IiK1bzjV6*@UFxg$(@zReuRehl74qlXNHqNnAAhwJ z%xfWpzpJV;%=IYH+D%!X5!6EzRS=dO=q6$;f0x+anfG6OYU=Fn=2eJEy}8s`P#pPP z=i!5O?lw?>H?sPSnrkVsy}+2>JeM-xpQJ}Yr);je4h~OnNVUJ4SoYr@Q#>z5`r#7Z zW*s`oSo0j3T)fqPEc_olE?jl2af-2k@bcQ!g+)K_e?R^I{XN{$>a6d*-FyJ+J?%Yt z;XMhv1*fapLH|T0;o(g_Xy3Vk_tGBsIjVc7hRIC&f;;Wojla(oev?sCv#OMWRXKwG zfeZQj@OSBitexZvZNYa9a4(M9_rbUqfXFR5b1RfonvFgQFBLYc!E*bp$jS08k@%N+=jWzu^4Sa!F|&1y z2!7L7Zi6;z89|T50E+P~M58RgAoFNfS%nmY^BDI~+o3ziD&5+lmB>a3_E3xUx!?w} zc$6c_hpP#vC`&5Y$g5#+6?z4CXr%qv4Cg(WPRhahZ)+6rm37n!URkiVy9=;O_GZOG z6ZUp^C(DxY?kFoNzJK%P&CverA4CjtNz|F`?lYR-l5?_l_17MvqSc%SLeP< zz_P&wKi{%ep86`ZUET8i`}c{2NcA3A$%SU=D*YC+N;k>k_K)-*q~-{9tV%Zr^2QJ+ z9n``rt_{dJ{DJQqb`GnbTMHlO8G94-*pYy1499l{69 zNJ@%?#JIPYFF!{xaT0P{PE~MkJByKS3LNyTi~8xU)n?n&TUoYts{BQ`iFA;>Cn2CV z4EABrG|$P|PJlSKC=jvi|>M^k-DKess(Sk4Zx z{xW|pNC*`f8TmbsYp^wT!u^VLh~J&ZfT78nc{)Jg0(&I)AP!r(KUF0SGl zF2QrK;5vK&@zzbcd^Jri@6(+uw;UL7iC4UC38ncl)puhdWo2=y7b|TEAdQgg>`x(?PRIrnoe-))qhc@BoE3}o%&*-4X!egJe4Q&(BiyZ za`Hi48KtF~%TNq@qvW~mqO?q&!^diZYvaJ6RN=G(1@583DTMC>*Sdzd)WrS>Myd6U z68PBqXu&AVQXA3ofGO~%kIl9}dm=yUA$%M(I>iIvuM7LJVsf}TXzXLiB5e!~)MgXw zzr{c9c)Pyp{W4dQN8UgcRMog-W}TbOmKxi{u*-DjR#DUG@4VXB}!g ziiur&Pc;j{c|KE~ra56#rZ;r)b!l<{9KPWO^q7)JkF2C&4w}qnCkqmu|0ak z^_)V_XX?fkYYK{vXB$(}lIS)$jy=@yw$rSON$U@ z^icmuo^nw=>)T|((KSuaZgepCKT(devD)lOGmZ^Vv~T^V#m1XgpK#$kLAM79 z{8!_EuV=JwCuX&*fMd{{6HZ#aa)_(?B5nR6XoD7*MPr!QR+@niLsgPvWS zp%)L+DLG24QWcGr4Vt2dfWWU6L=Fjm!J9BeR9js%A~&sy?08_>FSXOrPMgX2XUz&t z1Vb`)WpYbv|G)hrZ1cE?m~Ba<^~@6(>)UsLi&FG#S6nJm21b2b_tT>=(@lq366KT_F2(;)p+ zhM5GiY5HHA@jZJWp(Kd>$;}fQm6B@tIQ8;!@(o+czUhqiMpQgU{U0AO+G|!50I=4} zI@)eR2Dg0O)*40vVm1uQ9IBn(G_r(ygqfPsdMF3<{t%x(9WQ8;GUe!o!VAAjX zQ>2bs>02+?U8@wrUyHv}tPOWhWZ69QJlzx}U6$!!H~j%u>NeUoOWiWW_@S z&N`#59i+FYmj=U9Pot#IR1A!7a_%SJf>WIg_s-0&2Xd|nb4qS%Ea}RGF6!+q<&K5) z>Sj!-_iPlu+v*Jqwax~Tm4C!3RcU46Y46V4+VY8CuQMngXl! z`gBb>&fFrnGDmqoQ+iG^5{PdL5F&LB3n2bbz6L(2Y+&op2XRwVHFhRC2;F4Bqf?`_ zmsS6hVig|5MjT=^cgDnLV03x^N)sm;Q+qi_^o^yxcltiDr^oMV134r8E(Mc6Zl3l; zSh|9acX{th$OVD$q#mU|5sh*4E@2MRViC}I%^6-4^JyI&u~a_VaqqMoQKZp297gaO zuZ2`0i+KA0gG>^Ttx^l)J#*Cs(W!y-)QiJEGs`IWX|#)5Tj4W{09r5fO1r#nYqmsB z!t?IaVF-lyw|U)F)j+(+bcL&_J=3(PFZ-pJG!%C~U|ODux*u-nVW+BBx^MWzLn2Nw zHI9^*FFcFo>?811CwutU)xaY0y8jj1ATCeJw(WbPvq@7$X)bP^d<_kT+DhEh?I}}5 z`dR6(s3#_XT(NWh^nzA%%!3~!EPm-9t&hrASs`vrT@H*_ zd`UzB*w8%NQ1CsFykR+T@qmUU=Z4xI1r$@yEGD=XC_hZYLwt>G1Co->8{fTrX-4ol z{ZhQoCDWAz>q~=cx9zPOA2s9cc3%k_yN6?lBP(O%OgWb;cT7tEL9Q3>(WSs={WXqJBd^^93Q!P32Hj6DkBPg765fJyo(awkNa$` zqFscx_$6RtT@XS&`QV#N`lm~VRY9DM6Nex=E3(4<)Rx&U-I<1)N0-!Yk?v}@F?Ul? zT)fZp1L;t+nTf-XT55aeT_AvMQ{cVDZyA30$`K7@FNteiLT$*Igc*>TQ z`!bGuNVO#U1Gibvu+*D@obk+q^3;Kxd5qS0cyMyct3uF<;HOQSQ_yrqZE_WzW470P z4;1ixj8FHMK7Wf?>$vUxptN$8K70PcN}|~_z{hODEbL* z1UBy<-*O84`lxWn|8CwbuZHpe(@pS5Z??9Q%l-EmULnud|9lDm>)QX914SB~lJW0G zs)AD(2azSZb$m+>4nP4nJ(KuiTKwPV4~TJ}7a${QGQ^BKBR`a*Y2!zCBsf^fIQiOW z2_m{nC9eYA!ZY1s1v2x$GeEp_JZcyUiltI>_xfG?idpN5Mp@>>{nG7E!Bm`_BcrIP zM1z5L1;3Cp%;*0pokKMmx>f>zadv)t<7OqAwpI0t#(C%y3djYTFst%p4t2tp8R-RA z^p@c@F!Ovh;;225Rcjd!Vu#_7Fp`_N{XeRd^w?CTc`{k?s?MH=#q9@oOIyRhNz&Ls z0(e$H?dK)<&RZtKN2cxjcNKWt$6z@bnMG00o?h8XODAC-W`4=+?Q?6n>Z($~e=o3v zp6ikCTNcV&B508dy!<$Z6yQutQhI#pWX5G4JlL0_>%Pw(#Tf>3w~fHQX^__h-Ed2L zs3nY`4g0y0o$J0`Npbroi{w7}@hkBPXP6M3et!t&UhdZEhA5mjZ-BJlv7Lr>_%9&@ zuvoW<+&)WFQeNv8`RpOgJx$gr1(_8|a|fPF5xs+5w=wR2RmRT$zWBln{J0!fa>?~9m;~6A02#E$QKrDcM_gfxtOG2^Z%W8iXW1zcD}pxDZPK z_EDVN6qDC);#tix)Ox>*t)<&>!2i9o7iGkT%0MsXupp{rO64iIlBSFCY z(DaP%Tg5kyH!9!Mt-&H7a5n39k0%PZBrV|{l+wctE}Ux zvd;aKg^9_DZRaZ@{8n^IE)QP^QvaH1Tc7w}mma^0^M)_CS}d z$nPu0LUfyUg!m|=7ko5b%wmsOu(7DdKSKTVYNX93!FYlJXZ6^kM^0|n0q2g8dCA8Qc`_j#`6ADvu84{>aqg|Z}ICldA+F~HJz}1BZ#A5Q^UPZQdp6!fB3b7 ze7AkFLjj|q<)+|{}u7Lzt^$eUb_9^u#ck# zY&G4R%Kt&eiBf#*>D4`XQ0)3jpeKlDF@6VTI2U(Z1;XJpNf;S?SADiHe1e$4|dUnI$#95(tfQO|mbo zoY}jMqoSE5{Ad5c3hnq&&!)z$fbVlqEb(xOh!TI5n*x-UXREh6j0<-Ru9bCJ;#vwP z1PeczCzOh$bKB%*ht^N5+t~tsyFP<35jE2!ixs0r<-x7*J8@Hu3QkFKR9}QG&)f@U z&wfY+B{$nZc}e(?V*5jz$wkZA8?~gO*ySTRMyzEjxfo4|Qgr2Xml)BqMm7 zPSXRSkIm!%b4z9jMts?!Um^BMO0$@KAymskz&owRx*694J8BM+YnY{N`#UL*JDB*=CDx zC6@9`4l&Cz%jniRj@~s%nme#y075k9c!AyBv7k!A(hisCm3$#2INuL_evUp;0`^$D zqh^8?uXd)o-hlkaQfp7Te$$1T9|`fOBWY?jIWF`(tQXPF^EF{`^lZn%Om}G*YMtvn zSa3W-oL0>pjq5pCRnL9>LKkI2K>c|C@uq#4rpBY3Y7JcUYD!3haqm5F!lIkXMM4I* zYq>zhA^~q1CTRL(=MSV26T)PveWAzhw!?m8Io??8&y-~i97o5q+EcJIIK_ges}!f5 z^=!NAdNp?SICRI2$4a;nG~@PT{brmR@1tgM9jB=T^AVWDvAj*p?`$(#2LM|f$kw#X zCO*MJCmURD(>f)HsA^28v?#)zzC}2q zJA-1G$P1Rx1XE-BKe{O2s&^j|s=z+h`j=N_SPa@*Zg45Gk8?_YbR#q39fwu7dLvP1 zl_{s~ylrZwh9kM}mgBvI4Lp$tUn<>6xw0~`aU&+> z;;<>z_+_+cvabKb4fj#alS@5dCpb%Z2l^xFlU_F|V4=NO@_9LvK z{sX1oS(u?7)!ku+w=1aTpH?k_x>NXAkA}WwqNxe`Ifz7j+W>yi+nLkAzQHLCYAJ`l z=EhfXg%pb<55!ULSc4Yard$x!HD0W`A#%4s-`CY_MnunC-4lpdJ@;J{3z3`CPA;wX zx@kMCcgf!jvD7)S_fz*N=vZ|>7IQ$=JQ2c_=8wZ&LXP>i5{_TQ1N1XM=!8dPCe4V9 z{1j(wI9{TN%={X1@3Dy!iH!M^?Wi|}6Bt7_Fx=>`4Q0uv79Tk4P+31kxmA^CoV`|9wr&A^h&28nyW?S`R5{6`dJSu8 zR8h+ZK!?8R6BoN$9L%Asj5#&nRm;|@@@yC@f}HWUZO^!QB=zb8Dhl^3?0IMuu@&o^ z+Ld*wP@wf&j1}u@FPOl{MJIPL&T&B`8#)^;$v2T}D5qvtHy-?^r6ldH8=Nk5G$ z;`}b_ZRpcWWj{5_e=GseJ@jQa5x|jmyyYr9u?S$2@+ZFQusJ5xOKdR^>WdM%yD{+V z+|2R4FR_D&mU-iuN(6}z4eb-&DLvznk-5kCUQhMP#3DzWmKL< zizG%PGV}O6Z)*yhBgz$zP!=#s!syAKDx#ySNog@b*#%G6?XIzB1r~=(Sb(MosG_5o zEN3f9=WP{h>@0?1$$V^kTW`Pj>LBJR3F=>53#R%DPCrGBI3;;0ct`=f?1x@=l!yn9 z*E=1%io0yX=j+GXPaH0vdW0qcPK33M5`NRAu4syJ03Q@bR9TnbVeLp4(uxx7#efn5BGqpH(V!;iH1)W!ll=j5kg@Dr=v496ruU)9}&m+gm&sTaH|l zPxRppo{~g!9&?l4y%;;qvUO;Cwsex(wx9|})-)kBZg+VfU{wO9|n@_P*L^K&k zsq7VZ*qmkGUX;aK(@b-O8?$ShBQTt~OOIneuE5x*>P<7WSZ;H|F1NMUzS0?*%rX!f z_a@@2&< zktlLFUsnOM_geV~4?V5aoptR{zH3RAf{KpPA@}$cC)31v{E1Cl z#&iXX)rBk(V-m?bL~Q|+_;~T0U~yC-ymZIobW*8O2QG#XycJB&IP3LrE~?pSXLiQj z?(jw=F@31Tc^&7KW0NV|tUoOt{v2%!Q!Cm(Mv*7hT(tn}$=kn)N$|XB?VIrM-hbY@ zB%?^kQ7Y)Plh@XpAlvqFqs?Ke%+%MGSk;Yg@Ov~Z&yxby%B_KSMN5=bhqA>$(q&yO#=ixTm@Q8)x!Sl8Rw^RCEIczEk^r}E6hMDzqSDK3 zS@AMGT-xlI9&S>@MMVvDM(M2w1{vKXY}k>L83%&<;kdk$(F@$ym0rC(w0n@*ihz>Z znmW^&{U7%nw+gNj(Y(2aGQ~D}ppEtND%|{GmZIbd%@lYKc)^lU^>pNA8SP!GLM{h; z+zQgZcii~zZCa!B)Pf^y?(YyXuH6I5?MR=9VZt~;_=I@5WX8!~s{>A>`oCyLh)WudwOXn2foIdv<-kv> zH<44=jN_hAZC7HcTO$3zt7FY7tK`2gxRvhd(vcQ8y({YeqW>jHxV7{U@L#W5sZOr& z&uSbAa@I&jXj|2^N)LgAFieve@n0beZ4T|7V;_QX%B6OXP=*|!P9bx}?Tuz{AYU02 z8p0Yl^t(e`Ouj#U{8(m{o0*w8ZK^GSseH@fhPD;%7l4iEjw^2em(J4|@XW%dcQ5ES zQCLAjuF!=SZ0f}$IF^Kv_;=IOFG5@NuX{iJ)U3Hupo_9X|H?ARpB^iA<4^uHb}HI) zb8@w`oo?7|ry&P~rI!t1cdwqdfig_ng=HG4TGy?l98&7z7LPeVM_vX29;464br?IL z?;gNTY5*#}-F2+Mp{c{IvSk=H`Wz~F$?r%eRG1qK4 z1ayT&pX-_6zm5zQT+jWvb4wwD{v;qY`0#J-RMVd+qAonsiyKZIC0C9C8F5boJT=z_ za*`IhKH`(aXo(~Jml+yJ6L;ujj(xGyfTDv$36od2Bepwok8PZ~GwWIyzg<+Qnw=GA zHbxeI>uR6j2|h~a`pem$3^Xqg5*byT&KeC+AFM!7O>-hjk|i4EV#)IncNVjjKJY*?hG zH&M9?sBEkHJbF%IG(+LLQ-PEyaJ42A$l%@HCEYIpoYAc_$5w<>(t`xCBk4?yr(woR8+eWRNkt$=k2S<)QY8L=6_TtCRNM;H>IA&%? z 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

qa-uqj&2PT7{F(ie8ikY%!bJBQhu>4qX;nv{ zHCeZrW4;a=Fs`V$^Uabia|1UND6%s1cQHMOe7|^B;R4+^t$Qaq*sUuHwj7 zJu@ltSvIg{j{|v7?clbFfV)_qH~EweByBTJSOy4i;q0U?jD=>HvzwwvBB5baTsYm~ zE0wrF4)|$fc8S}7%jT!!6q+I8q~NP%kddRM4eYqa?pzGmdc@^K)7No^UUfd~U$)vX z=N3kR88Xb;uFM?s4KbX%aa_0*-W0ObUios3u}g|0^b+JPDgjr>3;O|k0RO&PkQYZs zM4`AdYd{>xf*>7_Fru8LGG>r4dJvB=DcL*NJ~p!yLRT$UWR&O zhJWAxTi>0q9Vp9K666=m;PC858jzD$6%tY6l3JWxlvz-cnV-kNP%$Sste~j$`iAX~{ z{j@@6Q7rp6ajOrR?(+f;Tt1+_h=cj^t-=GBIZJ1JD^}2A?2`FldC=j6IbTe1(Sl}P z%ekjDRSq?plyg|_PW#)s>A&8EiR`kgYsKAVBECI!4AWh^u&}Ou+KB}YH$RKMyZCai z^824$&CI%MwwM%FF}$G pdso;Th`S=EpdV-B5clWL9mZ51gUTiYXOOQMJYD@<);T3K0RVU)zncI6 literal 0 HcmV?d00001 diff --git a/icons/mob/in-hand/right/paradise_items_righthand.dmi b/icons/mob/in-hand/right/paradise_items_righthand.dmi new file mode 100644 index 0000000000000000000000000000000000000000..b02f68040542421dc7222bd3d53cf9d9893d35ec GIT binary patch literal 160160 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