From 535919aaa7cbe8ec8012b442db2841e8107662b4 Mon Sep 17 00:00:00 2001 From: skull132 Date: Sun, 18 Dec 2016 21:39:53 +0200 Subject: [PATCH] Coerce the unit tests (#1241) Updates the unit tests to reflect our codebase, and not Bay's. Also disables the indentation test until further notice, because it's dumb in its present form and function. Creates more trouble than it's worth. --- .travis.yml | 4 ++-- code/modules/surgery/generic.dm | 15 ++++++++------- code/unit_tests/mob_tests.dm | 33 ++++++++++++++++---------------- icons/mob/screen1_robot.dmi | Bin 30832 -> 30583 bytes maps/exodus-1.dmm | 10 +++++----- 5 files changed, 32 insertions(+), 30 deletions(-) diff --git a/.travis.yml b/.travis.yml index 13a53e55568..232ef4a6fbb 100644 --- a/.travis.yml +++ b/.travis.yml @@ -4,7 +4,7 @@ sudo: false env: BYOND_MAJOR="510" BYOND_MINOR="1346" - MACRO_COUNT=1021 + MACRO_COUNT=1256 cache: directories: @@ -31,7 +31,7 @@ script: - (! find nano/templates/ -type f -exec md5sum {} + | sort | uniq -D -w 32 | grep nano) - (! grep -E "<\s*span\s+class\s*=\s*('[^'>]+|[^'>]+')\s*>" **/*.dm) - (num=`grep -E '\\\\(red|blue|green|black|b|i[^mc])' **/*.dm | wc -l`; echo "$num escapes (expecting ${MACRO_COUNT} or less)"; [ $num -le ${MACRO_COUNT} ]) - - awk -f tools/indentation.awk **/*.dm +# - awk -f tools/indentation.awk **/*.dm - md5sum -c - <<< "0af969f671fba6cf9696c78cd175a14a *baystation12.int" - md5sum -c - <<< "88490b460c26947f5ec1ab1bb9fa9f17 *html/changelogs/example.yml" - python tools/TagMatcher/tag-matcher.py ../.. diff --git a/code/modules/surgery/generic.dm b/code/modules/surgery/generic.dm index 6e97ecb3633..d7a76f7d24c 100644 --- a/code/modules/surgery/generic.dm +++ b/code/modules/surgery/generic.dm @@ -282,10 +282,11 @@ target.apply_damage(12, BRUTE, affected, sharp=1) /datum/surgery_step/generic/cauterize - allowed_tools = list(//Fixed these tool probabilities because they were dumb - /obj/item/weapon/cautery = 100, \ - /obj/item/clothing/mask/smokable/cigarette = 25, \ - /obj/item/weapon/flame/lighter = 50, \ + //Fixed these tool probabilities because they were dumb + allowed_tools = list( + /obj/item/weapon/cautery = 100, + /obj/item/clothing/mask/smokable/cigarette = 25, + /obj/item/weapon/flame/lighter = 50, /obj/item/weapon/weldingtool = 75 ) @@ -320,9 +321,9 @@ /datum/surgery_step/generic/amputate allowed_tools = list( - /obj/item/weapon/circular_saw = 100, \ - /obj/item/weapon/melee/energy = 100, \ - /obj/item/weapon/melee/chainsword = 100, \ + /obj/item/weapon/circular_saw = 100, + /obj/item/weapon/melee/energy = 100, + /obj/item/weapon/melee/chainsword = 100, /obj/item/weapon/material/hatchet = 55 ) diff --git a/code/unit_tests/mob_tests.dm b/code/unit_tests/mob_tests.dm index 28a50c31383..4e658fe53a8 100644 --- a/code/unit_tests/mob_tests.dm +++ b/code/unit_tests/mob_tests.dm @@ -11,7 +11,7 @@ #define SUCCESS 1 #define FAILURE 0 -// +// // Tests Life() and mob breathing in space. // @@ -23,7 +23,7 @@ datum/unit_test/human_breath var/ending_oxyloss = null var/mob/living/carbon/human/H async = 1 - + datum/unit_test/human_breath/start_test() var/turf/T = locate(20,20,1) //TODO: Find better way. @@ -48,7 +48,7 @@ datum/unit_test/human_breath/check_result() pass("Oxyloss = [ending_oxyloss]") else fail("Mob is not taking oxygen damage. Damange is [ending_oxyloss]") - + return 1 // return 1 to show we're done and don't want to recheck the result. // ============================================================================ @@ -62,7 +62,7 @@ datum/unit_test/human_breath/check_result() proc/create_test_mob_with_mind(var/turf/mobloc = null, var/mobtype = /mob/living/carbon/human) - var/list/test_result = list("result" = FAILURE, "msg" = "", "mobref" = null) + var/list/test_result = list("result" = FAILURE, "msg" = "", "mobref" = null) if(isnull(mobloc)) mobloc = pick(tdome1) @@ -77,17 +77,17 @@ proc/create_test_mob_with_mind(var/turf/mobloc = null, var/mobtype = /mob/living test_result["result"] = SUCCESS test_result["msg"] = "Mob created" test_result["mobref"] = "\ref[H]" - + return test_result -//Generic Check +//Generic Check // TODO: Need to make sure I didn't just recreate the wheel here. proc/damage_check(var/mob/living/M, var/damage_type) var/loss = null switch(damage_type) - if(BRUTE) + if(BRUTE) loss = M.getBruteLoss() if(BURN) loss = M.getFireLoss() @@ -178,7 +178,7 @@ datum/unit_test/mob_damage/start_test() if (ending_damage == 0) damage_ratio = IMMUNE - + else if (ending_damage < damage_amount) damage_ratio = ARMORED @@ -189,7 +189,7 @@ datum/unit_test/mob_damage/start_test() failure = 1 // Now generate the message for this test. - + var/expected_msg = null switch(expected_vulnerability) @@ -201,7 +201,7 @@ datum/unit_test/mob_damage/start_test() expected_msg = "To take extra damage" if(IMMUNE) expected_msg = "To take no damage" - + var/msg = "Damage taken: [ending_damage] out of [damage_amount] || expected: [expected_msg] \[Overall Health:[ending_health] (Initial: [initial_health]\]" @@ -247,12 +247,12 @@ datum/unit_test/mob_damage/halloss datum/unit_test/mob_damage/unathi name = "MOB: Unathi damage check template" mob_type = /mob/living/carbon/human/unathi - + datum/unit_test/mob_damage/unathi/brute name = "MOB: Unathi Brute Damage Check" damagetype = BRUTE expected_vulnerability = ARMORED - + datum/unit_test/mob_damage/unathi/fire name = "MOB: Unathi Fire Damage Check" damagetype = BURN @@ -289,7 +289,6 @@ datum/unit_test/mob_damage/tajaran/brute datum/unit_test/mob_damage/tajaran/fire name = "MOB: Tajaran Fire Damage Check" damagetype = BURN - expected_vulnerability = EXTRA_VULNERABLE datum/unit_test/mob_damage/tajaran/tox name = "MOB: Tajaran Toxins Damage Check" @@ -342,7 +341,7 @@ datum/unit_test/mob_damage/resomi/halloss damagetype = HALLOSS // ================================================================= -// Skrell +// Skrell // ================================================================= datum/unit_test/mob_damage/skrell @@ -440,6 +439,7 @@ datum/unit_test/mob_damage/diona/clone datum/unit_test/mob_damage/diona/halloss name = "MOB: Diona Halloss Damage Check" damagetype = HALLOSS + expected_vulnerability = IMMUNE // ================================================================= // SPECIAL WHITTLE SNOWFLAKES aka IPC @@ -452,12 +452,12 @@ datum/unit_test/mob_damage/machine datum/unit_test/mob_damage/machine/brute name = "MOB: IPC Brute Damage Check" damagetype = BRUTE - expected_vulnerability = EXTRA_VULNERABLE + expected_vulnerability = ARMORED datum/unit_test/mob_damage/machine/fire name = "MOB: IPC Fire Damage Check" damagetype = BURN - expected_vulnerability = EXTRA_VULNERABLE + expected_vulnerability = ARMORED datum/unit_test/mob_damage/machine/tox name = "MOB: IPC Toxins Damage Check" @@ -477,6 +477,7 @@ datum/unit_test/mob_damage/machine/clone datum/unit_test/mob_damage/machine/halloss name = "MOB: IPC Halloss Damage Check" damagetype = HALLOSS + expected_vulnerability = IMMUNE // ============================================================================== diff --git a/icons/mob/screen1_robot.dmi b/icons/mob/screen1_robot.dmi index 04518a76145ec4c76cb1ae50d365b63cfb0e6627..19fcf445a9e789c91f0815296e1c530452eb33f6 100644 GIT binary patch delta 8877 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 G@c#pWfSWP^ diff --git a/maps/exodus-1.dmm b/maps/exodus-1.dmm index 0cc71a25bf2..f4bc20d1deb 100644 --- a/maps/exodus-1.dmm +++ b/maps/exodus-1.dmm @@ -831,7 +831,7 @@ "apY" = (/obj/structure/bed/chair,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/security/prison) "apZ" = (/obj/machinery/atmospherics/unary/outlet_injector{dir = 1; frequency = 1443; icon_state = "on"; id = "air_in"; use_power = 1},/obj/structure/bed/chair,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/security/prison) "aqa" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/security/prison) -"aqb" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/security/prison) +"aqb" = (/obj/machinery/power/solar_control{id = "auxsolareast"; name = "Fore Port Solar Control"; track = 0},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) "aqc" = (/obj/structure/bed/chair,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor/tiled,/area/security/prison) "aqd" = (/obj/effect/decal/cleanable/dirt,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/security/prison) "aqe" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/security/prison) @@ -1385,7 +1385,7 @@ "aAG" = (/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/obj/structure/flora/pottedplant/random,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/effect/floor_decal/corner/grey{tag = "icon-corner_white (SOUTHWEST)"; icon_state = "corner_white"; dir = 10},/turf/simulated/floor/tiled,/area/crew_quarters/sleep) "aAH" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/maintenance/arrivals) "aAI" = (/turf/simulated/wall/r_wall,/area/maintenance/auxsolarport) -"aAJ" = (/obj/machinery/power/solar_control{id = "auxsolareast"; name = "Fore Port Solar Control"; track = 0},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) +"aAJ" = (/obj/effect/floor_decal/corner/pink{tag = "icon-corner_white (NORTHEAST)"; icon_state = "corner_white"; dir = 5},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled/white,/area/medical/ward) "aAK" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "solar_tool_airlock"; name = "interior access button"; pixel_x = 25; pixel_y = 25; req_access = list(11,13)},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/visible{dir = 8},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) "aAL" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 32; pixel_y = 0},/obj/machinery/portable_atmospherics/canister/air/airlock,/obj/machinery/atmospherics/portables_connector{dir = 8},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) "aAM" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/maintenance/evahallway) @@ -7456,7 +7456,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaafaafaaaaaaaaaanzaafaafaaaaafaafaaaaaaaamaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhanGaheaheaheaheaheaheanAanBaheaheaheaheanJanCanJamqanLanDanNamqanOanPanQanRanSamvamvamwanEanFamCanIanHankanKanYanManUanTanWanVaoaanZanYaqLambaojaoZaoYapMapaapOabdaafaapaafaacaaaaaaaaaakHakHakHakHakHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaafaobaobaobaobaobaafamGaafaobaobaobaobaobaafaaJaaaahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaafaocaocaocaocaocaafaodaafaocaocaocaocaocaafaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaooaopaoqatragLaosaotaheaoeaofaowaomaolaozaonaovaouaoxaoxaoyaoxaoBaoAaoDaoCaoJaoEamvamvaoGaoFaoHamCaoKaoIankaoLanYaoMaoOaoNaoQaoPaoSaoRanYanYanYanYanYanYanYanYapPabdapbaoTaoUaaaaafaaaaaaakHakHakHakHakHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaafaaaaaaaafamGaaaaaaaaaaafaaaaaaaaaaamaaaahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaJaafaoWaoVaoVaoVaoVaoXaodapcapdapdapdapdapeaafaaJaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaooaooapkaplagLamgapmapgapfapiaphapnapjappapoapoapqapraoxaptapsaoxaoxapuaoxapBapvapwamvamwamvangapxapyanHankapzanYapAapDapCapEapAapFapAapAapGapIapHapJapAapAanYapNattapbapbapTapbapbaaaaaaakHakHakHakHakHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaafamFamFamFamFamFaafamGaafamFamFamFamFamFaafaaJaaaaaaahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHahHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaafapKapKapKapKapKaafaodaafapKapKapKapKapKaafaaJaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaapVapkaplagLapWapXahealuapLaowapRapQaqbapSaovapUapZapYaqcaqaaqeaqdaqgaqfaqmaqhaqiaoFaqjaoFaqlaqkaqoaqnaqqaqpanYaqraqsapAaquaqtaqvaqtaqwaqwaqwaqwaqwaqwaqwaqCaqEattapbaqxaqIaqyapbaaaaaaakHakHakHakHakHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaafanpanoanoanoanoanqamGanrantantantantanuaafaaJaaaaaaaaaaaaaaaaaaahHahHahHahHahHahHahHahHahHahHahHahHahHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaafapKapKapKapKapKaafaodaafapKapKapKapKapKaafaaJaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaapVapkaplagLapWapXahealuapLaowapRapQaozapSaovapUapZapYaqcaqaaqeaqdaqgaqfaqmaqhaqiaoFaqjaoFaqlaqkaqoaqnaqqaqpanYaqraqsapAaquaqtaqvaqtaqwaqwaqwaqwaqwaqwaqwaqCaqEattapbaqxaqIaqyapbaaaaaaakHakHakHakHakHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaafanpanoanoanoanoanqamGanrantantantantanuaafaaJaaaaaaaaaaaaaaaaaaahHahHahHahHahHahHahHahHahHahHahHahHahHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaafaaaaaaaafaodaaaaaaaaaaafaaaaaaaaaaaqaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaqKatsaqMagLaheaheaheaqzalvaheamqamqamqaqAaqFaqBaqHaqGaqJaoxaqOaqNaqQaqPaqYaqRaqTaqSaqVaqUaqWarfaqZaqXaraanianYarbardarcargareariarhapAarjarlarkarmarjapAanYapNattapbarnaruaroapbaaaaaaakHakHakHakHakHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaafaobaobaobaobaobaafamGaafaobaobaobaobaobaafaaJaaaaaaaaaaaaaaaaaaahHahHahHahHahHahHahHahHahHahHahHahHahHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaafaocaocaocaocaocaafaodaafaocaocaocaocaocaafaaJaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaqKarwaqMagLaosarxahearparqaowaomarraozaovarvartarzaryarAaoxarBamqarCarIarJarKarDarMarFarEarGarQarLarHarNamzanYanYarUanYanYanYanYanYanYanYanYanYanYanYanYanYapNattapbapbasaapbapbaaaaaaaaaakHakHakHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaafaaaaaaaaaamGaaaaaaaaaaafaaaaaaaaaaamaaaaaaaaaaaaaaaaaaahHahHahHahHahHahHahHahHahHahHahHahHahHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaparOaapaaaaaaaaaaaaaaaaaaaaaaaJaafaoWaoVaoVaoVaoVaoXaodapcapdapdapdapdapeaafaaJaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaqKascaqMagLasdapmarRarParTarSaseasbasfaoxaoxasgasiashasjaoxaskamqasmaslassasnasoarMasqaspasrarQapbapbapbapbapbasyaszasAasBarsasCasCasDarVarWarVarVarXarYarYasEarZasFastasvasuaqDaafaafaaaaaaaafaafaafaafaaaaaaaafaafaafaaaaaaaaaaaaaaJaafamFamFamFamFamFaafamGaafamFamFamFamFamFaafaaJaaaaaaaaaaaaaaaaaaahHahHahHahHahHahHahHahHahHahHahHahHahHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -7469,7 +7469,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaujavfaxEaxFaujavfaxGaxFaujavfaxHavfavfavfavfavfavZatIaaaaaaaaJaaJaaJaaaaaaaafaaaaxIaxJaxIaafaafaafaafaaJaaJaaJaafaooaooaooaooaxKaxLaxLaxMaooaooaooaooaxnauqaxOaooaxPaxQaooaooayjaxSaxTaxUaxUaxUaxUaxUaxUaxUaxUaxVaxUaxUaxUaxUaxUaxWaxpaxoaxqaxWayaatnaybaycaydatUaxsaxraxraxtaxwaxuaxyaxxaxravuaxzaxgaxBaxAaxNaxNaxNaxNaxXauKauKaxmatQatQatQatQatQatQatQatQatQatQavdaafaaaaaaaaaaaaaaaaaaaaaaaaaafaafaaaayraysayraaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaytaxYayeaxZayfaxYaygaxZayiayhaykaykaykaykaylavfayCatIaaaaafaafaaaaaaaaaaaaaafaaaayDayEayDaafaaaaafaaaaaaaaaaaaaaaaooayFayGayHayGayGayGayGayIayGayGayJayKayHayLayMaxUaxUaxUaxUaxUaxUayNayOayPayPayPayPayQayPayPayRayPayQayPayPayParMaynaymavsarQayVatnaydayWayXatUaypayoayuayqaywayvaywayxayoayyayAayzaySayBaySaySayUayTayZayYazaazpatQatQatQatQatQatQatQatQatQatQavdaafaaaaaaaaaaaaaaaaaaaaaaaaaafaafazqazrazsaztazuaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazvazbazdazcazfazeazhazgaziazhazkazjazhazhazlavfavZavjaafaafaaaaaaaaaaaaaaaaafazHazIazJazKazLaaaaafaaaaaaaaaaaaaaaaooazMaooazNazOazPazPazPazQazPazPazPazRazNazSazTazTazTazTazTazTazTazUazVayPazmazoaznazxazwazzazyazAazxazBazoazCarMazDaymavsarQayVatnaAiawPauLatUazEaxraxraxraxraxtazGazFazXazWaxvazYazZazZazZazZaAbaAaatxaAcatxatxatQatQatQatQatQatQatQatQatQatQavdaafaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaAvaAdaAfaAeaAvaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafavfaAzaAAaAzaAgazdazdaAhaAzaAAaAzaAjaAlaAkaAmavfavZaviaviaAHavmavmavmavmavnaviaAIaAJaAKaALaAIaooaooaxPaAMaxQaooaooaooazMaANazNaaaaafaaaaafaaaaafaaaaafaaaazNazSazTaAoaAnaAqaApaArazTazUauqayPaAsaAsaAUaAuaAtaAxaAwaAtaAyaBaazoazCarMazDaymaABarQayVatnawGaACaBdaBeaAEaADaAGaAFaAPaAOaAQaBmaBmaARaBmatxaATaASaAWaAVaAYaAXazpaAZaBbaBwatQatQatQatQatQatQatQatQatQatQavdaafaaaaaaaaaaaaaaaaacaaaaaaaafaaaaAvaBxaByaBzaAvaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafavfaAzaAAaAzaAgazdazdaAhaAzaAAaAzaAjaAlaAkaAmavfavZaviaviaAHavmavmavmavmavnaviaAIaqbaAKaALaAIaooaooaxPaAMaxQaooaooaooazMaANazNaaaaafaaaaafaaaaafaaaaafaaaazNazSazTaAoaAnaAqaApaArazTazUauqayPaAsaAsaAUaAuaAtaAxaAwaAtaAyaBaazoazCarMazDaymaABarQayVatnawGaACaBdaBeaAEaADaAGaAFaAPaAOaAQaBmaBmaARaBmatxaATaASaAWaAVaAYaAXazpaAZaBbaBwatQatQatQatQatQatQatQatQatQatQavdaafaaaaaaaaaaaaaaaaacaaaaaaaafaaaaAvaBxaByaBzaAvaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaBAaujaBBawVaBCaBfaBcaBhaBgaBCawVaBHaBIaBJaBiaBjaBMavZavZavZavZavZavZavZavZaBkaBOaAIaBPaBQaBRaAIaEqaBTayGayGayGayGayGaBUaBVaBWazNaafaBXaBXaBXaBXaBXaBXaBXaafazNazSazTaBnaBlaBpaBoaBnazTazUaCcayPayPayPayPaBqazxaBsaBrazxaBtaCiazoaBuarMazDaymaBvarQaClatnaCmawPaCoatUazEavuatWaBmaBmaBmaBmaBmaBEaBDaBFaBmatxatxatxatxaCsatxatxaBGaBKaCvatQatQatQatQatQatQatQatQatQatQauiaafaDraDraDraDraDraDraaaaaaaafaaaaAvaCwaCxaCyaAvaaaaaaaaaaafaafaaaaaaaaaaaaaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazvaAAaCzaCAaCAaCAaCAaCBaAAazvaaaaBJaBLaBNaBMaCEaCEaCEaCEaCEaCEaCEaYYaBYaBSaAIaCHaCIaCJaAIaCKaCLaCKaCKaCKaCKaCKaCKaCKaCKaCMaaaaBXaCaaBZaCdaCbaCeaBXaaaazNazSazTaBnaCfaChaCgaBnazTazUaooayPaCjaCkaAUaCpaCnaCraCqaCuaCtayPayPayParMazDaymavsarQayVatnaDdaCCauLatUaCDavuatWaCFaCNaCGaCOaBmaBEaCPaBFaBmaDlaDmaDnaDoaDpaDqaDratxatxatxaDsatzatzatzatzaDtatzatzatzatzaDuaafaDraCQaCSaCRaCTaDraaaaaaaafaaaaAvaAvaDvaDwaAvaDxaDyaDzaDxaDxaDxaDxaDxaDxaDxaDAaDBaDBaDBaDCaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDDaDDaDDaDDaDDaDDaDDaaaaaaaaaaaaaaaaaaaaaaaaaaaaCVaCUaDGaCUaCUaDHaDIaCUaCUaDGaCXaCWaBJaCYaCZaBMaDbaDaaDeaDcaDgaDfaCEbdHbdIaviaAIaAIaDUaDVaCMaDhaDjaDiaDEaDkaDJaDFaDLaDKaDMaCMaafaBXaDOaDNaDPaDNaDQaBXaafazNazSazTaDSaDRaDWaDTaDXazTazUaGmayPazmazoaDYazxazxaEaaDZaAtaEbaEwaEcaEcarMazDaymavsarQayVaEyaEyaEyaEyaEyaEeaEdatWaEfaEgaEgaEiaEhaEgaEjaEkaBmaEHaEIaEJaEKaELaEMaDraaaaafaafaafaaaaaaaafaafaafaafaaaaaaaafaafaafaDraElaEnaEmaEoaDraaaaDxaENaEOaDxaEpaEsaEraESaESaESaESaETaEUaEVaEVaEVaEVaEVaEVaEVaEWaEXaEtaafaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -7520,7 +7520,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabVxbVwbVwbWvbWwbNVbWxbSsbWybNVaaaaaaaaaaaabNWbWzbWAbWBbWCbWDbPCbOdbVzbVybMUbOdbVibWGbWHbWIbWJbWKbWLbVibWMbWMbWMbWMbWMbUhbVBbVAbVDbVCbVFbVEbVHbVhbVIbVGbVObVLbVObVPbVObVQbVSbVRbVUbVTbVVbVTbVXbVWbWabVYbWcbWbbWfbWdbWibWhbXqbXrbNnbWjbWnbWmbWpbWobWqbWpbWpbWrbWsbBUbWubWtbBWbBWbLcbBWbXCaafbURbWFbWFbWNbWPbWObWRbWEbOUbWSbNubWkbXLbPkbPkbPkbPkbPkaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKTbPMbPMbPMbPMbPMbPMbWTbMtbWUbPMbPMbLpbLpbLpbLpbKTaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabXObXPbXQbXRbSsbXSbXTbXUbXVbNVaaLaaaaaaaaabNWbNWbNWbNWbNWbNWbNWbOdbWWbWVbWXbOdbVibXZbYabYbbYbbYabYcbVibWZbWYbWYbXabWMbYgbDHbDHbXcbXbbXebXdbXgbWQbXhbXfbXjbXibXlbXkbXnbXmbXpbXobXtbXsbXvbXubXxbXwbXzbXybXBbXAbXEbXDbXGbXFbnFbYLbIPbXHbXJbXIbXMbXKbXWbXNbXYbXXbYebYdbALbYfbYhbALbYjbYibZbaafbURbYlbYnbYmbWebYobZgbYkbYpbYqbNubWkbYtbYsbYvbYubUQaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKTbLpbLpbLpbLpbLpbLpbSEbMtbRnbLpbLpbLpbLpbLpbKTbKTaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabYwbVwbVwbWvbZnbZobZpbNVbZqbNVbZrbZsbZtbZrbZrbYxbYzbYybYBbYAbZzbYCbYEbYDbYGbYFbZFbYabZGbZHbZIbZJbZKbYHbYJbYIbYMbYKbWMbZQbOqbZRbYObYNbYPbYPbYRbYrbYSbYQbUlbUlbZZbYTbUlbUlbYUcaccadcaebYWbYVbYXcaibYYcaicakcalbYZcalcakbZabnFbNmbIPbZcbZebZdbZhbZfbZjbZibNnbNnbwCbwCbwCbwCbwCbZkbZmbZlbwCbNubNubNubNubNubNubNubNubNubNubNubNucaybZwbZvbZybZxbUQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKTbKTbRnbLpbLpbLpbLpbLpbLpbLpbLpbLpbLpbLpbKTbKTaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaamcaBaamaamaamaamaamaaaaaaaaaaaaaaaaaaaafaafaaacaCcaDcaDcaDcaEcaDcaDbZBbZAbZrbZCbZDbZrbZLbZEbZNbZMbZPbZObZTbZSbZVbZUbZXbZWcaVbYabZGcaWcaXbZJcaYbVibWMbWMbWMbWMbWMcaZbOqbDHcaabZYcafcabcahbZucajcagbUlcamcancancaocbmcbncbocbpcaebYXbYVcapcaicarcaqcakcascaucatcakcawbnFbBjbIPcbxcbycbzcbxcbxbIPbIPbIPcFkcGucbCcbDcbEbwCbwCcavbwCbwCcKNcbHcazcbJcbKcbLcbMcbNcbOcbPcbQcbRcbScbTbUQbUQbUQbUQaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKSbKTbTzbTxbTxbLpbLpbLpbLpbLpbLpbLpbLpbKTbKTaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaamcaBaamaamaamaamaamaaaaaaaaaaaaaaaaaaaafaafaaacaCcaDcaDcaDcaEcaDcaDbZBbZAbZrbZCbZDbZrbZLbZEbZNbZMbZPbZObZTbZSbZVbZUbZXbZWcaVbYabZGcaWcaXbZJcaYbVibWMbWMbWMbWMbWMcaZbOqbDHcaabZYcafcabcahbZucajcagbUlcamaAJcancaocbmcbncbocbpcaebYXbYVcapcaicarcaqcakcascaucatcakcawbnFbBjbIPcbxcbycbzcbxcbxbIPbIPbIPcFkcGucbCcbDcbEbwCbwCcavbwCbwCcKNcbHcazcbJcbKcbLcbMcbNcbOcbPcbQcbRcbScbTbUQbUQbUQbUQaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKSbKTbTzbTxbTxbLpbLpbLpbLpbLpbLpbLpbLpbKTbKTaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafcaAcaGcaFcaIcaHcbZcaJcaLcaKbZrcaMcaNbZrbZrcaOcaQcaPcaScaRcckcaTbYEbYDbYGcaUcbabYabYaccoccpbYaccqbVicbccbbbWMcbdbWMbUhccuccuccuccuccuccuccubUlcbecaxbUlcbfcbhcbgcbicbmccBccCccDcaebYXbYVcbjcaicblcbkcakcbqcbscbrcakcbubnFccLccMccNccOccPccQccNctcccSccTccUccVccWccXccUccYcbtcbwcbvcbUcbIcdhcbVcdgcdhcdicdjcdhcdkcdlcdmcdncdocdpcdqcbWbUQbUQbUQbUQaaaaafaaaaaaaaaaahaahaahaafaaaaaaaafaaaaaaaafaaaaaabPlbKTbMDbKTbKTbLpbLpbLpbLpbLpbLpbLpbKTbKTaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafcbXcbXcaFccacbYcbZccbccccdxbZrccdccfccecchccgccjcciccmcclcdHccnccsccrccvcctccwcdOcdPcdQcdRcdScdTccxcczccyccEccAbWMbUhccuccFccHccGccJccIccZcbFcdaccKcdccdbcdecddcdfcbmcdtcdscducaebYXbYVcdrcaicdwcdvcakcdzcdBcdAcakcdDbnFbnFcexccNceycezceAccNceBceCceDceEceEceFceGceEceHcdCcdFcdEceHceLceMceNceOceLceLceLceLcePceNceOceLceLceQceRcdIceTcdKcdJceWcdLcdMcdMcdMcdMcdMcdMcdMcdMcdMcdMcdMcdMcdMcdMcdMcdMcdUcdNcdNcdVbKTbKTbLpbLpcdWbLpbLpbKTbKTaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacfdcfdcfdcfdcfdcfdcfdcfecffbZrbZrbZrbZrbZrcfgcfhcficficficfjcdXbYEbYDbYGcdYbZFcdZcebceacedcecceebVicegcefcehcefbWMbUhccuceicejcejcejcekcelbUlcemcdGbUlcbfcbgcenceocbmcerceqcescaebYXbYVbUscaicetcepcakcakcakcakcakcevcewbnFcexccNcfKcfLccNccNceBcfMceDceEceIceuceuceJceHcfQceKcfSceHceSceUceUceUceVceZceYcfaceXcfccfbcfkceLcfncfmcfobUQbUQbUQbUQaaaaafaaaaaaaaaaahaahaahaafaaaaaaaafaaaaaaaafaafaafcfqcfpcfrbMEbKSbKTbKTbLpbLqbLpbKTbKTaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa